3.1.0¶
Release Date: January 28, 2026
✨ New Features¶
Webhooks¶
Filevine Webhook Integration 🔗¶
Comprehensive webhook integration for the Forge platform, enabling secure receipt of webhook events from external systems like Filevine, with full local development support and production-ready APIM policies.
Key Features:
- ✅ Generic Webhook Receiver - Flexible webhook endpoints with customization support
- ✅ DevTunnel Integration - Exposes local endpoints for webhook testing during development
- ✅ Client Credentials Flow - Service-to-service authentication with app role assignments
- ✅ Filevine APIM Policies - JWT validation and header override for downstream API calls
- ✅ Error Handling - Structured Problem+JSON responses with proper TypeSpec error types
Benefits:
- 🚀 Enables real-time integrations with external systems
- 🔄 Simplifies webhook testing with DevTunnel support
- 🎯 Production-ready security with client credentials authentication
- 🔒 Secure service-to-service communication with app role assignments
Usage:
This adds webhook endpoints with DevTunnel support for local development. The tunnel URL appears in the Aspire Dashboard, enabling testing with external providers like Filevine without deploying to Azure.
Templates:
saif-api-exp- Updated with webhook supportsaif-feature-webhook- New feature template for adding webhooks to existing projects
Terraform Enhancements:
- Enhanced
application_permissionsmodule with app role assignments for pre-authorized applications - New
api_policies_filevinemodule for Filevine-specific APIM policies - Template updates across all API types (Experience, Process, System)
Documentation:
- Webhook Development Guide - Comprehensive guide for implementing webhooks
- Filevine Integration Guide - Filevine-specific implementation with troubleshooting
PR: #365
Templates¶
Standalone Frontend Service Template 🎨¶
Template: saif-feature-web-standalone
New feature template for adding standalone frontend applications with custom subdomain support, enabling frontend deployments independent of backend APIs.
Key Features:
- ✅ Custom Subdomain Support - Configure custom subdomains for frontend applications
- ✅ Independent Deployment - Deploy frontends separately from backend services
- ✅ Azure Static Web Apps - Leverages Azure Static Web Apps for hosting
- ✅ Terraform Integration - Infrastructure-as-code for custom subdomain configuration
Benefits:
- 🚀 Faster frontend deployments without backend dependencies
- 🔄 Better separation of concerns between frontend and backend
- 🎯 Simplified frontend-only updates
- 🌐 Custom domain support for branded user experiences
Usage:
Documentation:
- Custom Subdomains Guide - Complete guide for configuring custom subdomains
PR: #311
Security¶
Security Configuration Resources 🔒¶
Package: SAIF.Platform.Aspire.Hosting
Experimental Feature (SAIFENV001, SAIFSECURITY001)
These APIs are experimental and subject to change. Suppress the compiler warning with <NoWarn>$(NoWarn);SAIFENV001;SAIFSECURITY001</NoWarn> in your project file.
Added comprehensive security configuration resources and Aspire hosting extensions for declarative security setup, including business roles, API scopes, and authentication configuration.
Key Features:
- ✅ Business Role Configuration - Define business roles with app role assignments
- ✅ API Scope Configuration - Configure API scopes and permissions declaratively
- ✅ Aspire Annotations - Use Aspire resource annotations for security settings
- ✅ Automated Configuration - Generate security configuration from AppHost
Benefits:
- 🚀 Simplified security configuration with declarative syntax
- 🔄 Consistent security setup across environments
- 🎯 Reduced manual configuration errors
- 🔒 Enforced security best practices by default
Example:
// Define permissions
public static class Permissions
{
public static readonly AppRole ClaimsRead = new("Claims.Read", "Read claims data");
public static readonly AppRole ClaimsWrite = new("Claims.Write", "Write claims data");
}
// Configure security in AppHost
builder.AddSecurity()
.WithCorporateAssignment(new AppRoleAssignment(
new BusinessRole("Claims Adjuster"),
[Permissions.ClaimsRead, Permissions.ClaimsWrite]));
Documentation:
- Aspire Security Configuration - Using Aspire for security configuration
- Business Roles Guide - Configuring business roles and app roles
PR: #306
Observability¶
OpenTelemetry Diagnostics 📊¶
Packages: SAIF.Platform.Authentication.AspNetCore, SAIF.Platform.Azure, SAIF.Platform.EntityFramework
Added OpenTelemetry instrumentation for authentication, Azure services, and Entity Framework components with enhanced tracing and metrics.
Key Features:
- ✅ Authentication Tracing - Track authentication flows and token validation
- ✅ Azure Service Instrumentation - Monitor Azure service calls and latency
- ✅ EF Core Instrumentation - Database query tracing and performance metrics
Benefits:
- 🚀 Faster troubleshooting with distributed tracing
- 🔄 Better visibility into application health and performance
- 🎯 Proactive issue detection before production impact
- 📈 Improved observability for distributed applications
PR: #352
Terraform¶
Enhanced JWT Validation for Client Credentials Flow 🔑¶
Module: saif-api-service
Enhanced JWT validation in Terraform modules to properly support client credentials flow for service-to-service authentication, enabling secure webhook integrations and machine-to-machine API communication.
Key Features:
- ✅ Client Credentials Support - Full support for service-to-service authentication
- ✅ Enhanced JWT Validation - Improved token validation for client credentials
- ✅ APIM Policy Updates - Updated API Management policies for client credentials
Benefits:
- 🚀 Secure service-to-service authentication
- 🔄 Consistent authentication across all API types
- 🎯 Simplified configuration for machine-to-machine scenarios
PR: Related to Filevine webhook integration
🔧 Enhancements¶
Documentation¶
- ✅ Copilot Instructions - Updated GitHub Copilot usage guidelines and skill loading process
- ✅ Skill Descriptions - Updated skill descriptions to match Agent Skills specification
GitHub Workflows¶
- ✅ Dependabot Auto-Approval - Enabled auto-approval and auto-merge for Dependabot PRs
- ✅ Merge Gatekeeper - Updated ignored jobs list and improved check waiting logic
- ✅ Pull Request Target - Fixed Dependabot secret access using pull_request_target trigger
Dependencies¶
- ✅ Glob Package - Updated
globand related dependencies for improved file matching - ✅ Lerna - Updated to version
9.0.3with tar override for security - ✅ React Types - Bumped
@types/reactfrom19.2.9to19.2.10 - ✅ TypeScript Dependencies - Updated multiple TypeScript dependencies in the dependencies group
📚 Documentation¶
New Documentation¶
- 📖 Webhook Development Guide - Comprehensive webhook implementation guide
- 📖 Filevine Integration Guide - Filevine-specific webhook integration
- 📖 Custom Subdomains Guide - Custom subdomain configuration
- 📖 Aspire Security Configuration - Declarative security with Aspire
- 📖 Diagnostics Reference - Diagnostic code reference with troubleshooting
- 📖 Aspire Config Foundry - Foundry example for Aspire configuration generation
Updated Documentation¶
- 📝 Business Roles Guide - Updated with Aspire annotations
- 📝 Security Index - Updated with new security configuration features
🔄 Breaking Changes¶
None in this release ✅
📋 Additional Notes¶
- Total commits: 18
- Files changed: 530
- Contributors: 3 (Copilot, dependabot[bot], Emmitt Johnson)
Impact Summary¶
This release introduces major new capabilities for webhook integrations, standalone frontend deployments, and security configuration. The Filevine webhook integration provides a complete solution for receiving and processing webhook events from external systems, with full local development support using DevTunnel. The new standalone frontend template enables independent frontend deployments with custom subdomain support, improving separation of concerns and deployment flexibility.
Security configuration has been significantly enhanced with Aspire annotations, enabling declarative security setup directly in the AppHost. This reduces manual configuration and enforces security best practices by default. The new OpenTelemetry diagnostics provide structured diagnostic codes with troubleshooting guides, making it easier to identify and resolve issues in production.
For Developers
- Webhook Support - Use the new webhook templates and guides to integrate with external systems like Filevine
- Frontend Deployments - Create standalone frontends with custom subdomains using the new template
- Security Configuration - Leverage Aspire extensions for declarative security setup (experimental)
- DevTunnel - Test webhooks locally without deploying to Azure
Support¶
- 📧 Teams Support Channel: Support