Skip to content

id: implement signed async turns and deterministic replay for board game posts (#5525) #6160

Open

Description

@dezren39

Parent implementation issue: #5525. Governing design: #2054, especially §4 and acceptance criteria.

Starting point: PR #6158 adds the signed, package-pinned GamePost metadata and same-board Post.embed_ref integration. The merged #2266/#2755 artifact is a test-only PoC, not production implementation.

Scope

  • Add signed challenge acceptance and async GameTurn objects using the existing board-object signing envelope.
  • Bind each turn to its GamePost/package version, assigned author/role, turn index and prior game frontier; reject wrong signers and stale/wrong frontiers without erasing competing valid branches.
  • Replay the exact package bytes named by the GamePost under the existing sandbox/resource limits. Do not infer player evidence from host-authored world journal events.
  • Prove the flow with the checked-in tic-tac-toe package and deterministic replay tests.

Acceptance

  • A package-pinned async game can be opened and advanced through signed objects.
  • A valid signed lineage replays to the same state from the same inputs; wrong signer/frontier is rejected, and competing turns remain visible as forks.
  • Signature/tamper and graph scope checks are tested. No live-session hosting or UI is claimed.

Follow-up slice to #5525; this issue does not close the parent.

Activity

  1. added
    app/idPackage/app: id (pkgs/ or apps/ in this repo)
    on Nov 5, 2026
  2. developing-today commented on Nov 5, 2026

    @developing-today
    Contributor
  3. added
    source/humanFiled directly by a human
    priority/normalOrdinary priority (the default)
    effort/lLarge: multi-day or open-ended; expect staged check-ins
    meta/enrichedIntake review done: acceptance criteria, links, and normalized labels added
    on Nov 5, 2026
  4. dezren39 commented on Nov 5, 2026

    @dezren39
    MemberAuthor

    Intake review

  5. added
    queue/queuedHas a queued task in the Supabase agent queue
    task/triageQueue packet kind: verify, reproduce, and route this item
    on Nov 5, 2026
  6. added
    work/assignedQueue worker lifecycle state
    queue/claimedQueue worker lifecycle state
    and removed
    queue/queuedHas a queued task in the Supabase agent queue
    on Nov 5, 2026
  7. developing-today commented on Nov 5, 2026

    @developing-today
    Contributor

    🤖 Agent note · picked up

  8. developing-today commented on Nov 5, 2026

    @developing-today
    Contributor

    🤖 Agent note · triaged (task 10457, lane code-z)

    Verdict: VALID, well-scoped follow-up slice of parent issue #5525 — but ORDERED BEHIND PR #6158, which is still OPEN. Do not start implementation yet.

    Evidence (fresh this shift, GitHub main 04f78696ab):

    Ordering / resume condition: when PR #6158 merges, issue #6160 becomes immediately workable — enqueue its implementation task then (effort/l; it is not a small_fix quick win). Implementation timing behind a Drew-authored PR is a separate decision, so no follow-up task is enqueued by this triage. PR #6158 is Drew-authored and was left untouched; no competing branch or PR was created.

    Labels: set to status/blocked naming this gate (PR #6158 merge), per the triage.

  9. added
    status/blockedQueue or user escalation state
    and removed
    queue/claimedQueue worker lifecycle state
    work/assignedQueue worker lifecycle state
    on Nov 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

app/idPackage/app: id (pkgs/ or apps/ in this repo)effort/lLarge: multi-day or open-ended; expect staged check-inskind/enhancementmeta/enrichedIntake review done: acceptance criteria, links, and normalized labels addedpriority/normalOrdinary priority (the default)source/humanFiled directly by a humanstatus/blockedQueue or user escalation statetask/triageQueue packet kind: verify, reproduce, and route this item

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions