name: Unified Search Quality on: pull_request: paths: - 'src/AdvisoryAI/**' - 'docs/modules/advisory-ai/**' - 'docs/operations/unified-search-operations.md' - 'docs/07_HIGH_LEVEL_ARCHITECTURE.md' - '.gitea/workflows/unified-search-quality.yml' push: branches: - main paths: - 'src/AdvisoryAI/**' - 'docs/modules/advisory-ai/**' - 'docs/operations/unified-search-operations.md' - 'docs/07_HIGH_LEVEL_ARCHITECTURE.md' - '.gitea/workflows/unified-search-quality.yml' schedule: - cron: '30 2 * * *' workflow_dispatch: {} jobs: fast-subset: if: github.event_name != 'schedule' runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Setup .NET uses: actions/setup-dotnet@v4 with: dotnet-version: '10.0.x' - name: Run unified-search fast subset benchmark (PR gate) run: | dotnet test src/AdvisoryAI/__Tests/StellaOps.AdvisoryAI.Tests/StellaOps.AdvisoryAI.Tests.csproj \ --configuration Release --nologo \ -- --filter-class StellaOps.AdvisoryAI.Tests.UnifiedSearch.UnifiedSearchQualityBenchmarkFastSubsetTests - name: Run unified-search performance envelope (PR guardrail) run: | dotnet test src/AdvisoryAI/__Tests/StellaOps.AdvisoryAI.Tests/StellaOps.AdvisoryAI.Tests.csproj \ --configuration Release --nologo \ -- --filter-class StellaOps.AdvisoryAI.Tests.UnifiedSearch.UnifiedSearchPerformanceEnvelopeTests full-suite-nightly: if: github.event_name == 'schedule' || github.event_name == 'workflow_dispatch' runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Setup .NET uses: actions/setup-dotnet@v4 with: dotnet-version: '10.0.x' - name: Run full unified-search quality benchmark suite run: | dotnet test src/AdvisoryAI/__Tests/StellaOps.AdvisoryAI.Tests/StellaOps.AdvisoryAI.Tests.csproj \ --configuration Release --nologo \ -- --filter-class StellaOps.AdvisoryAI.Tests.UnifiedSearch.UnifiedSearchQualityBenchmarkTests - name: Run unified-search performance envelope suite run: | dotnet test src/AdvisoryAI/__Tests/StellaOps.AdvisoryAI.Tests/StellaOps.AdvisoryAI.Tests.csproj \ --configuration Release --nologo \ -- --filter-class StellaOps.AdvisoryAI.Tests.UnifiedSearch.UnifiedSearchPerformanceEnvelopeTests