- Implemented `MongoIndexModelTests` to verify index models for various stores. - Created `OpenApiMetadataFactory` with methods to generate OpenAPI metadata. - Added tests for `OpenApiMetadataFactory` to ensure expected defaults and URL overrides. - Introduced `ObserverSurfaceSecrets` and `WebhookSurfaceSecrets` for managing secrets. - Developed `RuntimeSurfaceFsClient` and `WebhookSurfaceFsClient` for manifest retrieval. - Added dependency injection tests for `SurfaceEnvironmentRegistration` in both Observer and Webhook contexts. - Implemented tests for secret resolution in `ObserverSurfaceSecretsTests` and `WebhookSurfaceSecretsTests`. - Created `EnsureLinkNotMergeCollectionsMigrationTests` to validate MongoDB migration logic. - Added project files for MongoDB tests and NuGet package mirroring.
2.6 KiB
2.6 KiB
EntryTrace Heuristic Review Cadence
EntryTrace heuristics must stay aligned with competitor techniques and new runtime behaviours. This cadence makes updates predictable and deterministic.
Objectives
- Refresh shell/launcher heuristics quarterly using the latest gap analysis in
docs/benchmarks/scanner/scanning-gaps-stella-misses-from-competitors.md. - Re-run explain-trace fixtures to confirm deterministic outputs and document any newly unsupported constructs.
- Ensure operator-facing explainability stays in sync with emitted diagnostics and metrics.
Cadence
- Frequency: Quarterly (Jan, Apr, Jul, Oct) or sooner when critical regressions are discovered.
- Owners: EntryTrace Guild with QA Guild pairing.
- Inputs: Gap benchmark doc, new runtime samples from support channels, and anonymised customer repros (when permitted).
- Outputs:
- Updated heuristics/diagnostics in
StellaOps.Scanner.EntryTracewith deterministic fixtures. - Changelog entry in
src/Scanner/__Libraries/StellaOps.Scanner.EntryTrace/TASKS.md. - Sprint log updates under the active
SPRINT_0138_0000_0001_scanner_ruby_parity.mdwhen cadence items land.
- Updated heuristics/diagnostics in
Workflow
- Collect & triage signals
- Parse new gaps from the benchmark doc; map each to an EntryTrace detector area (shell parser, interpreter tracer, PATH resolver).
- Classify as coverage gap, precision issue, or observability gap.
- Fixture-first update
- Add/extend fixtures in
StellaOps.Scanner.EntryTrace.Tests/Fixturesbefore modifying code. - Use deterministic serializers to keep fixture outputs byte-stable.
- Add/extend fixtures in
- Implement & validate
- Update analyzers/diagnostics; run
dotnet test src/Scanner/__Tests/StellaOps.Scanner.EntryTrace.Tests/StellaOps.Scanner.EntryTrace.Tests.csproj --nologo --verbosity minimal. - Confirm metrics counters (
entrytrace_*) and explain-trace text stay consistent.
- Update analyzers/diagnostics; run
- Record explainability
- Update explain-trace catalog (diagnostic enum descriptions) when new reasons are introduced.
- Add operator notes to sprint log if remediation guidance changes.
- Publish
- Attach a brief summary to the sprint Execution Log and to
TASKS.mdwith date + scope.
- Attach a brief summary to the sprint Execution Log and to
Fail-safe & rollback
- Keep previous fixture baselines; if a heuristic widens too far, revert to prior fixture sets to restore determinism.
- Prefer additive diagnostics over behavioural regressions; when behaviour must change, document it in the sprint log and
TASKS.md.
Ownership transitions
- If the cadence cannot run on schedule, mark the relevant sprint task
BLOCKEDwith the reason and hand off to the Project Manager to re-staff before the next window.