@shivaedev/work-fleet 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +23 -0
- package/README.md +2 -2
- package/dist/admit.d.ts +54 -0
- package/dist/admit.d.ts.map +1 -1
- package/dist/engine/abandonStalled.d.ts +9807 -0
- package/dist/engine/abandonStalled.d.ts.map +1 -0
- package/dist/engine/abandonStalled.js +55 -0
- package/dist/engine/abandonStalled.js.map +1 -0
- package/dist/engine/applyResolution.d.ts +108 -0
- package/dist/engine/applyResolution.d.ts.map +1 -1
- package/dist/engine/applyResolution.js +3 -0
- package/dist/engine/applyResolution.js.map +1 -1
- package/dist/engine/approveBrief.d.ts +164 -2
- package/dist/engine/approveBrief.d.ts.map +1 -1
- package/dist/engine/approveBrief.js +7 -5
- package/dist/engine/approveBrief.js.map +1 -1
- package/dist/engine/authorizeResolution.d.ts +942 -24
- package/dist/engine/authorizeResolution.d.ts.map +1 -1
- package/dist/engine/boardBrief.d.ts +162 -0
- package/dist/engine/boardBrief.d.ts.map +1 -1
- package/dist/engine/capacityRetry.d.ts +2883 -75
- package/dist/engine/capacityRetry.d.ts.map +1 -1
- package/dist/engine/closeDecisions.d.ts +108 -0
- package/dist/engine/closeDecisions.d.ts.map +1 -1
- package/dist/engine/completeBoardWork.d.ts +108 -0
- package/dist/engine/completeBoardWork.d.ts.map +1 -1
- package/dist/engine/completeReport.d.ts +108 -0
- package/dist/engine/completeReport.d.ts.map +1 -1
- package/dist/engine/continueCommand.d.ts +54 -0
- package/dist/engine/continueCommand.d.ts.map +1 -1
- package/dist/engine/continueWorker.d.ts +108 -0
- package/dist/engine/continueWorker.d.ts.map +1 -1
- package/dist/engine/deliverPendingAnswers.d.ts +1104 -24
- package/dist/engine/deliverPendingAnswers.d.ts.map +1 -1
- package/dist/engine/dispatchCommand.d.ts +54 -0
- package/dist/engine/dispatchCommand.d.ts.map +1 -1
- package/dist/engine/ensureDecisionOwner.d.ts +108 -0
- package/dist/engine/ensureDecisionOwner.d.ts.map +1 -1
- package/dist/engine/ensurePublication.d.ts +108 -0
- package/dist/engine/ensurePublication.d.ts.map +1 -1
- package/dist/engine/exhaustedCheckRepairs.d.ts.map +1 -1
- package/dist/engine/exhaustedCheckRepairs.js +3 -1
- package/dist/engine/exhaustedCheckRepairs.js.map +1 -1
- package/dist/engine/inspectRenewal.d.ts +108 -0
- package/dist/engine/inspectRenewal.d.ts.map +1 -1
- package/dist/engine/launchInput.d.ts +54 -0
- package/dist/engine/launchInput.d.ts.map +1 -1
- package/dist/engine/launchReceipt.d.ts +54 -0
- package/dist/engine/launchReceipt.d.ts.map +1 -1
- package/dist/engine/makeAdopt.d.ts +108 -0
- package/dist/engine/makeAdopt.d.ts.map +1 -1
- package/dist/engine/makeAdopt.js +10 -0
- package/dist/engine/makeAdopt.js.map +1 -1
- package/dist/engine/makeAdvance.d.ts +54 -0
- package/dist/engine/makeAdvance.d.ts.map +1 -1
- package/dist/engine/makeDeliver.d.ts +108 -0
- package/dist/engine/makeDeliver.d.ts.map +1 -1
- package/dist/engine/makeHuman.d.ts +108 -0
- package/dist/engine/makeHuman.d.ts.map +1 -1
- package/dist/engine/makeLaunch.d.ts +108 -0
- package/dist/engine/makeLaunch.d.ts.map +1 -1
- package/dist/engine/makeObserve.d.ts +108 -0
- package/dist/engine/makeObserve.d.ts.map +1 -1
- package/dist/engine/makeReview.d.ts +108 -0
- package/dist/engine/makeReview.d.ts.map +1 -1
- package/dist/engine/makeState.d.ts +888 -24
- package/dist/engine/makeState.d.ts.map +1 -1
- package/dist/engine/makeValidate.d.ts +108 -0
- package/dist/engine/makeValidate.d.ts.map +1 -1
- package/dist/engine/mergeReadiness.d.ts +1212 -24
- package/dist/engine/mergeReadiness.d.ts.map +1 -1
- package/dist/engine/observeDeliveryFailure.d.ts +996 -24
- package/dist/engine/observeDeliveryFailure.d.ts.map +1 -1
- package/dist/engine/observeRenewal.d.ts +189 -0
- package/dist/engine/observeRenewal.d.ts.map +1 -1
- package/dist/engine/observedAttempt.d.ts.map +1 -1
- package/dist/engine/observedAttempt.js +3 -0
- package/dist/engine/observedAttempt.js.map +1 -1
- package/dist/engine/obtainReview.d.ts +54 -0
- package/dist/engine/obtainReview.d.ts.map +1 -1
- package/dist/engine/operationRecord.d.ts +726 -24
- package/dist/engine/operationRecord.d.ts.map +1 -1
- package/dist/engine/persistTerminalReceipts.d.ts +108 -0
- package/dist/engine/persistTerminalReceipts.d.ts.map +1 -1
- package/dist/engine/prepareCommand.d.ts +54 -0
- package/dist/engine/prepareCommand.d.ts.map +1 -1
- package/dist/engine/prepareCommand.js +19 -0
- package/dist/engine/prepareCommand.js.map +1 -1
- package/dist/engine/queueAnswerCommand.d.ts +54 -0
- package/dist/engine/queueAnswerCommand.d.ts.map +1 -1
- package/dist/engine/readOrContinueReview.d.ts +54 -0
- package/dist/engine/readOrContinueReview.d.ts.map +1 -1
- package/dist/engine/readRetry.d.ts +1995 -51
- package/dist/engine/readRetry.d.ts.map +1 -1
- package/dist/engine/reassignCommand.d.ts +54 -0
- package/dist/engine/reassignCommand.d.ts.map +1 -1
- package/dist/engine/reconcileAttempt.d.ts +81 -0
- package/dist/engine/reconcileAttempt.d.ts.map +1 -1
- package/dist/engine/reconcileCommand.d.ts +54 -0
- package/dist/engine/reconcileCommand.d.ts.map +1 -1
- package/dist/engine/recoverStall.d.ts +1023 -24
- package/dist/engine/recoverStall.d.ts.map +1 -1
- package/dist/engine/recoverStall.js +5 -1
- package/dist/engine/recoverStall.js.map +1 -1
- package/dist/engine/recoverUnobservable.d.ts +1023 -24
- package/dist/engine/recoverUnobservable.d.ts.map +1 -1
- package/dist/engine/refreshBrief.d.ts +1997 -53
- package/dist/engine/refreshBrief.d.ts.map +1 -1
- package/dist/engine/refreshReviewResult.d.ts +108 -0
- package/dist/engine/refreshReviewResult.d.ts.map +1 -1
- package/dist/engine/releaseClosedPreparation.d.ts +996 -24
- package/dist/engine/releaseClosedPreparation.d.ts.map +1 -1
- package/dist/engine/releaseExecution.d.ts +996 -24
- package/dist/engine/releaseExecution.d.ts.map +1 -1
- package/dist/engine/releaseFinishedWork.d.ts +54 -0
- package/dist/engine/releaseFinishedWork.d.ts.map +1 -1
- package/dist/engine/repository.d.ts +672 -24
- package/dist/engine/repository.d.ts.map +1 -1
- package/dist/engine/repository.js +1 -0
- package/dist/engine/repository.js.map +1 -1
- package/dist/engine/requestConflictRepair.d.ts +996 -24
- package/dist/engine/requestConflictRepair.d.ts.map +1 -1
- package/dist/engine/requestRework.d.ts +108 -0
- package/dist/engine/requestRework.d.ts.map +1 -1
- package/dist/engine/resolveCommand.d.ts +54 -0
- package/dist/engine/resolveCommand.d.ts.map +1 -1
- package/dist/engine/resolveExecution.d.ts +996 -24
- package/dist/engine/resolveExecution.d.ts.map +1 -1
- package/dist/engine/resolveExecution.js +3 -1
- package/dist/engine/resolveExecution.js.map +1 -1
- package/dist/engine/resumeAttempt.d.ts +1023 -24
- package/dist/engine/resumeAttempt.d.ts.map +1 -1
- package/dist/engine/retireUnacknowledged.d.ts +108 -0
- package/dist/engine/retireUnacknowledged.d.ts.map +1 -1
- package/dist/engine/retryTerminal.d.ts +942 -24
- package/dist/engine/retryTerminal.d.ts.map +1 -1
- package/dist/engine/scheduler.d.ts +108 -0
- package/dist/engine/scheduler.d.ts.map +1 -1
- package/dist/engine/sessionCleanup.d.ts +108 -0
- package/dist/engine/sessionCleanup.d.ts.map +1 -1
- package/dist/engine/sessionCleanup.js +3 -1
- package/dist/engine/sessionCleanup.js.map +1 -1
- package/dist/engine/sessionStatus.d.ts.map +1 -1
- package/dist/engine/sessionStatus.js +3 -0
- package/dist/engine/sessionStatus.js.map +1 -1
- package/dist/engine/settleMergedDelivery.d.ts +996 -24
- package/dist/engine/settleMergedDelivery.d.ts.map +1 -1
- package/dist/engine/steerBrief.d.ts +10340 -0
- package/dist/engine/steerBrief.d.ts.map +1 -0
- package/dist/engine/steerBrief.js +42 -0
- package/dist/engine/steerBrief.js.map +1 -0
- package/dist/engine/submissionFailure.d.ts +888 -24
- package/dist/engine/submissionFailure.d.ts.map +1 -1
- package/dist/engine/submitLaunch.d.ts +942 -24
- package/dist/engine/submitLaunch.d.ts.map +1 -1
- package/dist/engine/views.js +1 -0
- package/dist/engine/views.js.map +1 -1
- package/dist/engine/workerReport.d.ts +162 -0
- package/dist/engine/workerReport.d.ts.map +1 -1
- package/dist/fleet.d.ts +540 -0
- package/dist/fleet.d.ts.map +1 -1
- package/dist/host/admission.d.ts +108 -0
- package/dist/host/admission.d.ts.map +1 -1
- package/dist/host/admission.js +2 -1
- package/dist/host/admission.js.map +1 -1
- package/dist/host/answerWork.d.ts +54 -0
- package/dist/host/answerWork.d.ts.map +1 -1
- package/dist/host/commands.d.ts +108 -0
- package/dist/host/commands.d.ts.map +1 -1
- package/dist/host/daemon.d.ts +600 -0
- package/dist/host/daemon.d.ts.map +1 -1
- package/dist/host/daemonClient.d.ts +691 -91
- package/dist/host/daemonClient.d.ts.map +1 -1
- package/dist/host/daemonContract.d.ts +984 -0
- package/dist/host/daemonContract.d.ts.map +1 -1
- package/dist/host/githubCheckState.d.ts +4 -0
- package/dist/host/githubCheckState.d.ts.map +1 -1
- package/dist/host/githubCheckState.js +17 -2
- package/dist/host/githubCheckState.js.map +1 -1
- package/dist/host/readWaitStates.d.ts.map +1 -1
- package/dist/host/readWaitStates.js +13 -4
- package/dist/host/readWaitStates.js.map +1 -1
- package/dist/host/reassignWork.d.ts +54 -0
- package/dist/host/reassignWork.d.ts.map +1 -1
- package/dist/host/recordPayloads.d.ts.map +1 -1
- package/dist/host/recordPayloads.js +8 -3
- package/dist/host/recordPayloads.js.map +1 -1
- package/dist/host/releaseWork.d.ts +108 -0
- package/dist/host/releaseWork.d.ts.map +1 -1
- package/dist/host/status.d.ts +30 -0
- package/dist/host/status.d.ts.map +1 -1
- package/dist/model.d.ts +144 -0
- package/dist/model.d.ts.map +1 -1
- package/dist/model.js +14 -1
- package/dist/model.js.map +1 -1
- package/dist/operations.d.ts +1224 -0
- package/dist/operations.d.ts.map +1 -1
- package/dist/packageInfo.d.ts +1 -1
- package/dist/packageInfo.js +1 -1
- package/dist/prompt/briefEdit.d.ts +2 -0
- package/dist/prompt/briefEdit.d.ts.map +1 -0
- package/dist/prompt/briefEdit.js +41 -0
- package/dist/prompt/briefEdit.js.map +1 -0
- package/dist/prompt/worker.d.ts.map +1 -1
- package/dist/prompt/worker.js +11 -2
- package/dist/prompt/worker.js.map +1 -1
- package/dist/qualifyDependencies.d.ts +54 -0
- package/dist/qualifyDependencies.d.ts.map +1 -1
- package/dist/scheduling/areas.d.ts +162 -0
- package/dist/scheduling/areas.d.ts.map +1 -1
- package/dist/storage/attemptV12.d.ts +108 -0
- package/dist/storage/attemptV12.d.ts.map +1 -0
- package/dist/storage/attemptV12.js +94 -0
- package/dist/storage/attemptV12.js.map +1 -0
- package/dist/storage/createCollections.d.ts +5 -0
- package/dist/storage/createCollections.d.ts.map +1 -0
- package/dist/storage/createCollections.js +21 -0
- package/dist/storage/createCollections.js.map +1 -0
- package/dist/storage/cycleV12.d.ts +287 -0
- package/dist/storage/cycleV12.d.ts.map +1 -0
- package/dist/storage/cycleV12.js +124 -0
- package/dist/storage/cycleV12.js.map +1 -0
- package/dist/storage/fleetMigrations.d.ts +0 -39
- package/dist/storage/fleetMigrations.d.ts.map +1 -1
- package/dist/storage/fleetMigrations.js +3 -9
- package/dist/storage/fleetMigrations.js.map +1 -1
- package/dist/storage/legacyColumns.d.ts +40 -0
- package/dist/storage/legacyColumns.d.ts.map +1 -0
- package/dist/storage/legacyColumns.js +12 -0
- package/dist/storage/legacyColumns.js.map +1 -0
- package/dist/storage/makeForeignReservations.d.ts +15 -0
- package/dist/storage/makeForeignReservations.d.ts.map +1 -0
- package/dist/storage/makeForeignReservations.js +34 -0
- package/dist/storage/makeForeignReservations.js.map +1 -0
- package/dist/storage/makePostgresFleetStore.d.ts +36 -16
- package/dist/storage/makePostgresFleetStore.d.ts.map +1 -1
- package/dist/storage/makePostgresFleetStore.js +24 -32
- package/dist/storage/makePostgresFleetStore.js.map +1 -1
- package/dist/storage/model.d.ts +53 -59
- package/dist/storage/model.d.ts.map +1 -1
- package/dist/storage/model.js +18 -60
- package/dist/storage/model.js.map +1 -1
- package/dist/storage/operationEntries.d.ts +6 -5
- package/dist/storage/operationEntries.d.ts.map +1 -1
- package/dist/storage/operationEntries.js +12 -15
- package/dist/storage/operationEntries.js.map +1 -1
- package/dist/storage/preparationV12.d.ts +44 -0
- package/dist/storage/preparationV12.d.ts.map +1 -0
- package/dist/storage/preparationV12.js +30 -0
- package/dist/storage/preparationV12.js.map +1 -0
- package/dist/storage/readRecords.d.ts +4 -0
- package/dist/storage/readRecords.d.ts.map +1 -0
- package/dist/storage/readRecords.js +10 -0
- package/dist/storage/readRecords.js.map +1 -0
- package/dist/storage/recordChildren.d.ts +11 -0
- package/dist/storage/recordChildren.d.ts.map +1 -0
- package/dist/storage/recordChildren.js +105 -0
- package/dist/storage/recordChildren.js.map +1 -0
- package/dist/storage/recordShape.d.ts +23 -0
- package/dist/storage/recordShape.d.ts.map +1 -0
- package/dist/storage/recordShape.js +112 -0
- package/dist/storage/recordShape.js.map +1 -0
- package/dist/storage/recordValue.d.ts +9 -6
- package/dist/storage/recordValue.d.ts.map +1 -1
- package/dist/storage/recordValue.js +42 -32
- package/dist/storage/recordValue.js.map +1 -1
- package/dist/storage/shapeV12.d.ts +794 -0
- package/dist/storage/shapeV12.d.ts.map +1 -0
- package/dist/storage/shapeV12.js +10 -0
- package/dist/storage/shapeV12.js.map +1 -0
- package/dist/storage/textRecordValue.d.ts +3 -0
- package/dist/storage/textRecordValue.d.ts.map +1 -0
- package/dist/storage/textRecordValue.js +13 -0
- package/dist/storage/textRecordValue.js.map +1 -0
- package/dist/storage/typedDecisionsV12.d.ts +103 -0
- package/dist/storage/typedDecisionsV12.d.ts.map +1 -0
- package/dist/storage/typedDecisionsV12.js +97 -0
- package/dist/storage/typedDecisionsV12.js.map +1 -0
- package/dist/storage/typedTables.d.ts +4 -0
- package/dist/storage/typedTables.d.ts.map +1 -0
- package/dist/storage/typedTables.js +39 -0
- package/dist/storage/typedTables.js.map +1 -0
- package/package.json +8 -8
- package/src/engine/abandonStalled.ts +63 -0
- package/src/engine/applyResolution.ts +3 -0
- package/src/engine/approveBrief.ts +34 -32
- package/src/engine/exhaustedCheckRepairs.ts +3 -1
- package/src/engine/makeAdopt.ts +12 -0
- package/src/engine/observedAttempt.ts +3 -0
- package/src/engine/prepareCommand.ts +21 -0
- package/src/engine/recoverStall.ts +6 -2
- package/src/engine/repository.ts +1 -0
- package/src/engine/resolveExecution.ts +3 -1
- package/src/engine/sessionCleanup.ts +3 -1
- package/src/engine/sessionStatus.ts +5 -0
- package/src/engine/steerBrief.ts +54 -0
- package/src/engine/views.ts +1 -0
- package/src/host/admission.ts +2 -1
- package/src/host/githubCheckState.ts +19 -4
- package/src/host/readWaitStates.ts +12 -11
- package/src/host/recordPayloads.ts +11 -3
- package/src/model.ts +20 -1
- package/src/packageInfo.ts +1 -1
- package/src/prompt/briefEdit.ts +44 -0
- package/src/prompt/worker.ts +11 -2
- package/src/storage/attemptV12.ts +95 -0
- package/src/storage/createCollections.ts +21 -0
- package/src/storage/cycleV12.ts +125 -0
- package/src/storage/fleetMigrations.ts +3 -10
- package/src/storage/legacyColumns.ts +12 -0
- package/src/storage/makeForeignReservations.ts +41 -0
- package/src/storage/makePostgresFleetStore.ts +30 -43
- package/src/storage/model.ts +19 -69
- package/src/storage/operationEntries.ts +12 -22
- package/src/storage/preparationV12.ts +31 -0
- package/src/storage/readRecords.ts +12 -0
- package/src/storage/recordChildren.ts +131 -0
- package/src/storage/recordShape.ts +137 -0
- package/src/storage/recordValue.ts +47 -34
- package/src/storage/shapeV12.ts +11 -0
- package/src/storage/textRecordValue.ts +16 -0
- package/src/storage/typedDecisionsV12.ts +100 -0
- package/src/storage/typedTables.ts +39 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,28 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.2.0 - 2026-10-17
|
|
4
|
+
|
|
5
|
+
### Added
|
|
6
|
+
|
|
7
|
+
- Export `briefEditPrompt(previous, current)` for correction prompts, `briefSteerIntent(previous, record, requestedAt)` for durable intent preparation, and `steerBrief(state, stored, previous)` for delivery through the existing session service.
|
|
8
|
+
|
|
9
|
+
### Fixed
|
|
10
|
+
|
|
11
|
+
- Steer approved brief edits into an active worker or repair turn with a change summary and the full new brief. Persist each revision's steer attempt before delivery so reconciliation and restarts do not repeat it; failed steering retains the new criteria for review.
|
|
12
|
+
- Show brief steer requests, acknowledged delivery times and failures in Fleet status. Attempt records and session views expose optional `briefSteers` entries with `revision`, `requestedAt`, optional `steeredAt` and optional `error` fields.
|
|
13
|
+
- Cloud worker and reviewer startup instructions use login-shell environment activation, with a single fallback when Node does not match `.node-version`. Code workers run `./script/update` immediately after fetching and creating their branch; report workers run it before executing repository commands.
|
|
14
|
+
- Align published SQL, Platform, contract and Work Board dependencies with the current framework releases.
|
|
15
|
+
- Fresh worker retries refresh their preparation from current main before host dispatch, preserving prior attempts and response receipts without asking a human to resolve stale preparation.
|
|
16
|
+
- Stalled turns retain their recovery state when a brief edit replaces the current decision. Retry or dispatch of the revised brief abandons the stalled turn and starts a fresh session; late output and acknowledgements remain fenced out. Release can also abandon the stalled turn after a decision replacement.
|
|
17
|
+
- Retry and release can abandon a stalled provider turn even when it still reports running or no longer responds. Retry starts a fresh session, and abandoned turns cannot supply accepted output or late acknowledgements. Attempts retain the provider's last observation and interruption or observation failures in an optional `abandoned` field.
|
|
18
|
+
|
|
19
|
+
## 0.1.1 - 2026-10-16
|
|
20
|
+
|
|
21
|
+
### Fixed
|
|
22
|
+
|
|
23
|
+
- Validate only the newest run of each GitHub check name on the adopted head, using completion time or start time. Superseded cancelled or failed runs no longer trigger repairs.
|
|
24
|
+
- Revalidate check repairs that leave the PR head unchanged without repeating the approved review. Three completed repairs of the same failing checks exhaust the repair limit even when a repair submission failed between them.
|
|
25
|
+
|
|
3
26
|
## 0.1.0 - 2026-10-16
|
|
4
27
|
|
|
5
28
|
### Added
|
package/README.md
CHANGED
|
@@ -98,7 +98,7 @@ fleet-launch:
|
|
|
98
98
|
|
|
99
99
|
The launch fields are strings. Omitted fields inherit the host settings; without host settings or an override, they inherit provider defaults. An invalid override fails before dispatch. The selected settings also apply to repair turns. `src/board/fleetField.test.ts`, `src/host/commands.test.ts` and `src/engine/launchSettings.spec.ts` cover these rules.
|
|
100
100
|
|
|
101
|
-
The worker brief is the authored content in the item's own Markdown source. Editing a linked goal, plan, report or decision, or an unrelated item, does not change that brief. When prepared or active work has no open decision, Fleet approves an edited brief in place on the next pass if it still has `fleet: approved`, its owner is omitted or `codex`, and its status is not `done`, `superseded` or `deferred`. The worker keeps its session, turn and PR without a Board context changed decision. A changed brief that fails these conditions still stops for a human. `work-fleet dispatch <id>` can explicitly approve the current approved brief in place, even while its worker turn runs. Retry on the context decision approves the brief that decision was published against; an answer to a decision from before an edit cannot approve the new brief. Approval updates the stored context and prompt, supersedes the decision, and preserves the current
|
|
101
|
+
The worker brief is the authored content in the item's own Markdown source. Editing a linked goal, plan, report or decision, or an unrelated item, does not change that brief. When prepared or active work has no open decision, Fleet approves an edited brief in place on the next pass if it still has `fleet: approved`, its owner is omitted or `codex`, and its status is not `done`, `superseded` or `deferred`. The worker keeps its session, turn and PR without a Board context changed decision. A changed brief that fails these conditions still stops for a human. `work-fleet dispatch <id>` can explicitly approve the current approved brief in place, even while its worker turn runs. Retry on the context decision approves the brief that decision was published against; an answer to a decision from before an edit cannot approve the new brief. Approval updates the stored context and prompt, supersedes the decision, and preserves the current thread and PR. When the worker or repair turn has an active receipt, Fleet steers it through the existing provider steer operation with a summary of the changes followed by the full new brief. Each authored revision is attempted at most once per turn, including after restart or a brief reverting to a previously steered revision. The approved brief and steer intent commit together before the provider call. CLI status records the request time, acknowledged delivery time or failure; interrupted delivery remains unconfirmed and is not replayed. Unsupported or failed steering leaves the updated brief in place for independent review and later repairs on the same worker thread. Completed turns and reviewers receive no brief steer. `src/engine/briefSteering.spec.ts`, `src/engine/briefSteerRecovery.spec.ts` and `src/host/briefSteering.spec.ts` prove these boundaries with real PostgreSQL, synthetic providers and a daemon SIGKILL/restart. Removing approval stops further execution. Changing the item's `status`, including `done`, preserves work that has started and its open decisions. That work completes through the normal execution, review and delivery path; only an explicit release answer releases unfinished execution ownership. Uncertain provider receipts retain ownership for reconciliation. `src/engine/approvedBrief.spec.ts`, `src/engine/contextScope.spec.ts`, `src/engine/contextAuthority.spec.ts` and `src/host/approvedRevision.spec.ts`, `src/host/approveBrief.spec.ts`, `src/engine/briefApproval.spec.ts` and `src/engine/staleDecisions.spec.ts` cover these transitions against PostgreSQL with Markdown Board fixtures and a synthetic provider.
|
|
102
102
|
|
|
103
103
|
Cloud hosts compute the Board directory's repository-relative path only when that directory is inside the repository and git-ignored. Before launching, Fleet checks each criterion's text for that path. A match publishes an orchestrator decision naming the criteria and explaining that Cloud workers cannot read local-only Board data, without starting a session. Edit the criteria to use data available to the worker, then dispatch again. Local workers, Board directories outside the repository, directories that are not ignored, and paths mentioned only in the body do not trigger this guard. `src/host/localOnlyCriteria.spec.ts` covers these cases and dispatch after an edit against PostgreSQL with a synthetic repository and provider.
|
|
104
104
|
|
|
@@ -323,7 +323,7 @@ Each scheduler pass shares a Board snapshot and identity index across admission,
|
|
|
323
323
|
|
|
324
324
|
Fleet excludes files with invalid metadata or unreadable sources from admission, records a Board problem with the file and diagnostic, and retries them on the next pass. An unrelated invalid file leaves running work executing. A lookup of an invalid or missing work source still blocks that work; when metadata cannot supply its identity, the missing-identity diagnostic includes the Board file problems. The named problem reaches the execution status and the published decision, using the original approved context for publication. `src/host/boardReadErrors.spec.ts` proves admission, recovery, running-work isolation and named diagnostics against real PostgreSQL.
|
|
325
325
|
|
|
326
|
-
Provide `BoardGateway`, `FleetRepository`, `FleetPolicy`, `FleetIntegrations` and `SessionService` to `Fleet.layer`. The Markdown gateway reads Board context, and `postgresFleetRepository(namespace?)` supplies durable SQL attachments on a native `SqlClient`. Fleet stores
|
|
326
|
+
Provide `BoardGateway`, `FleetRepository`, `FleetPolicy`, `FleetIntegrations` and `SessionService` to `Fleet.layer`. The Markdown gateway reads Board context, and `postgresFleetRepository(namespace?)` supplies durable SQL attachments on a native `SqlClient`. Fleet stores scalar fields and scalar lists in typed PostgreSQL columns through effect-sql models. Nested objects use typed columns, and repeated records use ordered child tables, including archived cycles. Foreign occupancy uses a separate model repository. Versioned transaction writes reject stale updates and replace child rows atomically; the adapter retains Fleet’s one-based record versions. Record reads hold a shared transaction lock while loading their columns and children. Startup migrates existing JSONB and text records, preserving nested values, record versions and admission order. `src/storage/typedMigration.spec.ts` reads every current and archived field back unchanged, distinguishes empty and absent structures, and proves rollback after migration and child-write failures. `src/storage/modelMigration.spec.ts` exercises the JSONB upgrade and requeueing; `src/host/modelMigration.spec.ts` covers daemon HTTP reads and writes after startup migration.
|
|
327
327
|
|
|
328
328
|
A session journal persists intents and acknowledged turns before further remote mutation. `src/session/service.test.ts` and `src/engine/recovery.spec.ts` cover receipt ordering and recovery without duplicate launch.
|
|
329
329
|
|
package/dist/admit.d.ts
CHANGED
|
@@ -15,6 +15,33 @@ export declare const admit: (work: {
|
|
|
15
15
|
readonly admissionReady?: boolean | undefined;
|
|
16
16
|
readonly areas?: readonly string[] | undefined;
|
|
17
17
|
readonly attempts: readonly {
|
|
18
|
+
readonly abandoned?: {
|
|
19
|
+
readonly at: number;
|
|
20
|
+
readonly interruptError?: string | undefined;
|
|
21
|
+
readonly observation?: {
|
|
22
|
+
readonly capacity?: "flexUnavailable" | "rateLimitExceeded" | "serverOverloaded" | undefined;
|
|
23
|
+
readonly error?: string | undefined;
|
|
24
|
+
readonly execution: "accepted" | "completed" | "failed" | "interrupted" | "running";
|
|
25
|
+
readonly output: string;
|
|
26
|
+
readonly progress?: readonly {
|
|
27
|
+
readonly id: string;
|
|
28
|
+
readonly status?: string | undefined;
|
|
29
|
+
}[] | undefined;
|
|
30
|
+
readonly provisioning: "ready" | "unknown";
|
|
31
|
+
readonly receipt: {
|
|
32
|
+
readonly sessionId: string;
|
|
33
|
+
readonly turnId: string;
|
|
34
|
+
};
|
|
35
|
+
readonly turnMissing?: boolean | undefined;
|
|
36
|
+
} | undefined;
|
|
37
|
+
readonly observationError?: string | undefined;
|
|
38
|
+
} | undefined;
|
|
39
|
+
readonly briefSteers?: readonly {
|
|
40
|
+
readonly error?: string | undefined;
|
|
41
|
+
readonly requestedAt: number;
|
|
42
|
+
readonly revision: string;
|
|
43
|
+
readonly steeredAt?: number | undefined;
|
|
44
|
+
}[] | undefined;
|
|
18
45
|
readonly checkFailures?: readonly string[] | undefined;
|
|
19
46
|
readonly missingSince?: number | undefined;
|
|
20
47
|
readonly observationRetries?: number | undefined;
|
|
@@ -253,6 +280,33 @@ export declare const admit: (work: {
|
|
|
253
280
|
readonly admissionReady?: boolean | undefined;
|
|
254
281
|
readonly areas?: readonly string[] | undefined;
|
|
255
282
|
readonly attempts: readonly {
|
|
283
|
+
readonly abandoned?: {
|
|
284
|
+
readonly at: number;
|
|
285
|
+
readonly interruptError?: string | undefined;
|
|
286
|
+
readonly observation?: {
|
|
287
|
+
readonly capacity?: "flexUnavailable" | "rateLimitExceeded" | "serverOverloaded" | undefined;
|
|
288
|
+
readonly error?: string | undefined;
|
|
289
|
+
readonly execution: "accepted" | "completed" | "failed" | "interrupted" | "running";
|
|
290
|
+
readonly output: string;
|
|
291
|
+
readonly progress?: readonly {
|
|
292
|
+
readonly id: string;
|
|
293
|
+
readonly status?: string | undefined;
|
|
294
|
+
}[] | undefined;
|
|
295
|
+
readonly provisioning: "ready" | "unknown";
|
|
296
|
+
readonly receipt: {
|
|
297
|
+
readonly sessionId: string;
|
|
298
|
+
readonly turnId: string;
|
|
299
|
+
};
|
|
300
|
+
readonly turnMissing?: boolean | undefined;
|
|
301
|
+
} | undefined;
|
|
302
|
+
readonly observationError?: string | undefined;
|
|
303
|
+
} | undefined;
|
|
304
|
+
readonly briefSteers?: readonly {
|
|
305
|
+
readonly error?: string | undefined;
|
|
306
|
+
readonly requestedAt: number;
|
|
307
|
+
readonly revision: string;
|
|
308
|
+
readonly steeredAt?: number | undefined;
|
|
309
|
+
}[] | undefined;
|
|
256
310
|
readonly checkFailures?: readonly string[] | undefined;
|
|
257
311
|
readonly missingSince?: number | undefined;
|
|
258
312
|
readonly observationRetries?: number | undefined;
|
package/dist/admit.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admit.d.ts","sourceRoot":"","sources":["../src/admit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAC;AAGnE,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAE9E,eAAO,MAAM,KAAK
|
|
1
|
+
{"version":3,"file":"admit.d.ts","sourceRoot":"","sources":["../src/admit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAC;AAGnE,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAE9E,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+CAIH,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,+CA4B9D,CAAC"}
|