Orchestrata Ultimate › Sessions › Session 244
Session 244
| Field | Value |
|---|---|
| Session | 244 |
| Date | 2026-07-21 07:09 |
| Model | Claude Opus 4.6 |
| Length | 0h 10m |
| Tag | — |
| Source | archive (context.history.md) |
‹ previous · next › · timeline
Prose pending.
Purpose
Research: BDD runtime tracing to fix RTM (55% frozen state) — reports/research-bdd-runtime-tracing-rtm.md
Work log
- Pilot: per-test coverage attribution verified on 3.14t
- coverage 7.13.5 dynamic contexts on 3.14.6t: default core=sysmon DROPS repeat-line contexts; ctrace records all contexts AND keeps GIL off; pytrace correct but slow. Pilot join on context_pack: 23/24 tests cite REQs, 9 reqs attributed to defs, genuine missing-id finding (rescore_by_tier REQ-106-063).
- Fixed live governance bug from DSL audit: prolog_client.may_execute queried nonexistent may_execute/3 (action-first); aligned to governance:may_execute/2 (agent-first) per SPEC-007 FR-GOV-SPIKE-1/REQ-007-US-001-001; module-qualified for order-independent resolution
- Every production PolicyEngine may_execute check denied regardless of rules (strict default). Fixed masking tests; new test_may_execute_real_rules.py proves /2 contract incl argument order vs consulted governance.pl. Deny gate test now uses agent_action_blocked (shipped rules PERMISSIVE for unknown agents - interim default-allow posture, user ruling pending)
- Reviewed trace-writer builder; fixed label-less MATCH perf defect with per-label CALL subqueries; deployed qualified_name RANGE indexes (Class/Function/Method) to all 4 Neo4j DBs + schema.py DDL
- DEPLOYED trace pipeline: sync_specs live (87 Specs/559 Requirements/5388 RequirementItems, canonical project-qualified ids) then sync_traces_to_neo4j merged 6298 TRACES_TO edges onto 3417 symbols; SearchEngine build pack 148->1282 tokens, 4->25 sections incl. traced RequirementItems, p50 206ms
Artifacts
- reports/research-bdd-runtime-tracing-rtm.md (260 lines)
- scripts/sync_traces_to_neo4j.py (350 lines)
Decisions
- Runtime attribution instrument = pytest-cov contexts + COVERAGE_CORE=ctrace (NOT sysmon/raw sys.monitoring): Measured: sysmon (the 3.14t default core) drops repeat-line contexts (PEP 669 event disabling) — silent attribution loss, 2/11 selector tests attributed; ctrace records all contexts AND keeps the GIL off; raw sys.monitoring would rebuild ctrace's cost to fix the same problem
Achievements
- Verdict delivered: runtime attribution PASSES the free-threading hard gate and is the right instrument for trace PRECISION (pilot: 25/33 ids confirmed + 1 missing id found, deterministic, 0 tokens); recall bounded at 6.6% of decorator occurrences by today's test citations
Upcoming
- User rules on report §9 decisions; if approved, brief a builder for Phases 0-3 (attribute_traces_runtime.py + harvester extension + provenance on sync_traces_to_neo4j TRACES_TO edges)
Handoff
- Key decisions: Report §9 lists 5 genuine user decisions: RTM semantics change, Phase-4 citation-expansion funding (freeze-ruling adjacent), CONTRADICTED handling, cadence/ratchet, bless @traces-on-tests
- Blockers: None
- In-progress: None
- Important files: reports/research-bdd-runtime-tracing-rtm.md
- Commands: None
- Warnings: Attribution runs MUST pin COVERAGE_CORE=ctrace: the 3.14t default sysmon core silently drops repeat-line dynamic contexts (measured 2/11 tests attributed)