Skip to content

feat: add optional ACP semantic edges - #2449

Merged
hallerite merged 22 commits into
mainfrom
codex/rlm-lineage
Aug 31, 2026
Merged

feat: add optional ACP semantic edges#2449
hallerite merged 22 commits into
mainfrom
codex/rlm-lineage

fix(v1): keep local idempotency keys from providers

a0dc9c8
Select commit
Loading
Failed to load commit list.
MacroscopeApp / Macroscope - Correctness Check succeeded Aug 31, 2026 in 1m 41s

No issues identified (37 code objects reviewed).

• Merge Base: e2103d6
• Head: a0dc9c8
• Detection Mode: Balanced (Learn more)

Details

File Path U3 Bytes Comments Posted Reason
verifiers/v1/semantic.py 4812 0
pyproject.toml 302 0
tests/v1/test_e2e.py 534 Excluded by default ignore patterns
verifiers/v1/__init__.py 615 0
tests/v1/test_trace.py 11570 Excluded by default ignore patterns
verifiers/v1/graph.py 2352 0
verifiers/v1/clients/eval.py 2946 0
verifiers/v1/trace.py 4914 0
verifiers/v1/acp/runner.py 1591 0
verifiers/v1/acp/__init__.py 3752 0
verifiers/v1/interception/server.py 3765 0
verifiers/v1/harnesses/rlm/harness.py 4593 0

Billed Total: 23.68KB of diff | $1.18
Saved $0.30 vs. the upper-bound estimate of $1.48 — cached code objects from prior reviews on this PR were not re-billed.

Filtered Issues Details

verifiers/v1/trace.py
  • line 567: add_semantic_edges only appends the newly resolved ParentLink and never replaces a prior link for the same logical request edge. If a cumulative payload is applied after one committed attempt and a later committed SDK retry reuses the request ID, node_by_request correctly resolves to the newer node, but the old link remains and the target is linked to both attempts. This contradicts the method's own last-committed-retry semantics and leaves stale semantic lineage in the persisted trace. [ Already posted ]