Keep original case provenance while revalidating a fresh caller session
Assistant: codex Assistant-Model: gpt-6.1-sol Assistant-Session: 01a14bfc-9643-7872-aa12-98326dcf25e7
This commit is contained in:
parent
b593c87983
commit
08c098e64a
4 changed files with 180 additions and 1 deletions
|
|
@ -152,3 +152,41 @@ recovery can count. No actual original holder/verifier or native adapter is adde
|
|||
NetKingdom's current registration adapter still has no reconciliation callback;
|
||||
source tests do not authorize its post-restart undo, replay or a changed caller/
|
||||
session/run-sheet migration. WARDEN-WP-0044-T03 remains a native acceptance gate.
|
||||
|
||||
## Current caller versus original session reference — 2026-10-18 source
|
||||
|
||||
`Executor.admit` now accepts the optional `original_session_reference` for an
|
||||
exact existing original-run continuation. It is metadata, never current
|
||||
authentication. The normal `session_evidence` is independently verified as the
|
||||
current caller's principal/actor/lane proof, including after restart, and remains
|
||||
the evidence rechecked immediately before every journal write/owner callback.
|
||||
|
||||
The optional reference preserves the original run-sheet digest rather than
|
||||
replacing immutable provenance with the new login. Before admitting it, under
|
||||
the existing journal lock, the kernel requires an existing matching step journal
|
||||
and `Journal.original_intent` correspondence: the original running receipt,
|
||||
attempt, owner/target/principal/actor/lane, all six pins and exact adapter source.
|
||||
Missing/orphan/legacy context, a changed reference or caller and a stale current
|
||||
session refuse. The reference must differ from the current evidence identifier;
|
||||
the actual session owner must additionally establish distinct authenticated
|
||||
token/session identity, not just two labels. No new original context is created,
|
||||
no completed operation can replay, and uncertainty is not cleared by readmission.
|
||||
|
||||
Omitting this option retains the old admission/pin semantics. Supplying a fresh
|
||||
session alone still creates a different run sheet and cannot reuse a previous
|
||||
journal. No existing descriptor, Invocation, Pins or receipt schema changes.
|
||||
The new source seam does not implement changed-source/catalog/caller migration
|
||||
or loss of rollback result; those still require the existing owner reconciliation
|
||||
and recovery evidence. It is not general session management or another issuer.
|
||||
|
||||
A source integration fixture runs the actual producer-owned KeyCape status CLI
|
||||
over HTTPS, the actual Warden kernel and a separately compiled generated Go
|
||||
consumer. It verifies revoked-parent refusal before writes, distinct inverse
|
||||
authentication in another Python process, original journal pin retention,
|
||||
no business replay, exact synthetic target restore and independent read-only
|
||||
negative cleanup observation. Case/type/catalog/owner attestations and the
|
||||
target are synthetic; this is not Forgejo/browser/native acceptance or a real
|
||||
approval. KeyCape's proposed online profile remains unadmitted. The private
|
||||
unsigned CLI observation is not portable execution authority; actual owner
|
||||
custody and original grant ownership are still mandatory before an inactive
|
||||
response can establish revocation. No native verifier or adapter is installed.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue