Skip to content

[Safety] Preserve delegated context in a durable non-interrupting attention inbox #136

Description

@veil-chow-fyaic

Problem

The product wedge is not merely cross-session transport. A useful proactive
handoff must remain durable without silently steering a busy receiver, and the
new delegated objective must not lose to stale pre-delegation context after a
restart, compaction, or short follow-up.

The deterministic demo proves that a running receiver can retain a pending
checkpoint offer with zero steer, interrupt, or native-turn starts. A real
Codex active-target observation and durable context-epoch behavior are still
missing.

Outcome

A handoff becomes a durable attention item first. The receiving session admits
it at a safe checkpoint, preserves the admitted objective across lifecycle
changes, and never silently resumes a superseded objective.

Acceptance criteria

  • Use queue or checkpoint-offer as the default for a busy receiver; steer is an
    explicit, separately authorized mode only.
  • Cover real Codex targets that are running and temporarily unavailable. The
    current turn is neither interrupted nor overwritten.
  • Bind an admitted handoff to the exact task incarnation, objective epoch,
    checkpoint, adapter reference, and freshness snapshot.
  • Preserve that admitted objective through compaction, restart, and a short
    follow-up; stale prior context must reject or request clarification rather
    than silently becoming authoritative.
  • Reopen and explicitly re-inspect the pending active-receiver item after
    restart, then admit it exactly once when the receiver becomes eligible.
  • Preserve pending attention across app reload and expose it exactly once in
    the inspector.
  • Keep stale, irrelevant, muted, and unsubscribed events at zero native turns.
  • Fail closed with a typed result when a harness cannot provide the required
    checkpoint or freshness semantics; never degrade to an untracked raw message.
  • Retain exact restart, duplicate, native-turn, disposition, and cleanup
    evidence.

Order and non-goals

The native busy-target observation belongs in the #91 live validation. The
remaining product surface is P1 immediately afterward. This issue does not
implement Codex writer takeover, replace the harness queue, or add autonomous
interrupt behavior.

Community evidence

Related ThreadMesh gate: #91.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestimplementationReference runtime, SDK, CLI, inspector, or testssafetyPermissions, consent, privacy, provenance, or interference controls

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions