Skip to content

🤖 fix(tasks): define in-process settlement authority across concurrent backends #4311

Description

@ThomasK33

Problem

With two backends sharing a root, process A can retain its owned/settled attempt A while the persisted row names attempt B. The existing in-process classifier accepts its owned-pointer settlement as terminal-no-report; the new admission fence follows B. A native probe on PR #4308's candidate observed this divergence.

Evidence and scope

See #4308 (comment). Baseline 32834cca6 has the same owned-pointer classifier authority. The accepted recovery plan explicitly leaves concurrent backends outside the in-process-authority guarantee. This is a tracked limitation, not an implemented fix.

Acceptance

  1. Define and test how in-process classification binds to the current persisted attempt under two concurrent backends, including refresh after awaited report reads and missing/unreadable rows.
  2. Preserve the supported same-process recovery behavior or explicitly narrow it with tests and documentation.
  3. Independently, G2's cross-process receipt/claim path MUST require evidence for the exact current attempt: settlement A must never authorize a receipt or claim for B. This follow-up does not waive that G2 gate.

Follow-up trigger: before claiming support for concurrent-backend in-process recovery; implement as a dedicated authority change, not additional mechanism in G1. This issue remains open independently of PR #4308.


Generated with xum • Model: coder:bedrock-mantle-us-west-2/openai.gpt-6-astra • Thinking: xhigh • Cost: $726.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

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions