You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Child implementation slice of #51. This issue owns #51-A deterministic worker continuation/rebind semantics only. It is intentionally transport-neutral and may proceed in parallel with #117.
Current source fence at creation:
repository: James3014/devspace
main: ab22dc9d0360bd02d00892734a5c51cdd0873f39
existing Swarm truth already includes workerId, carrierConversationFingerprint, checkpoint, continuationEpoch, task/attempt identity and fail-closed reconciliation.
Authority boundary
Preserve:
logical worker / task / attempt / continuation truth = Chat Swarm durable state
carrier creation/navigation/wake = #117/#105
Do not add browser/session-launch logic here. Do not create a second queue, worker registry, task authority or retry authority.
Required deterministic contract
At a safe continuation boundary:
worker W / epoch N / current carrier A
-> authenticated target carrier B requests continuation
-> request binds exact swarm + worker + sourceEpoch + targetEpoch
+ source carrier + target carrier + checkpoint hash + expiry/version
-> exact Owner approval / CAS
-> one atomic binding transfer
-> worker W becomes epoch N+1 on B
-> A is fenced from `next` / `submit`
-> durable readback recovers committed result after lost acknowledgement
Minimum V1 may allow transfer only when the worker is AVAILABLE, has no current task, and has a bounded checkpoint. Active/unknown effects must fail closed; they must not be cleared, requeued or duplicated by rollover.
Required invariants / hostile controls
target identity comes only from authenticated request metadata, never caller-supplied fingerprint;
source carrier must still equal the worker's current bound carrier at commit;
targetEpoch == sourceEpoch + 1;
exact replay is idempotent; changed material under the same attempt key is REPLAY_CONFLICT;
focused continuation tests covering all positive/negative/replay/restart cases;
existing peer admission, task ledger, lifecycle, store and coordinator regressions;
database upgrade/reopen witness;
typecheck;
build;
npm test on macOS policy where practical;
git diff --check;
independent exact-head review before merge.
Claim ceiling
Source/CI completion of this issue may establish:
DETERMINISTIC_WORKER_CONTINUATION_SOURCE_ACCEPTED
It does not establish real ChatGPT conversation rollover, Auto Compact, zero-touch carrier creation, #117 completion, #51 overall completion or #104 Ultra parity.
Live #51 acceptance must later use #117/#105 to create the replacement carrier automatically with manual replacement-worker creation = 0 and manual continuation-ticket transfer = 0.
Parent / purpose
Child implementation slice of #51. This issue owns #51-A deterministic worker continuation/rebind semantics only. It is intentionally transport-neutral and may proceed in parallel with #117.
Current source fence at creation:
James3014/devspacemain:ab22dc9d0360bd02d00892734a5c51cdd0873f39workerId,carrierConversationFingerprint,checkpoint,continuationEpoch, task/attempt identity and fail-closed reconciliation.Authority boundary
Preserve:
Do not add browser/session-launch logic here. Do not create a second queue, worker registry, task authority or retry authority.
Required deterministic contract
At a safe continuation boundary:
Minimum V1 may allow transfer only when the worker is
AVAILABLE, has no current task, and has a bounded checkpoint. Active/unknown effects must fail closed; they must not be cleared, requeued or duplicated by rollover.Required invariants / hostile controls
targetEpoch == sourceEpoch + 1;REPLAY_CONFLICT;next/submitafter commit is rejected by existing worker identity checks;Source shape
Prefer the smallest additive slice over current Swarm SQLite:
chat-swarm-continuationtests;Verification
Required source acceptance:
npm teston macOS policy where practical;git diff --check;Claim ceiling
Source/CI completion of this issue may establish:
DETERMINISTIC_WORKER_CONTINUATION_SOURCE_ACCEPTEDIt does not establish real ChatGPT conversation rollover, Auto Compact, zero-touch carrier creation, #117 completion, #51 overall completion or #104 Ultra parity.
Live #51 acceptance must later use #117/#105 to create the replacement carrier automatically with
manual replacement-worker creation = 0andmanual continuation-ticket transfer = 0.