core/core/epistemic_disclosure
Shay c0d6493219 fix(ask): canonicalize question/proposal path collision check
Compare resolved canonical Path values, not raw string spellings, when
detecting a question_path / proposal_path collision. A relative
proposal_path and an absolute question_path that name the same file now
fail closed with reason "path_collision" instead of resolving.

Adds a regression test for the absolute-vs-relative same-file collision
and keeps the existing exact-string collision test. The new test is
non-vacuous: it fails under the prior raw-string comparison.

Scope: ask_handle.py seam + its test only. No runtime.py, CLAIMS,
metrics, telemetry, schema, or lane-pin changes.
2026-06-10 12:44:46 -07:00
..
__init__.py feat(ask): add carried-handle acquisition seam for served ASK 2026-06-10 10:53:54 -07:00
ask_acquisition.py feat(ask): add served ASK acquisition seam 2026-06-09 12:58:31 -07:00
ask_handle.py fix(ask): canonicalize question/proposal path collision check 2026-06-10 12:44:46 -07:00
ask_serving.py feat(ask): add served ASK artifact adapter 2026-06-09 12:49:52 -07:00
disclosure_claim.py feat(epistemic-disclosure): P0-2 — the DisclosureClaim axis 2026-06-08 15:48:20 -07:00
disposition.py feat(epistemic-disclosure): P0-3 — ServedDisposition mapping scaffold 2026-06-08 16:00:15 -07:00
limitation.py feat(epistemic): Q1-D — off-serving ASK delivery (QUESTION_NEEDED tenant) 2026-06-08 19:10:54 -07:00
serving_gate.py feat(verified): add default-dark VERIFIED serving gate helper 2026-06-09 10:06:36 -07:00
verified_contract.py feat(verified): P1-C — split bound_slots_digest into separate obligation 2026-06-08 17:17:31 -07:00