mirror of
https://github.com/norandom/OpenUltraSAST.git
synced 2026-11-13 17:58:18 +00:00
docs(detection-core): bind integration phase into roadmap and task plan
This commit is contained in:
@@ -133,3 +133,29 @@ _Requirement IDs use N.M where N is the requirement number in requirements.md an
|
|||||||
- _Requirements: 5.1, 5.2, 7.3, 11.1_
|
- _Requirements: 5.1, 5.2, 7.3, 11.1_
|
||||||
- _Boundary: end-to-end integration_
|
- _Boundary: end-to-end integration_
|
||||||
- _Depends: 6.3, 7.1_
|
- _Depends: 6.3, 7.1_
|
||||||
|
|
||||||
|
- [ ] 8. Integration with existing specs (binding phase, roadmap 2026-10-30)
|
||||||
|
- [ ] 8.1 Prover native conformance to the core trace contract
|
||||||
|
- access-control-prover's Trace implements core TraceRecord natively; hunt/core_adapter.py is removed once conformance tests pass; behavior byte-identical (admission suite regression gate).
|
||||||
|
- Done when test_core_adapter.py equivalents pass against native types and the adapter module is deleted.
|
||||||
|
- _Requirements: 1.1, 1.2, 11.3_
|
||||||
|
- _Boundary: prover arm_
|
||||||
|
- _Depends: 3.1_
|
||||||
|
- [ ] 8.2 Fact-pack workstream from the recognition-coverage table
|
||||||
|
- valid-detection-benchmark task 7.1's manifest-derived table becomes reviewed fact packs admitted via core/factpack.py, family-tagged and digest-stamped; measured on pool-train, admission-gated on the untouched pilot.
|
||||||
|
- Done when one new ecosystem pack passes admission gates and appears with its family in the report.
|
||||||
|
- _Requirements: 10.1, 10.2, 7.3_
|
||||||
|
- _Boundary: fact-pack contract + benchmark_
|
||||||
|
- _Depends: 6.1, 4.2_
|
||||||
|
- [ ] 8.3 Pre-push hook consumes the core consumer contract
|
||||||
|
- pre-push-safety-net builds PushRequest and consumes PushVerdict via core/consumer.py; budget from the measured per-class derivation; one real dev-pool push E2E.
|
||||||
|
- Done when an E2E hook run on a dev-pool repo emits a PushVerdict with witnesses/reasons and a measured-class budget.
|
||||||
|
- _Requirements: 4.2, 11.1, 11.3_
|
||||||
|
- _Boundary: pre-push transaction_
|
||||||
|
- _Depends: 6.2, 2.2_
|
||||||
|
- [ ] 8.4 Proof layer attaches demonstrated evidence to verdicts
|
||||||
|
- search-with-proof attaches proof artifacts to PushVerdict claims; BLOCK only on proven claims; bounded-silence entries stay advisory.
|
||||||
|
- Done when a demonstrated-finding fixture blocks and an unproven claim stays advisory in a test.
|
||||||
|
- _Requirements: 9.2, 11.2_
|
||||||
|
- _Boundary: proof layer_
|
||||||
|
- _Depends: 6.2_
|
||||||
|
|||||||
@@ -1,5 +1,40 @@
|
|||||||
# Roadmap
|
# Roadmap
|
||||||
|
|
||||||
|
## Binding phase -- detection-core as the shared contract (2026-10-30)
|
||||||
|
|
||||||
|
This section supersedes ordering questions below it for detection work. `detection-core`
|
||||||
|
(spec complete, validated GO at 1cd6a39) is now the binding element: its contract package
|
||||||
|
(`src/openultrasast/core/`) owns the canonical trace, verdict, coverage, measured budget,
|
||||||
|
provenance, admission, probes, fact-pack and consumer contracts. Existing specs adopt it;
|
||||||
|
they do not grow parallel runner contracts.
|
||||||
|
|
||||||
|
### Integration sequence (each step admission-gated on the untouched pilot)
|
||||||
|
|
||||||
|
1. **Prover native conformance** -- `access-control-prover`'s `Trace` implements
|
||||||
|
`core.TraceRecord` directly; `hunt/core_adapter.py` is deleted once conformance tests
|
||||||
|
pass. Touchpoint: access-control-prover.
|
||||||
|
2. **Fact-pack workstream (recognition breadth)** -- `valid-detection-benchmark` task 7.1's
|
||||||
|
manifest-derived recognition table becomes reviewed fact packs admitted via
|
||||||
|
`core/factpack.py` (families tagged, digest-stamped). Target ecosystems: the valid
|
||||||
|
pool's Express/FastAPI/NestJS/Koa/MCP-style servers. Touchpoints: valid-detection-benchmark,
|
||||||
|
ruleset loader.
|
||||||
|
3. **Resolution depth** -- interprocedural call resolution (today 11.9% complete) in the
|
||||||
|
engine/frontends; measured via `core/coverage.py` buckets. Touchpoint: contributor-scan
|
||||||
|
(engine internals stay out of detection-core).
|
||||||
|
4. **Hook consumes the core** -- `pre-push-safety-net` builds `PushRequest` and consumes
|
||||||
|
`PushVerdict` via `core/consumer.py`, budget from the measured per-class derivation
|
||||||
|
(`benchmarks/measurements/2026-10-30-detection-core-budget/`), one real push E2E on a
|
||||||
|
dev-pool repo. Touchpoints: pre-push-safety-net.
|
||||||
|
5. **Proof layer attaches** -- `search-with-proof` attaches demonstrated evidence to
|
||||||
|
`PushVerdict` claims; BLOCK only on proven claims. Touchpoint: search-with-proof.
|
||||||
|
6. **Model lane bounded** -- `hunter-learning-loop` proposes only; every fitted component
|
||||||
|
passes `core/probes.py` (reversed-pair + holdout + admission GO). Touchpoint:
|
||||||
|
hunter-learning-loop.
|
||||||
|
|
||||||
|
Stop conditions from `detection-quality.md` apply unchanged: two consecutive admission
|
||||||
|
NO-GOs on the same arm park it for a strategy review; the fallback is the narrowed
|
||||||
|
one-ecosystem advisory product plus proof-based BLOCK.
|
||||||
|
|
||||||
## Roadmap -- admission read, stop conditions (2026-10-30)
|
## Roadmap -- admission read, stop conditions (2026-10-30)
|
||||||
|
|
||||||
This section supersedes the ordering below it for detection claims. The 2026-10-30 admission
|
This section supersedes the ordering below it for detection claims. The 2026-10-30 admission
|
||||||
|
|||||||
Reference in New Issue
Block a user