pi-daddy 0.22.0 → 0.24.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 +40 -0
- package/README.md +12 -6
- package/contracts/daily-view/v1/README.md +114 -0
- package/contracts/daily-view/v1/fixtures/view.json +525 -0
- package/contracts/daily-view/v1/fixtures/view.txt +75 -0
- package/contracts/daily-view/v1/fixtures/work.jsonl +17 -0
- package/contracts/daily-view/v1/p03/README.md +26 -0
- package/contracts/daily-view/v1/p03/fixtures/retained-executions.json +241 -0
- package/contracts/daily-view/v1/p03/projection.schema.json +194 -0
- package/contracts/daily-view/v1/p03/provenance.json +21 -0
- package/contracts/dashboard-host/v1/README.md +176 -0
- package/contracts/debrief/v1/README.md +146 -0
- package/contracts/debrief/v1/intervention/README.md +32 -0
- package/contracts/debrief/v1/intervention/fixtures/artifact-3ee11136beb864f518252e5024dae9197421fbf97b6e981d3243c782b5c44bd0.txt +1 -0
- package/contracts/debrief/v1/intervention/fixtures/artifact-58905d872dd3c54a9705f67b05fa82edbad7af6476ae8993faf1a7b9fadfb905.txt +1 -0
- package/contracts/debrief/v1/intervention/fixtures/assessment.json +29 -0
- package/contracts/debrief/v1/intervention/fixtures/blind-view.json +20 -0
- package/contracts/debrief/v1/intervention/fixtures/choice.json +7 -0
- package/contracts/debrief/v1/intervention/fixtures/manifest.json +57 -0
- package/contracts/debrief/v1/intervention/fixtures/reveal.json +39 -0
- package/contracts/debrief/v1/provenance.json +89 -0
- package/contracts/debrief/v1/work-capture/README.md +38 -0
- package/contracts/debrief/v1/work-capture/fixtures/batch.json +17 -0
- package/contracts/debrief/v1/work-capture/fixtures/cases.json +184 -0
- package/contracts/debrief/v1/work-capture/fixtures/review.json +184 -0
- package/contracts/debrief/v1/work-capture/review-request.schema.json +41 -0
- package/contracts/debrief/v1/work-capture/work-case.schema.json +190 -0
- package/contracts/debrief/v2/README.md +71 -0
- package/contracts/debrief/v2/input-pin.json +66 -0
- package/contracts/debrief/v2/intervention-upstream.md +40 -0
- package/contracts/debrief/v2/work-signals-upstream.md +22 -0
- package/contracts/dispatch-control/v1/README.md +109 -0
- package/contracts/dispatch-control/v1/request.schema.json +19 -0
- package/contracts/effect-profile/v1/README.md +124 -0
- package/contracts/execution-retention/v1/README.md +109 -0
- package/contracts/execution-retention/v2/README.md +148 -0
- package/contracts/execution-retention/v2/fixtures/interrupted-native-bytes.json +91 -0
- package/contracts/execution-retention/v2/fixtures/missing-native-session.json +91 -0
- package/contracts/execution-retention/v2/fixtures/native-file-unknown-branch.json +91 -0
- package/contracts/execution-retention/v2/fixtures/native-id-without-bytes.json +91 -0
- package/contracts/execution-retention/v2/fixtures/native-live-branch.json +90 -0
- package/contracts/execution-retention/v2/fixtures/replaced-native-session.json +92 -0
- package/contracts/execution-retention/v2/fixtures/result-82c620cdfeb8ca6b858cf653d7f5e2eedca5315d6244216d60e8b36f03223d6a.bin +1 -0
- package/contracts/execution-retention/v2/fixtures/session-2ec1f134bc739984434f7fca689e1c3d1c39fce2dcadae709e9b6faedfcc4ac7.bin +3 -0
- package/contracts/execution-retention/v2/fixtures/session-9bdb4bd16a901da31580acf056bda525225259e15ec409e0410480109011772f.bin +3 -0
- package/contracts/execution-retention/v2/manifest.schema.json +858 -0
- package/contracts/experiment/v1/README.md +164 -0
- package/contracts/factory-order/v1/README.md +151 -0
- package/contracts/factory-order/v1/adoption-pin.json +8 -0
- package/contracts/intent-control/v1/README.md +135 -0
- package/contracts/intent-control/v1/request.schema.json +1096 -0
- package/contracts/intent-control/v2/README.md +34 -0
- package/contracts/intent-control/v2/request.schema.json +1070 -0
- package/contracts/ledger/v4/README.md +241 -0
- package/contracts/ledger/v4/fixtures/layout-options.json +428 -0
- package/contracts/ledger/v4/fixtures/work-acceptance.json +57 -0
- package/contracts/ledger/v4/fixtures/work-occurrence.json +44 -0
- package/contracts/ledger/v4/fixtures/work-revision.json +26 -0
- package/contracts/ledger/v4/fixtures/work-snapshot.json +73 -0
- package/contracts/ledger/v4/ledger-event.schema.json +162 -0
- package/contracts/ordinary-control/v1/README.md +59 -0
- package/contracts/producer-ipc/v1/README.md +137 -0
- package/dist/check-runner.d.ts +5 -0
- package/dist/check-runner.d.ts.map +1 -1
- package/dist/check-runner.js +16 -2
- package/dist/check-runner.js.map +1 -1
- package/dist/cli.d.ts +3 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +49 -3
- package/dist/cli.js.map +1 -1
- package/dist/control-journal.d.ts +20 -0
- package/dist/control-journal.d.ts.map +1 -0
- package/dist/control-journal.js +73 -0
- package/dist/control-journal.js.map +1 -0
- package/dist/daily-dashboard-host.d.ts +99 -0
- package/dist/daily-dashboard-host.d.ts.map +1 -0
- package/dist/daily-dashboard-host.js +71 -0
- package/dist/daily-dashboard-host.js.map +1 -0
- package/dist/daily-view-input.d.ts +44 -0
- package/dist/daily-view-input.d.ts.map +1 -0
- package/dist/daily-view-input.js +68 -0
- package/dist/daily-view-input.js.map +1 -0
- package/dist/daily-view-render.d.ts +4 -0
- package/dist/daily-view-render.d.ts.map +1 -0
- package/dist/daily-view-render.js +41 -0
- package/dist/daily-view-render.js.map +1 -0
- package/dist/daily-view.d.ts +74 -0
- package/dist/daily-view.d.ts.map +1 -0
- package/dist/daily-view.js +170 -0
- package/dist/daily-view.js.map +1 -0
- package/dist/dashboard-cli.d.ts +26 -1
- package/dist/dashboard-cli.d.ts.map +1 -1
- package/dist/dashboard-cli.js +128 -3
- package/dist/dashboard-cli.js.map +1 -1
- package/dist/dashboard-harness.d.ts +22 -0
- package/dist/dashboard-harness.d.ts.map +1 -0
- package/dist/dashboard-harness.js +89 -0
- package/dist/dashboard-harness.js.map +1 -0
- package/dist/dashboard-herdr.d.ts.map +1 -1
- package/dist/dashboard-herdr.js +7 -2
- package/dist/dashboard-herdr.js.map +1 -1
- package/dist/dashboard-host-contract.d.ts +116 -0
- package/dist/dashboard-host-contract.d.ts.map +1 -0
- package/dist/dashboard-host-contract.js +14 -0
- package/dist/dashboard-host-contract.js.map +1 -0
- package/dist/dashboard-host-transport.d.ts +16 -0
- package/dist/dashboard-host-transport.d.ts.map +1 -0
- package/dist/dashboard-host-transport.js +124 -0
- package/dist/dashboard-host-transport.js.map +1 -0
- package/dist/dashboard-host.d.ts +203 -0
- package/dist/dashboard-host.d.ts.map +1 -0
- package/dist/dashboard-host.js +376 -0
- package/dist/dashboard-host.js.map +1 -0
- package/dist/dashboard-observation.d.ts +28 -0
- package/dist/dashboard-observation.d.ts.map +1 -0
- package/dist/dashboard-observation.js +86 -0
- package/dist/dashboard-observation.js.map +1 -0
- package/dist/debrief-contract.d.ts +65 -0
- package/dist/debrief-contract.d.ts.map +1 -0
- package/dist/debrief-contract.js +151 -0
- package/dist/debrief-contract.js.map +1 -0
- package/dist/debrief-fixture.d.ts +16 -0
- package/dist/debrief-fixture.d.ts.map +1 -0
- package/dist/debrief-fixture.js +41 -0
- package/dist/debrief-fixture.js.map +1 -0
- package/dist/debrief-host.d.ts +59 -0
- package/dist/debrief-host.d.ts.map +1 -0
- package/dist/debrief-host.js +49 -0
- package/dist/debrief-host.js.map +1 -0
- package/dist/debrief-render.d.ts +5 -0
- package/dist/debrief-render.d.ts.map +1 -0
- package/dist/debrief-render.js +65 -0
- package/dist/debrief-render.js.map +1 -0
- package/dist/debrief.d.ts +90 -0
- package/dist/debrief.d.ts.map +1 -0
- package/dist/debrief.js +263 -0
- package/dist/debrief.js.map +1 -0
- package/dist/delegate-types.d.ts +2 -0
- package/dist/delegate-types.d.ts.map +1 -1
- package/dist/delegate-types.js.map +1 -1
- package/dist/delegate.d.ts.map +1 -1
- package/dist/delegate.js +1 -0
- package/dist/delegate.js.map +1 -1
- package/dist/dispatch-control.d.ts +45 -0
- package/dist/dispatch-control.d.ts.map +1 -0
- package/dist/dispatch-control.js +76 -0
- package/dist/dispatch-control.js.map +1 -0
- package/dist/effect-profile-runtime.d.ts +40 -0
- package/dist/effect-profile-runtime.d.ts.map +1 -0
- package/dist/effect-profile-runtime.js +51 -0
- package/dist/effect-profile-runtime.js.map +1 -0
- package/dist/effect-profile.d.ts +40 -0
- package/dist/effect-profile.d.ts.map +1 -0
- package/dist/effect-profile.js +152 -0
- package/dist/effect-profile.js.map +1 -0
- package/dist/execution-retention.d.ts +90 -0
- package/dist/execution-retention.d.ts.map +1 -0
- package/dist/execution-retention.js +247 -0
- package/dist/execution-retention.js.map +1 -0
- package/dist/experiment-contract.d.ts +56 -0
- package/dist/experiment-contract.d.ts.map +1 -0
- package/dist/experiment-contract.js +80 -0
- package/dist/experiment-contract.js.map +1 -0
- package/dist/experiment-state.d.ts +22 -0
- package/dist/experiment-state.d.ts.map +1 -0
- package/dist/experiment-state.js +79 -0
- package/dist/experiment-state.js.map +1 -0
- package/dist/experiment-store.d.ts +30 -0
- package/dist/experiment-store.d.ts.map +1 -0
- package/dist/experiment-store.js +147 -0
- package/dist/experiment-store.js.map +1 -0
- package/dist/experiment.d.ts +65 -0
- package/dist/experiment.d.ts.map +1 -0
- package/dist/experiment.js +357 -0
- package/dist/experiment.js.map +1 -0
- package/dist/factory-contract.d.ts +79 -0
- package/dist/factory-contract.d.ts.map +1 -0
- package/dist/factory-contract.js +89 -0
- package/dist/factory-contract.js.map +1 -0
- package/dist/factory-migration.d.ts +20 -0
- package/dist/factory-migration.d.ts.map +1 -0
- package/dist/factory-migration.js +55 -0
- package/dist/factory-migration.js.map +1 -0
- package/dist/factory-order.d.ts +848 -0
- package/dist/factory-order.d.ts.map +1 -0
- package/dist/factory-order.js +83 -0
- package/dist/factory-order.js.map +1 -0
- package/dist/factory-registry.d.ts +121 -0
- package/dist/factory-registry.d.ts.map +1 -0
- package/dist/factory-registry.js +133 -0
- package/dist/factory-registry.js.map +1 -0
- package/dist/file-lock.d.ts +8 -2
- package/dist/file-lock.d.ts.map +1 -1
- package/dist/file-lock.js +78 -19
- package/dist/file-lock.js.map +1 -1
- package/dist/herdr-poll.d.ts +8 -0
- package/dist/herdr-poll.d.ts.map +1 -1
- package/dist/herdr-poll.js +23 -0
- package/dist/herdr-poll.js.map +1 -1
- package/dist/index.d.ts +20 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +20 -0
- package/dist/index.js.map +1 -1
- package/dist/intent-application.d.ts +17 -0
- package/dist/intent-application.d.ts.map +1 -0
- package/dist/intent-application.js +113 -0
- package/dist/intent-application.js.map +1 -0
- package/dist/intent-control.d.ts +201 -0
- package/dist/intent-control.d.ts.map +1 -0
- package/dist/intent-control.js +110 -0
- package/dist/intent-control.js.map +1 -0
- package/dist/intent-scheduling.d.ts +9 -0
- package/dist/intent-scheduling.d.ts.map +1 -0
- package/dist/intent-scheduling.js +15 -0
- package/dist/intent-scheduling.js.map +1 -0
- package/dist/ledger-append.d.ts +15 -0
- package/dist/ledger-append.d.ts.map +1 -0
- package/dist/ledger-append.js +94 -0
- package/dist/ledger-append.js.map +1 -0
- package/dist/ledger.d.ts +11 -0
- package/dist/ledger.d.ts.map +1 -1
- package/dist/ledger.js +3 -7
- package/dist/ledger.js.map +1 -1
- package/dist/native-session-target.d.ts +9 -0
- package/dist/native-session-target.d.ts.map +1 -0
- package/dist/native-session-target.js +29 -0
- package/dist/native-session-target.js.map +1 -0
- package/dist/native-session.d.ts +59 -0
- package/dist/native-session.d.ts.map +1 -0
- package/dist/native-session.js +154 -0
- package/dist/native-session.js.map +1 -0
- package/dist/order-schedule.d.ts +37 -0
- package/dist/order-schedule.d.ts.map +1 -0
- package/dist/order-schedule.js +81 -0
- package/dist/order-schedule.js.map +1 -0
- package/dist/ordinary-children.d.ts +52 -0
- package/dist/ordinary-children.d.ts.map +1 -0
- package/dist/ordinary-children.js +93 -0
- package/dist/ordinary-children.js.map +1 -0
- package/dist/producer-ipc-contract.d.ts +29 -0
- package/dist/producer-ipc-contract.d.ts.map +1 -0
- package/dist/producer-ipc-contract.js +29 -0
- package/dist/producer-ipc-contract.js.map +1 -0
- package/dist/producer-ipc.d.ts +55 -0
- package/dist/producer-ipc.d.ts.map +1 -0
- package/dist/producer-ipc.js +143 -0
- package/dist/producer-ipc.js.map +1 -0
- package/dist/resource-budget.d.ts +334 -0
- package/dist/resource-budget.d.ts.map +1 -0
- package/dist/resource-budget.js +415 -0
- package/dist/resource-budget.js.map +1 -0
- package/dist/retention-contract.d.ts +73 -0
- package/dist/retention-contract.d.ts.map +1 -0
- package/dist/retention-contract.js +104 -0
- package/dist/retention-contract.js.map +1 -0
- package/dist/retention-json.d.ts +3 -0
- package/dist/retention-json.d.ts.map +1 -0
- package/dist/retention-json.js +32 -0
- package/dist/retention-json.js.map +1 -0
- package/dist/run-child.d.ts +4 -0
- package/dist/run-child.d.ts.map +1 -1
- package/dist/run-child.js +16 -2
- package/dist/run-child.js.map +1 -1
- package/dist/run-herdr.d.ts +6 -0
- package/dist/run-herdr.d.ts.map +1 -1
- package/dist/run-herdr.js +19 -6
- package/dist/run-herdr.js.map +1 -1
- package/dist/vendor/adoption.d.ts +129 -0
- package/dist/vendor/adoption.d.ts.map +1 -0
- package/dist/vendor/adoption.js +102 -0
- package/dist/vendor/adoption.js.map +1 -0
- package/dist/work-command.d.ts +30 -0
- package/dist/work-command.d.ts.map +1 -0
- package/dist/work-command.js +148 -0
- package/dist/work-command.js.map +1 -0
- package/dist/work-ledger-destination.d.ts +20 -0
- package/dist/work-ledger-destination.d.ts.map +1 -0
- package/dist/work-ledger-destination.js +131 -0
- package/dist/work-ledger-destination.js.map +1 -0
- package/dist/work-ledger-json.d.ts +25 -0
- package/dist/work-ledger-json.d.ts.map +1 -0
- package/dist/work-ledger-json.js +267 -0
- package/dist/work-ledger-json.js.map +1 -0
- package/dist/work-ledger-occurrences.d.ts +227 -0
- package/dist/work-ledger-occurrences.d.ts.map +1 -0
- package/dist/work-ledger-occurrences.js +115 -0
- package/dist/work-ledger-occurrences.js.map +1 -0
- package/dist/work-ledger-projection.d.ts +295 -0
- package/dist/work-ledger-projection.d.ts.map +1 -0
- package/dist/work-ledger-projection.js +237 -0
- package/dist/work-ledger-projection.js.map +1 -0
- package/dist/work-ledger-snapshot.d.ts +29 -0
- package/dist/work-ledger-snapshot.d.ts.map +1 -0
- package/dist/work-ledger-snapshot.js +267 -0
- package/dist/work-ledger-snapshot.js.map +1 -0
- package/dist/work-ledger-types.d.ts +261 -0
- package/dist/work-ledger-types.d.ts.map +1 -0
- package/dist/work-ledger-types.js +13 -0
- package/dist/work-ledger-types.js.map +1 -0
- package/dist/work-ledger-validation.d.ts +14 -0
- package/dist/work-ledger-validation.d.ts.map +1 -0
- package/dist/work-ledger-validation.js +226 -0
- package/dist/work-ledger-validation.js.map +1 -0
- package/dist/work-ledger.d.ts +43 -0
- package/dist/work-ledger.d.ts.map +1 -0
- package/dist/work-ledger.js +225 -0
- package/dist/work-ledger.js.map +1 -0
- package/extensions/daily-dashboard-session.ts +30 -0
- package/extensions/daily-work-session.ts +20 -0
- package/extensions/delegate-chain.ts +1 -0
- package/extensions/delegation-native.ts +12 -0
- package/extensions/delegation.ts +25 -11
- package/extensions/execute-child.ts +44 -5
- package/extensions/executor-session.ts +9 -0
- package/extensions/grants-command.ts +14 -15
- package/extensions/grants-connected-command.ts +19 -0
- package/extensions/grants.ts +26 -2
- package/extensions/ordinary-runtime.ts +14 -0
- package/extensions/primary-shadow.ts +11 -0
- package/extensions/run-delegation.ts +9 -7
- package/extensions/session.ts +10 -20
- package/extensions/work-runtime.ts +44 -0
- package/package.json +78 -4
- package/src/check-runner.ts +20 -2
- package/src/cli.ts +41 -4
- package/src/control-journal.ts +26 -0
- package/src/daily-dashboard-host.ts +49 -0
- package/src/daily-view-input.ts +59 -0
- package/src/daily-view-render.ts +44 -0
- package/src/daily-view.ts +152 -0
- package/src/dashboard-cli.ts +108 -4
- package/src/dashboard-harness.ts +37 -0
- package/src/dashboard-herdr.ts +7 -2
- package/src/dashboard-host-contract.ts +45 -0
- package/src/dashboard-host-transport.ts +40 -0
- package/src/dashboard-host.ts +191 -0
- package/src/dashboard-observation.ts +45 -0
- package/src/debrief-contract.ts +127 -0
- package/src/debrief-fixture.ts +29 -0
- package/src/debrief-host.ts +53 -0
- package/src/debrief-render.ts +49 -0
- package/src/debrief.ts +198 -0
- package/src/delegate-types.ts +2 -0
- package/src/delegate.ts +1 -0
- package/src/dispatch-control.ts +81 -0
- package/src/effect-profile-runtime.ts +46 -0
- package/src/effect-profile.ts +129 -0
- package/src/execution-retention.ts +230 -0
- package/src/experiment-contract.ts +66 -0
- package/src/experiment-state.ts +44 -0
- package/src/experiment-store.ts +98 -0
- package/src/experiment.ts +231 -0
- package/src/factory-contract.ts +47 -0
- package/src/factory-migration.ts +29 -0
- package/src/factory-order.ts +56 -0
- package/src/factory-registry.ts +60 -0
- package/src/file-lock.ts +47 -11
- package/src/herdr-poll.ts +18 -0
- package/src/index.ts +32 -0
- package/src/intent-application.ts +90 -0
- package/src/intent-control.ts +107 -0
- package/src/intent-scheduling.ts +14 -0
- package/src/ledger-append.ts +72 -0
- package/src/ledger.ts +3 -9
- package/src/native-session-target.ts +23 -0
- package/src/native-session.ts +139 -0
- package/src/order-schedule.ts +42 -0
- package/src/ordinary-children.ts +59 -0
- package/src/producer-ipc-contract.ts +26 -0
- package/src/producer-ipc.ts +107 -0
- package/src/resource-budget.ts +349 -0
- package/src/retention-contract.ts +84 -0
- package/src/retention-json.ts +20 -0
- package/src/run-child.ts +13 -2
- package/src/run-herdr.ts +11 -7
- package/src/vendor/adoption.ts +109 -0
- package/src/work-command.ts +179 -0
- package/src/work-ledger-destination.ts +113 -0
- package/src/work-ledger-json.ts +228 -0
- package/src/work-ledger-occurrences.ts +99 -0
- package/src/work-ledger-projection.ts +262 -0
- package/src/work-ledger-snapshot.ts +246 -0
- package/src/work-ledger-types.ts +229 -0
- package/src/work-ledger-validation.ts +174 -0
- package/src/work-ledger.ts +186 -0
package/CHANGELOG.md
CHANGED
|
@@ -12,6 +12,46 @@ the record of how the package got here and are worth keeping; they are not worth
|
|
|
12
12
|
> the record of how the package arrived at what it does, and because the reasoning behind each one is
|
|
13
13
|
> usually the clearest statement of why the current behaviour is what it is.
|
|
14
14
|
|
|
15
|
+
## 0.24.0 — declared daily work and concurrent variants (2026-09-11)
|
|
16
|
+
|
|
17
|
+
- Add `pi-daddy work add --id <id> --outcome <text>`: retain a digest-only selected obligation, reject changed redelivery and unsupported destinations, and join ordinary governed attempts without storing outcome prose. Runtime completion remains distinct from acceptance.
|
|
18
|
+
- Add the production `/grants host <fresh-id>|stop` lifecycle backed by the loaded skill-harness source bridge. The original process owns child handles, private socket transport and native validators; no authority is recovered from PID, pane labels or disk state.
|
|
19
|
+
- Publish frozen `pause-new-dispatch`, `resume-dispatch` and `refresh-current-work` dashboard actions. Pause changes only new ordinary admission, running children keep their original caller/result, refresh advances the existing source checkpoint explicitly, and stop never cancels a child.
|
|
20
|
+
- Add explicit bounded thinking selection to child argv and Work-v4 labels. Requested effort records selection only and is not proof of provider-internal reasoning.
|
|
21
|
+
- Add opt-in `delegate_all` primary return with eventual original-owner shadow accounting. Existing calls still wait for all; shadow failure or cancellation cannot replace or delay the selected primary, and invalid primary selection refuses before any child starts.
|
|
22
|
+
- Derive only exact retained scope, obligation and coverage when declared facts are absent. Deadlines, violations, prior acceptance, reopen history and unavailable artifact coverage are never inferred.
|
|
23
|
+
- Candidate-installed bridge/host startup, live busy-child pause/resume, same-host refresh/reconnect and primary-before-shadow settlement were observed. These are path/lifecycle checks, not acceptance or efficacy measurements.
|
|
24
|
+
|
|
25
|
+
## 0.23.0 — bounded factory control and retained evidence (2026-09-11)
|
|
26
|
+
|
|
27
|
+
- Add an opt-in work-ledger v4 contract, strict builders/readers, deterministic fixtures and explicit
|
|
28
|
+
authority-scoped projection. Ledger v3 remains the default governance format; existing v2/v3 paths and
|
|
29
|
+
behavior are unchanged.
|
|
30
|
+
- Add opt-in execution retention for exact available process, Herdr and native-session evidence without
|
|
31
|
+
converting runtime completion into acceptance or claiming unavailable bytes.
|
|
32
|
+
- Add one fixed `linux-bwrap-digest-v1` effect profile with durable aggregate attempt/input/concurrency
|
|
33
|
+
accounting. It executes package-owned digest/hold code only; arbitrary shell/model profiles, shared
|
|
34
|
+
writable destinations and aggregate CPU/memory/money enforcement remain unsupported.
|
|
35
|
+
- Add versioned resource dispatch and work-intent controls, bounded experiments and factory orders. Exact
|
|
36
|
+
authority, CAS, quiescence, reservation and acknowledgement boundaries fail closed; unknown ownership is
|
|
37
|
+
never replayed, refunded or inferred as success.
|
|
38
|
+
- Add read-only daily projections, retained blind debrief/checkpoint adapters and an explicit dashboard host
|
|
39
|
+
transport over a private bounded socket. Presentation, steering and cancellation require independently
|
|
40
|
+
supplied exact authority; refresh remains read-only and does not authenticate a human or module.
|
|
41
|
+
- Retain original ordinary-child cancellation handles and intent admission holds without replacing caller
|
|
42
|
+
lifetimes. Best-effort terminal observation failure stays visible but no longer permanently poisons a
|
|
43
|
+
known-settled boundary; required failure, unknown ownership and late coverage still refuse quiescence.
|
|
44
|
+
- Reject benign stale dashboard CAS and immutable-ID mismatches without poisoning the host before any
|
|
45
|
+
claim/effect. Attempted or uncertain effects retain the existing failed/unknown stop.
|
|
46
|
+
- Remove each newly owned native-profile probe fixture after all probe children settle, on success and
|
|
47
|
+
failure, without sweeping historical or caller-selected directories.
|
|
48
|
+
- CI now provisions bubblewrap on its ephemeral Ubuntu 26.04 preview runners, records bounded runtime
|
|
49
|
+
diagnostics and stages a verified job-owned Node runtime. These observations do not establish a general
|
|
50
|
+
sandbox or a new supported-host guarantee.
|
|
51
|
+
- Add public subpath exports and versioned artifacts for the new work-ledger, resource, experiment,
|
|
52
|
+
factory-order, effect-profile, retention, debrief and dashboard-host APIs. The workspace root remains
|
|
53
|
+
private; `pi-daddy` is the only published package. No dependency ranges changed.
|
|
54
|
+
|
|
15
55
|
## 0.22.0 — fail-closed audit follow-ups (2026-09-04)
|
|
16
56
|
|
|
17
57
|
- **BREAKING — invalid project stores now fail closed.** Malformed, unsupported, unreadable and wrong-directory
|
package/README.md
CHANGED
|
@@ -165,12 +165,12 @@ delegate_all({ children: [ {…}, {…}, {…} ] }) // several
|
|
|
165
165
|
(`PI_GRANTS_CHILD_TIMEOUT`, default 1200s) with `SIGTERM` → `SIGKILL` escalation so a child cannot ignore
|
|
166
166
|
its way past it, an abort is honoured even if it arrived before the spawn, and a child that exits
|
|
167
167
|
non-zero, times out or is cancelled comes back as a **tool error naming which** — not as an answer.
|
|
168
|
-
- **Fan-out
|
|
169
|
-
|
|
170
|
-
`
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
168
|
+
- **Fan-out stays bounded and waits for all by default.** At most 8 children per call, and the subtree budget
|
|
169
|
+
bounds the whole tree. Every child uses the same plan-gate-audit path. The opt-in
|
|
170
|
+
`completion:"primary", primary:N` form returns when that one-based child settles while the original
|
|
171
|
+
session retains bounded role/outcome accounting for its shadows; `/grants variants` displays it. Shadow
|
|
172
|
+
failure or later cancellation cannot replace/delay the primary result. This is not detached job recovery:
|
|
173
|
+
process exit ends ownership, and there is no retry, acceptance, winner selection or result-text store.
|
|
174
174
|
- **One child can be refused while its siblings succeed**, and every outcome is reported. A fan-out that
|
|
175
175
|
hid its refusals would let an orchestrator summarise four reviews when only three happened.
|
|
176
176
|
|
|
@@ -236,6 +236,10 @@ depth 2 · 1 active
|
|
|
236
236
|
|
|
237
237
|
The plugin ships inside pi-daddy and is linked globally only after an explicit **Install and open** choice.
|
|
238
238
|
Literal **Not now** and **Never ask** choices are persisted; dismissing or losing the dialog stores nothing.
|
|
239
|
+
A connected host can publish exact pre-authorized actions as short commands such as `pause-new-dispatch` or `defer-weekly`; the dashboard lists their human labels and accepts the key followed by Enter. The host resolves the key to its current CAS-bound request, so a person does not type JSON or tokens. Unknown/stale keys refuse before effects; raw JSON remains compatibility-only.
|
|
240
|
+
|
|
241
|
+
With pi-daddy 0.24.0 and skill-harness 0.14.0 loaded, declare work, reload, then run `/grants host <fresh-id>`. This creates one process-owned daily host, captures the current work/facts sources, publishes its private socket to `/grants dashboard`, and lists `pause-new-dispatch` or `resume-dispatch` plus `refresh-current-work`. Refresh is a deliberate action that atomically mirrors the current declared ledger and advances the existing source checkpoint; periodic dashboard redraw remains read-only. Pausing blocks only new governed ordinary children; a child already running keeps its original caller/result. `/grants host stop` closes the host and never cancels a child. Restart uses a fresh id; no PID, JSON/CAS envelope or prior controller is recovered.
|
|
242
|
+
|
|
239
243
|
`/grants dashboard` never installs silently and prints the exact manual command when the plugin is absent. It
|
|
240
244
|
checks the bundled plugin root and protocol before suggesting that a disabled plugin be enabled. Panes and
|
|
241
245
|
ledgers stay workspace/tab-specific: reuse rechecks the pane's current workspace/tab, a wrong-host open is
|
|
@@ -775,6 +779,8 @@ pi install npm:pi-daddy # as a pi extension
|
|
|
775
779
|
npm i pi-daddy # as a library (the resolver, ledger and spawn planner are pure)
|
|
776
780
|
npx pi-daddy init # as a command: scaffold .pi/skills/ and .pi/grants.env from installed
|
|
777
781
|
# skill packages — see the worked example above
|
|
782
|
+
npx pi-daddy work add --id daily-1 --outcome "Ship the declared slice"
|
|
783
|
+
# select one digest-only obligation; /reload then /grants dashboard
|
|
778
784
|
```
|
|
779
785
|
|
|
780
786
|
The package is also the source of the optional Herdr plugin: the extension offers to link the trusted
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
# P04 daily read-model v1 — input for P07/P08
|
|
2
|
+
|
|
3
|
+
Implemented candidate, local only. Independent overall review and formal acceptance remain pending.
|
|
4
|
+
This is an actual read-only path through the existing `pi-daddy-dashboard` CLI/Herdr plugin, not a control
|
|
5
|
+
API or an accepted-work counter derived from archive exits. P05 targeted control remains unavailable here.
|
|
6
|
+
|
|
7
|
+
The authority snapshot has its OWN identity namespace, distinct from the selected work snapshot.
|
|
8
|
+
Current/stale applicability derives from actual P01 claim/selection/matched-receipt validation, not equality
|
|
9
|
+
of those IDs/digests. Missing authority and superseded/mismatched receipts cannot carry acceptance forward.
|
|
10
|
+
The real walking P01 fixture with distinct identities is covered; P01 validation itself is unchanged.
|
|
11
|
+
|
|
12
|
+
## Pinned P03 input, independent P01 authority
|
|
13
|
+
|
|
14
|
+
`p03/` vendors exact immutable Git blobs from skill-harness
|
|
15
|
+
`a311df8c991108ada7b6f4b901332232a78e9a44`. `p03/provenance.json` records paths/SHA256. Those schema/fixture
|
|
16
|
+
bytes are unchanged. Input version is exactly `execution-archive-projection-v1`; the reader rejects other
|
|
17
|
+
versions, duplicate JSON members/execution identities, contradictory terminal shapes and lossy numeric
|
|
18
|
+
forms. It supports the adapter's emitted integer-token subset. P03 is always partial/not-assessed.
|
|
19
|
+
|
|
20
|
+
Work intent is rebuilt with existing `projectWorkLedger` from separately configured strict work-v4 bytes.
|
|
21
|
+
Exact selected scope/obligation revisions and occurrence bindings attach attempts by **executionId**, not
|
|
22
|
+
child names, output labels, file tails, sessions or timestamps. Claimed P03 runtime and P01 runtime remain
|
|
23
|
+
separate; disagreements are diagnostic. P03 conflicts neither grant nor revoke independently supplied P01
|
|
24
|
+
acceptance. All active branches remain null, even if P01 labels or P03 reported sessions contain other hints.
|
|
25
|
+
|
|
26
|
+
Only a genuine host supplies `workContext` to `readDailyView`/`dashboardFrame`. The reader detaches it before
|
|
27
|
+
I/O and invokes P01 validation; it never manufactures decisions/availability from claims or loads authority
|
|
28
|
+
from a file/environment variable. Missing authority or authority for another selection means unresolved
|
|
29
|
+
acceptance, not zero completed work. Accepted results are explicitly **under supplied snapshot authority**,
|
|
30
|
+
not fresh native approval. The host must independently establish availability/authority when resupplying it.
|
|
31
|
+
|
|
32
|
+
## Existing view path
|
|
33
|
+
|
|
34
|
+
The existing plugin command still calls `runDashboard`. Operator-only read settings are forwarded by its
|
|
35
|
+
existing open/reuse seam (no new plugin, worker hook or installation flow):
|
|
36
|
+
|
|
37
|
+
- `PI_DADDY_ARCHIVE_PROJECTION`: exact P03 snapshot file.
|
|
38
|
+
- `PI_DADDY_WORK_LEDGER`: exact separate work-v4 file.
|
|
39
|
+
- `PI_DADDY_WORK_SNAPSHOT`: JSON containing P01's exact `{snapshot:{id,digest},event:{eventId,digest}}` selection.
|
|
40
|
+
This is selection **only**, never authority. Pane reuse keys include these settings and their CWD.
|
|
41
|
+
|
|
42
|
+
CLI equivalents are `--archive-projection`, `--work-ledger`, `--work-snapshot`, plus `--once --no-color` or
|
|
43
|
+
`--once --daily-json`. No new files are discovered, installed or written by a status read. Legacy dashboard
|
|
44
|
+
behavior is unchanged when no daily input is configured. Existing core/plugin protocol validation remains.
|
|
45
|
+
Without a programmatic host-authority context the CLI intentionally cannot show authoritative acceptance.
|
|
46
|
+
|
|
47
|
+
```ts
|
|
48
|
+
import { readDailyView, createDailyViewReader } from 'pi-daddy/daily-view';
|
|
49
|
+
const read = createDailyViewReader(); // session-local gap metadata, not an authority store
|
|
50
|
+
const view = await read({ archiveProjectionPath, workLedgerPath, workContext: independentlyVerifiedP01Context,
|
|
51
|
+
sourceManifestFiles: policyAuthorizedManifestPathsBySha256 });
|
|
52
|
+
// renderDailyView(view) is exported from the package root; dashboardFrame({cwd, dailyView: options})
|
|
53
|
+
// invokes the same reader/render path. Rendering an arbitrary caller object is not validation.
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## Output contract
|
|
57
|
+
|
|
58
|
+
`version: "pi-daddy-daily-view-v1"`, `readOnly:true`, `freshness:"snapshot-unknown"`, `coverage:"partial"`.
|
|
59
|
+
Public TypeScript types: `DailyView`, `DailyObligation`, `DailyAttempt`, `DailyViewOptions` in `src/daily-view.ts`.
|
|
60
|
+
The deterministic `fixtures/view.json` and `fixtures/view.txt` are emitted by the actual reader/renderer.
|
|
61
|
+
|
|
62
|
+
- `scope` is an exact P01 revision or null; `selectedSnapshot` retains the exact selection references.
|
|
63
|
+
- `scopeState`, `authority`, and nullable `progress` are independent of runtime counts. Authority is
|
|
64
|
+
unavailable, stale-for-selection, or supplied-host-context. Obligations include intent/policy revisions,
|
|
65
|
+
acceptance, unstarted/attached activity, artifact/evidence coverage, matched receipt IDs, claim sources
|
|
66
|
+
and obstacle codes. IDs are shown because work-v4 has no verified human description text here.
|
|
67
|
+
- `attempts` preserves exact execution identity, P01 logical child/runtime and separate validated P03 row
|
|
68
|
+
(parents/public calls/archive IDs/reported sessions/outcome/issues). Reused child names stay separate.
|
|
69
|
+
`activeBranch` is always null. An archive exit0, including failed-control exit0, is never acceptance.
|
|
70
|
+
- `sourceAvailability` requires actual caller-authorized bytes matching each SHA256. No projection-supplied
|
|
71
|
+
path/URL is read. Missing mappings/deleted files are missing; mismatches/errors are not recovered facts.
|
|
72
|
+
Raw-manifest availability does not independently revalidate native transcript/check blobs or provenance.
|
|
73
|
+
- Check/evidence detail comes from P01's authority-aware coverage/receipt matching. P03 v1 has no named-check
|
|
74
|
+
receipt byte payload; that gap is printed, not inferred from a terminal result or an absent issue string.
|
|
75
|
+
- `sources` reports read/missing/error/unconfigured and exact file hashes. `issues` and `narrative` carry
|
|
76
|
+
deterministic coverage/obstacle explanations. No raw invalid input/error excerpts are rendered.
|
|
77
|
+
|
|
78
|
+
Reads are bounded regular non-symlink descriptor snapshots (4 MiB P03, 16 MiB work; at most 128 explicitly
|
|
79
|
+
mapped 64 KiB source manifests). Descriptor/path changes during read become errors. Every refresh rereads
|
|
80
|
+
rather than extending a cached execution history. Missing/error frames do not retain old runtime rows.
|
|
81
|
+
Reconnect produces a resnapshot and sticky gap label, never invented continuity. A new process starts with
|
|
82
|
+
an initial snapshot, not recovered history. Mtime is only a consistency check, never freshness or branch
|
|
83
|
+
proof. Rendering strips terminal control characters and caps lines/columns with visible omissions.
|
|
84
|
+
|
|
85
|
+
## Supported and BLOCKED scope
|
|
86
|
+
|
|
87
|
+
Supported: deterministic file-backed read-only view, real CLI and freshly isolated compiled plugin-command
|
|
88
|
+
execution, plus fixture transport wiring through the existing plugin open seam. No worker/model/native-gate
|
|
89
|
+
call is needed. Repeated reads preserve session/control bytes and message counts; disconnected/unavailable
|
|
90
|
+
models do not prevent useful status. Model connectivity itself remains unknown, not falsely "connected".
|
|
91
|
+
|
|
92
|
+
**BLOCKED live qualification:** no deployed P03 live archive policy/subscription or actual passive live
|
|
93
|
+
transport freshness was supplied. No live Herdr pane/worker observation is claimed; no terminal read,
|
|
94
|
+
scroll, monitoring prompt or control message was used. Installed smoke is separate from isolated compiled
|
|
95
|
+
checks. Full native session/active-branch gaps from P02 and P06's arbitrary-shell/shared-write/aggregate
|
|
96
|
+
CPU-memory-PID-money limitations remain. No accepted packet, fresh source, steering, dispatch or recovery
|
|
97
|
+
can be inferred from the daily view. P07/P08 must preserve these distinctions.
|
|
98
|
+
|
|
99
|
+
## Fixtures and reproduction
|
|
100
|
+
|
|
101
|
+
The fixture combines three fixed P01 obligations, two independently reconstructed fixture decisions and
|
|
102
|
+
one exited-but-unaccepted obligation with the exact six-row P03 fixture. P01's known branch labels are
|
|
103
|
+
explicit **test-world declarations**, not authentication of P03's unknown live branches. No authority is
|
|
104
|
+
constructed from incoming wire claims. Separate tests cover unstarted work, missing evidence, changed
|
|
105
|
+
scope/stale authority, unavailable sources, reconnect gaps and read-only repeated operation.
|
|
106
|
+
|
|
107
|
+
```sh
|
|
108
|
+
node --test packages/pi-daddy/test/daily-view.test.ts
|
|
109
|
+
node packages/pi-daddy/scripts/generate-daily-view-fixture.ts --check packages/pi-daddy/contracts/daily-view/v1/fixtures /absolute/owned/scratch-parent
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
The generator is repository fixture tooling, imports read-only and writes only explicit owned scratch/new
|
|
113
|
+
targets. Check does not change published fixtures; scratch is retained for inspection. No install, model
|
|
114
|
+
call, per-task review loop, mutation machinery or automatic authority/store update is involved.
|