pi-daddy 0.23.0 → 0.25.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 +20 -0
- package/README.md +20 -6
- package/contracts/ledger/v4/README.md +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/daily-dashboard-host.d.ts +123 -0
- package/dist/daily-dashboard-host.d.ts.map +1 -0
- package/dist/daily-dashboard-host.js +141 -0
- package/dist/daily-dashboard-host.js.map +1 -0
- package/dist/dashboard-cli.d.ts.map +1 -1
- package/dist/dashboard-cli.js +9 -2
- package/dist/dashboard-cli.js.map +1 -1
- package/dist/dashboard-handshake.d.ts.map +1 -1
- package/dist/dashboard-handshake.js +13 -4
- package/dist/dashboard-handshake.js.map +1 -1
- package/dist/dashboard-harness.d.ts +3 -0
- package/dist/dashboard-harness.d.ts.map +1 -1
- package/dist/dashboard-harness.js +15 -1
- package/dist/dashboard-harness.js.map +1 -1
- package/dist/dashboard-herdr.d.ts +1 -0
- package/dist/dashboard-herdr.d.ts.map +1 -1
- package/dist/dashboard-herdr.js +10 -8
- package/dist/dashboard-herdr.js.map +1 -1
- package/dist/dashboard-host-contract.d.ts +15 -1
- package/dist/dashboard-host-contract.d.ts.map +1 -1
- package/dist/dashboard-host-contract.js +1 -1
- package/dist/dashboard-host-contract.js.map +1 -1
- package/dist/dashboard-host-transport.d.ts +1 -0
- package/dist/dashboard-host-transport.d.ts.map +1 -1
- package/dist/dashboard-host-transport.js +5 -3
- package/dist/dashboard-host-transport.js.map +1 -1
- package/dist/dashboard-host.d.ts +62 -0
- package/dist/dashboard-host.d.ts.map +1 -1
- package/dist/dashboard-host.js +71 -6
- package/dist/dashboard-host.js.map +1 -1
- package/dist/dashboard-observation.d.ts.map +1 -1
- package/dist/dashboard-observation.js +6 -5
- package/dist/dashboard-observation.js.map +1 -1
- package/dist/experiment-store.d.ts +3 -1
- package/dist/experiment-store.d.ts.map +1 -1
- package/dist/experiment-store.js +20 -3
- package/dist/experiment-store.js.map +1 -1
- package/dist/experiment.d.ts.map +1 -1
- package/dist/experiment.js +9 -4
- package/dist/experiment.js.map +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/intent-application.d.ts.map +1 -1
- package/dist/intent-application.js +3 -2
- package/dist/intent-application.js.map +1 -1
- package/dist/measured-order.d.ts +249 -0
- package/dist/measured-order.d.ts.map +1 -0
- package/dist/measured-order.js +251 -0
- package/dist/measured-order.js.map +1 -0
- package/dist/measured-session.d.ts +97 -0
- package/dist/measured-session.d.ts.map +1 -0
- package/dist/measured-session.js +134 -0
- package/dist/measured-session.js.map +1 -0
- package/dist/work-command.d.ts +32 -0
- package/dist/work-command.d.ts.map +1 -0
- package/dist/work-command.js +161 -0
- package/dist/work-command.js.map +1 -0
- package/extensions/daily-dashboard-session.ts +31 -0
- package/extensions/daily-work-session.ts +20 -0
- package/extensions/delegation.ts +21 -8
- package/extensions/execute-child.ts +10 -1
- package/extensions/executor-session.ts +9 -0
- package/extensions/grants-command.ts +16 -15
- package/extensions/grants-connected-command.ts +19 -0
- package/extensions/grants.ts +25 -3
- package/extensions/primary-shadow.ts +11 -0
- package/extensions/run-delegation.ts +2 -0
- package/extensions/session.ts +7 -19
- package/extensions/work-runtime.ts +44 -0
- package/package.json +13 -1
- package/src/cli.ts +41 -4
- package/src/daily-dashboard-host.ts +88 -0
- package/src/dashboard-cli.ts +7 -2
- package/src/dashboard-handshake.ts +14 -5
- package/src/dashboard-harness.ts +10 -1
- package/src/dashboard-herdr.ts +12 -9
- package/src/dashboard-host-contract.ts +8 -2
- package/src/dashboard-host-transport.ts +8 -6
- package/src/dashboard-host.ts +37 -9
- package/src/dashboard-observation.ts +4 -2
- package/src/experiment-store.ts +11 -3
- package/src/experiment.ts +8 -3
- package/src/index.ts +17 -0
- package/src/intent-application.ts +3 -2
- package/src/measured-order.ts +67 -0
- package/src/measured-session.ts +70 -0
- package/src/work-command.ts +185 -0
package/CHANGELOG.md
CHANGED
|
@@ -12,6 +12,26 @@ 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.25.0 — practical daily steering and measured orders (2026-09-12)
|
|
16
|
+
|
|
17
|
+
- Add protocol-safe dashboard relink, exact active-attempt cancellation and durable measured-session spawn acknowledgement. Unknown/protocol-incompatible plugins still fail closed.
|
|
18
|
+
- Add labelled daily priority, recorded scope-successor and same-scope alternative actions through existing intent authority/CAS. Scope changes atomically rebind persisted and current-session declared work before ordinary dispatch resumes; active ordinary work suppresses steering actions.
|
|
19
|
+
- Add explicit two-minute closing presence and safe case-card preparation. Missing trust qualification spends zero of the durable five-card ceiling; preparation is not delivery until visibly acknowledged.
|
|
20
|
+
- Add a separate opt-in measured Sol/Terra SDK route with in-memory/no-tool bounds, observed identity, Pi Usage, clean-stop checks and explicit unknown state for launched nonsettling attempts. Pi catalog cost is not subscription billing and ordinary print-child Usage remains unavailable.
|
|
21
|
+
- Add package-exported bounded measured DAG orders with exact and deterministic free-form output qualification, complete sealed predecessor bytes/hash, original-owner unknown accounting, exact acknowledgement before declared recovery and inode-pinned append journals.
|
|
22
|
+
- Export the production daily host through the package root and `pi-daddy/daily-dashboard-host`; retain the exact skill-harness 0.15.0 bridge pin and learning-lifecycle navigation.
|
|
23
|
+
- Prior real NWS Sol/Terra outputs remain direct SDK comparison evidence. Offline contract validation is a no-model replay, not a new packaged measured-order occurrence. Human trust calibration, quality choice, configured adoption and later outcomes remain separate.
|
|
24
|
+
|
|
25
|
+
## 0.24.0 — declared daily work and concurrent variants (2026-09-11)
|
|
26
|
+
|
|
27
|
+
- 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.
|
|
28
|
+
- 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.
|
|
29
|
+
- 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.
|
|
30
|
+
- 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.
|
|
31
|
+
- 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.
|
|
32
|
+
- 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.
|
|
33
|
+
- 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.
|
|
34
|
+
|
|
15
35
|
## 0.23.0 — bounded factory control and retained evidence (2026-09-11)
|
|
16
36
|
|
|
17
37
|
- Add an opt-in work-ledger v4 contract, strict builders/readers, deterministic fixtures and explicit
|
package/README.md
CHANGED
|
@@ -165,12 +165,13 @@ 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 and explicitly
|
|
172
|
+
labels child provider usage unavailable because the print transport retains no Pi `Usage` event. Fan-out,
|
|
173
|
+
output bytes and wall time remain controller-bounded. Shadow failure or later cancellation cannot replace/delay the primary result. This is not detached job recovery:
|
|
174
|
+
process exit ends ownership, and there is no retry, acceptance, winner selection or result-text store.
|
|
174
175
|
- **One child can be refused while its siblings succeed**, and every outcome is reported. A fan-out that
|
|
175
176
|
hid its refusals would let an orchestrator summarise four reviews when only three happened.
|
|
176
177
|
|
|
@@ -236,6 +237,17 @@ depth 2 · 1 active
|
|
|
236
237
|
|
|
237
238
|
The plugin ships inside pi-daddy and is linked globally only after an explicit **Install and open** choice.
|
|
238
239
|
Literal **Not now** and **Never ask** choices are persisted; dismissing or losing the dialog stores nothing.
|
|
240
|
+
If the same plugin ID points at another package root after an isolated install or upgrade, startup offers an
|
|
241
|
+
explicit **Relink and open** repair. **Not now** or dismissal leaves both the existing link and prompt preference
|
|
242
|
+
unchanged; protocol mismatches are not replaced by guesswork.
|
|
243
|
+
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.
|
|
244
|
+
|
|
245
|
+
With pi-daddy 0.25.0 and skill-harness 0.15.0 loaded, declare work, reload, then run `/grants host <fresh-id>`. Library hosts can use the explicit `pi-daddy/daily-dashboard-host` export. 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`. Compatible recorded P01 snapshots and selected obligations also become labelled scope-successor, alternative, and put-first actions; choosing one still passes exact intent authority and host/selection/tip CAS, then atomically rebinds both persisted and current-session declared work before new ordinary dispatch is released. 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. An active retained child also gets an exact `cancel-exec-…` action (up to the ordinary eight-child width); choosing it requests abort through the original handle without cancelling siblings or implying acceptance/rejection. `/grants host closing` declares two minutes of explicit closing presence; only a paused, reservation-free, ordinary-quiescent host offers case-card preparation, and absent trust qualification defers without spending the five-card budget. `/grants host stop` closes the host and never cancels a child. Restart uses a fresh id; no PID, user-entered JSON/CAS envelope or prior controller is recovered.
|
|
246
|
+
|
|
247
|
+
The separate `pi-daddy/measured-order` export composes no-tool measured Sol/Terra sessions into a bounded dependent order. Every retry and deterministic output contract is predeclared; bounded JSON projection contracts admit free-form prose without pre-knowing the whole artifact hash, and dependent prompts consume the actual retained predecessor output with its observed seal. A reopened controller treats another owner's unfinished claim as unknown and cannot replay it; an independently authorized exact acknowledgement can consume that schedule position, but never refunds or settles the original resource reservation. See ADR-0072.
|
|
248
|
+
|
|
249
|
+
The final candidate requirement/code/evidence index and exact unresolved human actions are in [`docs/FINAL-READINESS-INDEX.md`](../../docs/FINAL-READINESS-INDEX.md).
|
|
250
|
+
|
|
239
251
|
`/grants dashboard` never installs silently and prints the exact manual command when the plugin is absent. It
|
|
240
252
|
checks the bundled plugin root and protocol before suggesting that a disabled plugin be enabled. Panes and
|
|
241
253
|
ledgers stay workspace/tab-specific: reuse rechecks the pane's current workspace/tab, a wrong-host open is
|
|
@@ -775,6 +787,8 @@ pi install npm:pi-daddy # as a pi extension
|
|
|
775
787
|
npm i pi-daddy # as a library (the resolver, ledger and spawn planner are pure)
|
|
776
788
|
npx pi-daddy init # as a command: scaffold .pi/skills/ and .pi/grants.env from installed
|
|
777
789
|
# skill packages — see the worked example above
|
|
790
|
+
npx pi-daddy work add --id daily-1 --outcome "Ship the declared slice"
|
|
791
|
+
# select one digest-only obligation; /reload then /grants dashboard
|
|
778
792
|
```
|
|
779
793
|
|
|
780
794
|
The package is also the source of the optional Herdr plugin: the extension offers to link the trusted
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# pi-daddy work-v4 contract — candidate
|
|
2
2
|
|
|
3
3
|
**Opt-in source candidate, not production acceptance integration.** At release preparation on 2026-09-11,
|
|
4
|
-
the package version
|
|
4
|
+
the package version is staged as 0.25.0; consult npm and GitHub Releases for current publication status.
|
|
5
5
|
This directory declares the versioned package artifacts; their presence does not establish compiled exports,
|
|
6
6
|
installed-package behavior, task acceptance or qualification.
|
|
7
7
|
See [SPEC](../../../../../docs/SPEC.md#opt-in-work-v4-evidence-candidate) and
|
package/dist/cli.d.ts
CHANGED
|
@@ -13,9 +13,11 @@
|
|
|
13
13
|
* was accepted in silence — the exact failure the check's own comment says it prevents.
|
|
14
14
|
*/
|
|
15
15
|
export interface ParsedArgs {
|
|
16
|
-
command: "init" | "help" | "version";
|
|
16
|
+
command: "init" | "work-add" | "help" | "version";
|
|
17
17
|
dir?: string;
|
|
18
18
|
force: boolean;
|
|
19
|
+
id?: string;
|
|
20
|
+
outcome?: string;
|
|
19
21
|
/** Non-empty means refuse: argv said something this program does not understand. */
|
|
20
22
|
errors: string[];
|
|
21
23
|
}
|
package/dist/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;GAYG;
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;GAYG;AA6BH,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,CAAC;IAClD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,OAAO,CAAC;IACf,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oFAAoF;IACpF,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,UAAU,CAqDpD;AAwJD,wBAAsB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAyC1D"}
|
package/dist/cli.js
CHANGED
|
@@ -20,11 +20,14 @@ import { UnsafeGrantError } from "./grant-env.js";
|
|
|
20
20
|
import { applyInit, countDeclaring, planInit } from "./init.js";
|
|
21
21
|
import { registeredWorkspaceIds } from "./workspace.js";
|
|
22
22
|
import { discoverSkillPackages, skillPackageRoots } from "./skill-packages.js";
|
|
23
|
+
import { declareWork } from "./work-command.js";
|
|
23
24
|
const USAGE = `pi-daddy — capability governance for pi sub-agents
|
|
24
25
|
|
|
25
26
|
Usage:
|
|
26
27
|
pi-daddy init [--force] [--dir <path>] scaffold .pi/skills/ and .pi/grants.env from installed
|
|
27
28
|
packages that declare skills (package.json "pi": {"skills": …})
|
|
29
|
+
pi-daddy work add --id <id> --outcome <text> [--dir <path>]
|
|
30
|
+
declare one current obligation for ordinary delegation
|
|
28
31
|
pi-daddy --help | --version
|
|
29
32
|
|
|
30
33
|
init copies each declared SKILL.md into .pi/skills/ and writes a grant naming exactly what those files
|
|
@@ -49,17 +52,40 @@ export function parseArgs(argv) {
|
|
|
49
52
|
return { command: "help", force: false, errors: [] };
|
|
50
53
|
if (args.includes("--version") || args.includes("-v"))
|
|
51
54
|
return { command: "version", force: false, errors: [] };
|
|
52
|
-
const [command, ...
|
|
53
|
-
if (command !== "init")
|
|
55
|
+
const [command, ...tail] = args;
|
|
56
|
+
if (command !== "init" && command !== "work")
|
|
54
57
|
return { command: "help", force: false, errors: [`unknown command "${command}"`] };
|
|
58
|
+
const work = command === "work";
|
|
59
|
+
const rest = work && tail[0] === "add" ? tail.slice(1) : tail;
|
|
60
|
+
if (work && tail[0] !== "add")
|
|
61
|
+
return { command: "work-add", force: false, errors: ["work needs subcommand add"] };
|
|
55
62
|
const errors = [];
|
|
56
63
|
let dir;
|
|
57
64
|
let force = false;
|
|
65
|
+
let id, outcome;
|
|
58
66
|
for (let i = 0; i < rest.length; i += 1) {
|
|
59
67
|
const arg = rest[i];
|
|
60
|
-
if (arg === "--force") {
|
|
68
|
+
if (arg === "--force" && !work) {
|
|
61
69
|
force = true;
|
|
62
70
|
}
|
|
71
|
+
else if (arg === "--id" && work) {
|
|
72
|
+
const value = rest[i + 1];
|
|
73
|
+
if (value === undefined || value.startsWith("-"))
|
|
74
|
+
errors.push("--id needs a value");
|
|
75
|
+
else {
|
|
76
|
+
id = value;
|
|
77
|
+
i += 1;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
else if (arg === "--outcome" && work) {
|
|
81
|
+
const value = rest[i + 1];
|
|
82
|
+
if (value === undefined || value.startsWith("-"))
|
|
83
|
+
errors.push("--outcome needs text");
|
|
84
|
+
else {
|
|
85
|
+
outcome = value;
|
|
86
|
+
i += 1;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
63
89
|
else if (arg === "--dir") {
|
|
64
90
|
const value = rest[i + 1];
|
|
65
91
|
// A flag is not a path. Without this, `--dir --force` consumed the flag as the directory AND left
|
|
@@ -80,6 +106,13 @@ export function parseArgs(argv) {
|
|
|
80
106
|
errors.push(`unknown option ${arg}`);
|
|
81
107
|
}
|
|
82
108
|
}
|
|
109
|
+
if (work) {
|
|
110
|
+
if (!id && !errors.some(error => error.startsWith("--id")))
|
|
111
|
+
errors.push("--id needs a value");
|
|
112
|
+
if (!outcome && !errors.some(error => error.startsWith("--outcome")))
|
|
113
|
+
errors.push("--outcome needs text");
|
|
114
|
+
return { command: "work-add", force: false, errors, ...(id ? { id } : {}), ...(outcome ? { outcome } : {}), ...(dir ? { dir } : {}) };
|
|
115
|
+
}
|
|
83
116
|
return { command: "init", dir, force, errors };
|
|
84
117
|
}
|
|
85
118
|
/** Report a plan and what came of applying it. Returns the process exit code. */
|
|
@@ -225,6 +258,19 @@ export async function main(argv) {
|
|
|
225
258
|
console.log(USAGE);
|
|
226
259
|
return 0;
|
|
227
260
|
}
|
|
261
|
+
if (parsed.command === "work-add") {
|
|
262
|
+
const declared = await declareWork({
|
|
263
|
+
cwd: resolvePath(parsed.dir ?? process.cwd()),
|
|
264
|
+
id: parsed.id,
|
|
265
|
+
outcome: parsed.outcome,
|
|
266
|
+
});
|
|
267
|
+
console.log(`pi-daddy work: declared ${declared.id}\n` +
|
|
268
|
+
` ledger ${declared.ledgerPath}\n` +
|
|
269
|
+
` selection ${declared.statePath}\n\n` +
|
|
270
|
+
`Ordinary governed delegations from this project will record attempts after the Pi extension loads it.\n` +
|
|
271
|
+
`Run /reload in an existing Pi session, then /grants dashboard. Runtime success is not acceptance.`);
|
|
272
|
+
return 0;
|
|
273
|
+
}
|
|
228
274
|
// ABSOLUTE, always. `readSkill` compares a resolved entry against the package directory, and a relative
|
|
229
275
|
// `--dir` made that comparison false for every entry: every declared skill of every package was reported
|
|
230
276
|
// "declared but unreadable", nothing was copied, a degenerate grants.env was written anyway, and the exit
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
import { type DashboardHostRequest } from "./dashboard-host.ts";
|
|
2
|
+
import type { DashboardHarness } from "./dashboard-host-contract.ts";
|
|
3
|
+
import { type DeclaredWorkState } from "./work-command.ts";
|
|
4
|
+
import { type OrdinaryChildren } from "./ordinary-children.ts";
|
|
5
|
+
import { type IntentPriority, type IntentSelection } from "./intent-control.ts";
|
|
6
|
+
import { type WorkRevisionEvent, type WorkSnapshotEvent } from "./work-ledger.ts";
|
|
7
|
+
export interface DailyIntentAction {
|
|
8
|
+
key: string;
|
|
9
|
+
label: string;
|
|
10
|
+
action: "revise-scope" | "reprioritize" | "select-alternative";
|
|
11
|
+
fromSelection: IntentSelection;
|
|
12
|
+
events: (WorkRevisionEvent | WorkSnapshotEvent)[];
|
|
13
|
+
selection: IntentSelection;
|
|
14
|
+
priorities: IntentPriority[];
|
|
15
|
+
}
|
|
16
|
+
export interface DailyDashboardHostInput {
|
|
17
|
+
id: string;
|
|
18
|
+
cwd: string;
|
|
19
|
+
directory: string;
|
|
20
|
+
socketPath?: string;
|
|
21
|
+
declared: DeclaredWorkState;
|
|
22
|
+
ordinary: OrdinaryChildren;
|
|
23
|
+
harness: DashboardHarness;
|
|
24
|
+
author: string;
|
|
25
|
+
priorities?: IntentPriority[];
|
|
26
|
+
intentActions?: DailyIntentAction[];
|
|
27
|
+
presence?: () => {
|
|
28
|
+
present: boolean;
|
|
29
|
+
closing: boolean;
|
|
30
|
+
evidenceDigest: string;
|
|
31
|
+
expiresAt: number;
|
|
32
|
+
} | null;
|
|
33
|
+
onDeclaredWorkChanged?: (state: DeclaredWorkState) => void | Promise<void>;
|
|
34
|
+
}
|
|
35
|
+
/** Recorded P01 snapshots become labelled proposals; choosing a label still traverses intent validation and exact host/CAS authority. */
|
|
36
|
+
export declare function discoverDailyIntentActions(text: string, selection: IntentSelection, priorities: readonly IntentPriority[]): DailyIntentAction[];
|
|
37
|
+
/** One explicitly started, process-owned daily host. No authority, controller or prior host is recovered from disk. */
|
|
38
|
+
export declare function startDailyDashboardHost(input: DailyDashboardHostInput): Promise<Readonly<{
|
|
39
|
+
host: Readonly<{
|
|
40
|
+
hostDigest: string;
|
|
41
|
+
selectionDigest: string;
|
|
42
|
+
frame(): Promise<{
|
|
43
|
+
version: string;
|
|
44
|
+
hostDigest: string;
|
|
45
|
+
selectionDigest: string;
|
|
46
|
+
selectionState: string;
|
|
47
|
+
tip: string;
|
|
48
|
+
source: unknown;
|
|
49
|
+
controls: unknown;
|
|
50
|
+
learning: unknown;
|
|
51
|
+
debrief: unknown;
|
|
52
|
+
attention: {
|
|
53
|
+
policyId: string;
|
|
54
|
+
attentionUsed: number;
|
|
55
|
+
tip: string;
|
|
56
|
+
grantExpansion: false;
|
|
57
|
+
};
|
|
58
|
+
error: string | null;
|
|
59
|
+
actions: {
|
|
60
|
+
key: string;
|
|
61
|
+
label: string;
|
|
62
|
+
operation: string;
|
|
63
|
+
}[];
|
|
64
|
+
requests: Record<string, unknown>[];
|
|
65
|
+
control: string;
|
|
66
|
+
acknowledgement: string;
|
|
67
|
+
identity: string;
|
|
68
|
+
activeBranch: null;
|
|
69
|
+
acceptance: string;
|
|
70
|
+
freshness: string;
|
|
71
|
+
workerInteractions: number;
|
|
72
|
+
}>;
|
|
73
|
+
reconcile: () => Promise<{
|
|
74
|
+
version: string;
|
|
75
|
+
hostDigest: string;
|
|
76
|
+
selectionDigest: string;
|
|
77
|
+
selectionState: string;
|
|
78
|
+
tip: string;
|
|
79
|
+
source: unknown;
|
|
80
|
+
controls: unknown;
|
|
81
|
+
learning: unknown;
|
|
82
|
+
debrief: unknown;
|
|
83
|
+
attention: {
|
|
84
|
+
policyId: string;
|
|
85
|
+
attentionUsed: number;
|
|
86
|
+
tip: string;
|
|
87
|
+
grantExpansion: false;
|
|
88
|
+
};
|
|
89
|
+
error: string | null;
|
|
90
|
+
actions: {
|
|
91
|
+
key: string;
|
|
92
|
+
label: string;
|
|
93
|
+
operation: string;
|
|
94
|
+
}[];
|
|
95
|
+
requests: Record<string, unknown>[];
|
|
96
|
+
control: string;
|
|
97
|
+
acknowledgement: string;
|
|
98
|
+
identity: string;
|
|
99
|
+
activeBranch: null;
|
|
100
|
+
acceptance: string;
|
|
101
|
+
freshness: string;
|
|
102
|
+
workerInteractions: number;
|
|
103
|
+
}>;
|
|
104
|
+
humanAction(key: string): Promise<{
|
|
105
|
+
state: string;
|
|
106
|
+
result?: undefined;
|
|
107
|
+
} | {
|
|
108
|
+
state: string;
|
|
109
|
+
result: unknown;
|
|
110
|
+
}>;
|
|
111
|
+
action(input: DashboardHostRequest): Promise<{
|
|
112
|
+
state: string;
|
|
113
|
+
result?: undefined;
|
|
114
|
+
} | {
|
|
115
|
+
state: string;
|
|
116
|
+
result: unknown;
|
|
117
|
+
}>;
|
|
118
|
+
}>;
|
|
119
|
+
socketPath: string;
|
|
120
|
+
directory: string;
|
|
121
|
+
close(): Promise<void>;
|
|
122
|
+
}>>;
|
|
123
|
+
//# sourceMappingURL=daily-dashboard-host.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"daily-dashboard-host.d.ts","sourceRoot":"","sources":["../src/daily-dashboard-host.ts"],"names":[],"mappings":"AAGA,OAAO,EAA+H,KAAK,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC7L,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAKrE,OAAO,EAAsB,KAAK,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC/E,OAAO,EAAoD,KAAK,gBAAgB,EAAuB,MAAM,wBAAwB,CAAC;AAGtI,OAAO,EAAiD,KAAK,cAAc,EAAsB,KAAK,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACnJ,OAAO,EAAuB,KAAK,iBAAiB,EAAE,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAGvG,MAAM,WAAW,iBAAiB;IAAE,GAAG,EAAC,MAAM,CAAC;IAAA,KAAK,EAAC,MAAM,CAAC;IAAA,MAAM,EAAC,cAAc,GAAC,cAAc,GAAC,oBAAoB,CAAC;IAAA,aAAa,EAAC,eAAe,CAAC;IAAA,MAAM,EAAC,CAAC,iBAAiB,GAAC,iBAAiB,CAAC,EAAE,CAAC;IAAA,SAAS,EAAC,eAAe,CAAC;IAAA,UAAU,EAAC,cAAc,EAAE,CAAA;CAAC;AACzP,MAAM,WAAW,uBAAuB;IAAE,EAAE,EAAC,MAAM,CAAC;IAAA,GAAG,EAAC,MAAM,CAAC;IAAA,SAAS,EAAC,MAAM,CAAC;IAAA,UAAU,CAAC,EAAC,MAAM,CAAC;IAAA,QAAQ,EAAC,iBAAiB,CAAC;IAAA,QAAQ,EAAC,gBAAgB,CAAC;IAAA,OAAO,EAAC,gBAAgB,CAAC;IAAA,MAAM,EAAC,MAAM,CAAC;IAAA,UAAU,CAAC,EAAC,cAAc,EAAE,CAAC;IAAA,aAAa,CAAC,EAAC,iBAAiB,EAAE,CAAC;IAAA,QAAQ,CAAC,EAAC,MAAI;QAAC,OAAO,EAAC,OAAO,CAAC;QAAA,OAAO,EAAC,OAAO,CAAC;QAAA,cAAc,EAAC,MAAM,CAAC;QAAA,SAAS,EAAC,MAAM,CAAA;KAAC,GAAC,IAAI,CAAC;IAAA,qBAAqB,CAAC,EAAC,CAAC,KAAK,EAAC,iBAAiB,KAAG,IAAI,GAAC,OAAO,CAAC,IAAI,CAAC,CAAA;CAAC;AAIha,yIAAyI;AACzI,wBAAgB,0BAA0B,CAAC,IAAI,EAAC,MAAM,EAAC,SAAS,EAAC,eAAe,EAAC,UAAU,EAAC,SAAS,cAAc,EAAE,GAAE,iBAAiB,EAAE,CAazI;AAED,uHAAuH;AACvH,wBAAsB,uBAAuB,CAAC,KAAK,EAAC,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAgD1E"}
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
import { createHash, randomUUID } from "node:crypto";
|
|
2
|
+
import { mkdir, readFile, rename, rm, writeFile } from "node:fs/promises";
|
|
3
|
+
import { isAbsolute, resolve, join } from "node:path";
|
|
4
|
+
import { createDashboardHost, dashboardHostDigest, dashboardHostRequestDigest } from "./dashboard-host.js";
|
|
5
|
+
import { loadedDashboardHarnessDigest } from "./dashboard-harness.js";
|
|
6
|
+
import { createIntentBudget, openResourceBudget, resourceBindingDigest } from "./resource-budget.js";
|
|
7
|
+
import { dispatchRequestDigest } from "./dispatch-control.js";
|
|
8
|
+
import { serveDashboardHost } from "./dashboard-host-transport.js";
|
|
9
|
+
import { rebindDeclaredWork } from "./work-command.js";
|
|
10
|
+
import { ordinaryCancellation, ordinaryCancellationDigest } from "./ordinary-children.js";
|
|
11
|
+
import { dataDigest } from "./debrief-contract.js";
|
|
12
|
+
import { bindWorkIntent } from "./intent-application.js";
|
|
13
|
+
import { intentKey, intentRequest, intentRequestDigest } from "./intent-control.js";
|
|
14
|
+
import { parseWorkLedgerText } from "./work-ledger.js";
|
|
15
|
+
import { resolveWorkSnapshotText } from "./work-ledger-snapshot.js";
|
|
16
|
+
const idPattern = /^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$/;
|
|
17
|
+
const hash = (value) => createHash("sha256").update(value).digest("hex");
|
|
18
|
+
const same = (a, b) => intentKey(a) === intentKey(b);
|
|
19
|
+
/** Recorded P01 snapshots become labelled proposals; choosing a label still traverses intent validation and exact host/CAS authority. */
|
|
20
|
+
export function discoverDailyIntentActions(text, selection, priorities) {
|
|
21
|
+
const parsed = parseWorkLedgerText(text);
|
|
22
|
+
if (!parsed.complete || parsed.events.length > 512)
|
|
23
|
+
throw Error("bounded complete recorded proposal ledger required");
|
|
24
|
+
const label = (value) => value.length <= 80 ? value : `${value.slice(0, 67)}…${hash(value).slice(0, 12)}`;
|
|
25
|
+
const current = resolveWorkSnapshotText(text, selection);
|
|
26
|
+
if (current.scopeState !== "valid" || !current.scope || !current.snapshot)
|
|
27
|
+
throw Error("current declared work unavailable");
|
|
28
|
+
const actions = [];
|
|
29
|
+
for (const priority of priorities.slice(1)) {
|
|
30
|
+
const ordered = [priority, ...priorities.filter(x => !same(x.obligation, priority.obligation))].map((x, rank) => ({ ...x, rank }));
|
|
31
|
+
actions.push({ key: `priority-${hash(intentKey(priority.obligation)).slice(0, 12)}`, label: `Put ${label(priority.obligation.id)} first`, action: "reprioritize", fromSelection: selection, events: [], selection, priorities: ordered });
|
|
32
|
+
}
|
|
33
|
+
for (const event of parsed.events) {
|
|
34
|
+
if (event.event !== "work_snapshot")
|
|
35
|
+
continue;
|
|
36
|
+
const candidate = { snapshot: { id: event.payload.snapshot.snapshotId, digest: event.payload.snapshot.digest }, event: { eventId: event.eventId, digest: event.digest } };
|
|
37
|
+
if (same(candidate, selection))
|
|
38
|
+
continue;
|
|
39
|
+
const next = resolveWorkSnapshotText(text, candidate);
|
|
40
|
+
if (next.scopeState !== "valid" || !next.scope || !next.snapshot || next.snapshot.bindings.length > 32)
|
|
41
|
+
continue;
|
|
42
|
+
const action = next.scope.digest === current.scope.digest ? "select-alternative" : next.scope.predecessor && same(next.scope.predecessor, { kind: current.scope.kind, id: current.scope.id, revision: current.scope.revision, digest: current.scope.digest }) ? "revise-scope" : null;
|
|
43
|
+
if (!action)
|
|
44
|
+
continue;
|
|
45
|
+
actions.push({ key: `${action === "revise-scope" ? "scope" : "alternative"}-${hash(intentKey(candidate)).slice(0, 12)}`, label: `Select recorded ${action === "revise-scope" ? "scope" : "alternative"} ${label(event.payload.snapshot.snapshotId)}`, action, fromSelection: selection, events: [], selection: candidate, priorities: next.snapshot.bindings.map((b, rank) => ({ obligation: b.obligation, rank })) });
|
|
46
|
+
}
|
|
47
|
+
return actions.sort((a, b) => a.key.localeCompare(b.key)).slice(0, 8);
|
|
48
|
+
}
|
|
49
|
+
/** One explicitly started, process-owned daily host. No authority, controller or prior host is recovered from disk. */
|
|
50
|
+
export async function startDailyDashboardHost(input) {
|
|
51
|
+
if (!idPattern.test(input.id) || !isAbsolute(input.cwd) || resolve(input.cwd) !== input.cwd || !isAbsolute(input.directory) || resolve(input.directory) !== input.directory || !input.author.trim() || input.author.length > 256)
|
|
52
|
+
throw Error("explicit bounded daily host configuration required");
|
|
53
|
+
const harnessDigest = loadedDashboardHarnessDigest(input.harness);
|
|
54
|
+
if (!harnessDigest)
|
|
55
|
+
throw Error("loaded skill-harness bridge required");
|
|
56
|
+
if (input.declared.ledgerPath !== join(input.cwd, ".pi", "work.jsonl"))
|
|
57
|
+
throw Error("current declared work must belong to this host project");
|
|
58
|
+
await mkdir(input.directory, { mode: 0o700 });
|
|
59
|
+
const archiveRoot = join(input.directory, "archive");
|
|
60
|
+
await mkdir(archiveRoot, { mode: 0o700 });
|
|
61
|
+
const reference = input.harness.retainArchiveSource(archiveRoot, { sourceId: `host-${input.id}-bootstrap`, parser: { id: "daily-host-bootstrap", version: "1" }, retention: "exact", bytes: Buffer.from("explicit daily host bootstrap") });
|
|
62
|
+
const component = { kind: "detector", id: "coverage_gap", version: "work-signals-v1:declared-work-v1", population: `daily:${input.id}` };
|
|
63
|
+
const trustInput = { archiveRoot, component, seed: hash(`daily-host\0${input.id}`), maxUnflagged: 0, cohort: [{ incidentId: "bootstrap", manifestId: reference.manifestId, flagged: true, split: "calibration" }], exposure: null };
|
|
64
|
+
const trustPolicyId = input.harness.trustPolicyDigest(trustInput), trustDirectory = join(input.directory, "trust");
|
|
65
|
+
input.harness.createTrustLifecycle(trustDirectory, trustInput, [trustPolicyId]);
|
|
66
|
+
const workRelative = "work.jsonl", factsRelative = "facts.jsonl", workMirror = join(input.directory, workRelative);
|
|
67
|
+
await writeFile(workMirror, await readFile(input.declared.ledgerPath), { mode: 0o600, flag: "wx" });
|
|
68
|
+
const refreshWork = async () => { const temporary = `${workMirror}.${process.pid}.${randomUUID()}.tmp`; try {
|
|
69
|
+
await writeFile(temporary, await readFile(input.declared.ledgerPath), { mode: 0o600, flag: "wx" });
|
|
70
|
+
await rename(temporary, workMirror);
|
|
71
|
+
}
|
|
72
|
+
finally {
|
|
73
|
+
await rm(temporary, { force: true });
|
|
74
|
+
} };
|
|
75
|
+
const facts = { scopeDigest: input.declared.selectedSnapshot.snapshot.digest, version: "declared-work-v1", population: `daily:${input.id}`, expectedWaits: [], checkpoints: [], violations: [], priorAccepted: [] };
|
|
76
|
+
await writeFile(join(input.directory, factsRelative), JSON.stringify(facts) + "\n", { mode: 0o600, flag: "wx" });
|
|
77
|
+
const policy = { version: "archive-policy-v2", id: `daily-${input.id}`, revision: "1", sourceRoot: input.directory, archiveRoot, maxBytes: 8 * 1024 * 1024, retention: "exact", expiresAt: new Date(Date.now() + 24 * 60 * 60 * 1000).toISOString(), sources: [{ id: "work", path: workRelative, parser: { id: "pi-daddy-work-ledger", version: "4" }, contentPolicy: "manifest-only" }, { id: "facts", path: factsRelative, parser: { id: "pi-daddy-work-signal-facts", version: "1" }, contentPolicy: "manifest-only" }] };
|
|
78
|
+
const policyPath = join(input.directory, "archive-policy.json"), policyBytes = JSON.stringify(policy);
|
|
79
|
+
await writeFile(policyPath, policyBytes, { mode: 0o600, flag: "wx" });
|
|
80
|
+
const authorityDigest = dataDigest({ kind: "daily-dashboard-host", id: input.id, cwd: input.cwd }), initialPriorities = input.priorities ?? [{ obligation: input.declared.obligation, rank: 0 }];
|
|
81
|
+
const workIntent = await bindWorkIntent({ path: input.declared.ledgerPath, grantLedgerPath: input.declared.grantLedgerPath, selection: input.declared.selectedSnapshot, priorities: initialPriorities });
|
|
82
|
+
const budget = await createIntentBudget({ directory: join(input.directory, "budget"), authorityDigest, limits: { maxAttempts: 6, maxInputBytes: 65536, maxConcurrent: 3 } }, workIntent);
|
|
83
|
+
const config = { version: "producer-dashboard-host-v1", trustDirectory, trustPolicyId, archiveRoot, scope: `daily:${input.id}`, author: input.author, policyPath, policySha256: hash(policyBytes), sources: [{ id: "work", kind: "work" }, { id: "facts", kind: "facts" }], selection: input.declared.selectedSnapshot, cases: null, blind: null, budgetDigest: resourceBindingDigest(budget), experimentDigest: null, harnessArtifactDigest: harnessDigest, ordinaryDigest: input.ordinary.bindingDigest };
|
|
84
|
+
const proposals = input.intentActions ?? [];
|
|
85
|
+
if (proposals.length > 8 || new Set(proposals.map(x => x.key)).size !== proposals.length || proposals.some(x => !idPattern.test(x.key) || typeof x.label !== "string" || !x.label.trim() || Buffer.byteLength(x.label) > 120))
|
|
86
|
+
throw Error("bounded friendly intent actions required");
|
|
87
|
+
const requestDigests = new Set(), dispatchDigests = new Set(), ordinaryDigests = new Set();
|
|
88
|
+
let host, factsResultManifest = null, workSelection = input.declared.selectedSnapshot, declaredState = input.declared, reboundSnapshotId = null;
|
|
89
|
+
const authority = () => ({ hostDigests: [dashboardHostDigest(config)], requestDigests: [...requestDigests], workContext: { selectedSnapshot: workSelection, authority: null }, dispatch: { authorityDigest, requestDigests: [...dispatchDigests] }, experiment: null, ordinary: { bindingDigest: input.ordinary.bindingDigest, requestDigests: [...ordinaryDigests] } });
|
|
90
|
+
const request = (context, operation, payload, requestId) => ({ version: "1.0", requestId, hostDigest: context.hostDigest, selectionDigest: context.selectionDigest, expectedTip: context.tip, operation, payload });
|
|
91
|
+
host = createDashboardHost({ harness: input.harness, config, budget, ordinary: input.ordinary, authority, beforeObservation: sourceId => sourceId === "work" ? refreshWork() : Promise.resolve(), humanActions: async (context) => {
|
|
92
|
+
const state = await openResourceBudget(budget).controls(null).inspect(), action = state.paused ? "resume-dispatch" : "pause-dispatch", key = state.paused ? "resume-dispatch" : "pause-new-dispatch";
|
|
93
|
+
const native = { version: "1.0", requestId: `${action}:${state.revision}`, bindingDigest: config.budgetDigest, expectedRevision: state.revision, action, targetExecutionId: null };
|
|
94
|
+
dispatchDigests.add(dispatchRequestDigest(native));
|
|
95
|
+
const hostRequest = request(context, "dispatch", native, `host-${action}:${state.revision}`);
|
|
96
|
+
requestDigests.add(dashboardHostRequestDigest(hostRequest));
|
|
97
|
+
const previous = context.observations.find(x => x.sourceId === "work")?.checkpointId ?? null, refresh = request(context, "observe", { sourceId: "work", previousCheckpointId: previous, facts: context.observations.find(x => x.sourceId === "facts")?.checkpointId ? factsResultManifest : null }, `refresh-work:${state.revision}:${context.tip.slice(0, 12)}`);
|
|
98
|
+
requestDigests.add(dashboardHostRequestDigest(refresh));
|
|
99
|
+
const intentState = await openResourceBudget(budget).intentControls(null).inspect(), automatic = discoverDailyIntentActions(await readFile(input.declared.ledgerPath, "utf8"), intentState.selection, intentState.priorities);
|
|
100
|
+
const candidates = [...proposals, ...automatic].filter((p, index, all) => all.findIndex(x => x.key === p.key) === index).filter(p => p.action === "reprioritize" || Boolean(input.onDeclaredWorkChanged)).slice(0, 8);
|
|
101
|
+
const intents = (input.ordinary.quiescent() ? candidates : []).filter(p => intentKey(p.fromSelection) === intentKey(intentState.selection)).map(p => {
|
|
102
|
+
const native = intentRequest({ version: "intent-request-v1", requestId: `${p.key}:${intentState.revision}`, bindingDigest: config.budgetDigest, expectedRevision: intentState.revision, expectedSelection: intentState.selection, action: p.action, events: p.events, selection: p.selection, priorities: p.priorities });
|
|
103
|
+
dispatchDigests.add(intentRequestDigest(native));
|
|
104
|
+
const proposed = request(context, "intent", native, `host-intent:${p.key}:${intentState.revision}`);
|
|
105
|
+
requestDigests.add(dashboardHostRequestDigest(proposed));
|
|
106
|
+
return { key: p.key, label: p.label, request: proposed };
|
|
107
|
+
});
|
|
108
|
+
const ordinary = input.ordinary.inspect(), accounting = await openResourceBudget(budget).inspect(), presence = input.presence?.();
|
|
109
|
+
const presentation = [];
|
|
110
|
+
if (context.preparedPresentationDigest) {
|
|
111
|
+
const shown = request(context, "presented", { frameDigest: context.preparedPresentationDigest }, `host-presented:${state.revision}:${context.tip.slice(0, 12)}`);
|
|
112
|
+
requestDigests.add(dashboardHostRequestDigest(shown));
|
|
113
|
+
presentation.push({ key: "acknowledge-case-cards", label: "Acknowledge these case cards are visible", request: shown });
|
|
114
|
+
}
|
|
115
|
+
else if (presence?.present === true && presence.closing === true && presence.expiresAt > Date.now() && state.paused && accounting.active === 0 && !ordinary.children.some(row => row.state === "active")) {
|
|
116
|
+
const present = request(context, "present", { userPresent: true, closing: true, evidenceDigest: presence.evidenceDigest, dispatchRevision: state.revision }, `host-present:${state.revision}:${context.tip.slice(0, 12)}`);
|
|
117
|
+
requestDigests.add(dashboardHostRequestDigest(present));
|
|
118
|
+
presentation.push({ key: "prepare-case-cards", label: "Prepare up to five retained case cards", request: present });
|
|
119
|
+
}
|
|
120
|
+
const cancellations = ordinary.children.filter(row => row.state === "active").sort((a, b) => a.target.executionId.localeCompare(b.target.executionId)).slice(0, 8).map(row => {
|
|
121
|
+
const native = ordinaryCancellation({ version: "ordinary-cancel-v1", requestId: `cancel:${row.target.executionId.slice(5)}`, bindingDigest: input.ordinary.bindingDigest, expectedRevision: ordinary.revision, target: row.target });
|
|
122
|
+
ordinaryDigests.add(ordinaryCancellationDigest(native));
|
|
123
|
+
const cancel = request(context, "ordinary-cancel", native, `host-cancel:${row.target.executionId.slice(5)}:${ordinary.revision}`);
|
|
124
|
+
requestDigests.add(dashboardHostRequestDigest(cancel));
|
|
125
|
+
return { key: `cancel-${row.target.executionId.replace(":", "-")}`, label: `Cancel running attempt ${row.target.executionId}`, request: cancel };
|
|
126
|
+
});
|
|
127
|
+
return [{ key, label: state.paused ? "Resume new governed dispatch" : "Pause new governed dispatch; running children continue", request: hostRequest }, { key: "refresh-current-work", label: reboundSnapshotId ? `Capture rebound declared work; next dispatch uses ${reboundSnapshotId}` : "Capture current declared work and attempts", request: refresh }, ...intents, ...presentation, ...cancellations];
|
|
128
|
+
}, afterIntentApplied: async (selection) => { const rebound = await rebindDeclaredWork(declaredState, selection); declaredState = rebound; workSelection = selection; reboundSnapshotId = selection.snapshot.id; await input.onDeclaredWorkChanged?.(rebound); }, presence: input.presence });
|
|
129
|
+
const before = await host.frame(), observeFacts = request({ hostDigest: host.hostDigest, selectionDigest: before.selectionDigest, tip: before.tip }, "observe", { sourceId: "facts", previousCheckpointId: null, facts: null }, "observe-current-facts");
|
|
130
|
+
requestDigests.add(dashboardHostRequestDigest(observeFacts));
|
|
131
|
+
const factsResult = await host.action(observeFacts);
|
|
132
|
+
factsResultManifest = factsResult.result.sourceManifestId;
|
|
133
|
+
const afterFacts = await host.frame(), observeWork = request({ hostDigest: host.hostDigest, selectionDigest: afterFacts.selectionDigest, tip: afterFacts.tip }, "observe", { sourceId: "work", previousCheckpointId: null, facts: factsResult.result.sourceManifestId }, "observe-current-work");
|
|
134
|
+
requestDigests.add(dashboardHostRequestDigest(observeWork));
|
|
135
|
+
await host.action(observeWork);
|
|
136
|
+
const socketPath = input.socketPath ?? join(input.directory, "dashboard.sock"), server = await serveDashboardHost(socketPath, host);
|
|
137
|
+
let closed = false;
|
|
138
|
+
return Object.freeze({ host, socketPath, directory: input.directory, async close() { if (closed)
|
|
139
|
+
return; closed = true; await server.close(); } });
|
|
140
|
+
}
|
|
141
|
+
//# sourceMappingURL=daily-dashboard-host.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"daily-dashboard-host.js","sourceRoot":"","sources":["../src/daily-dashboard-host.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dashboard-cli.d.ts","sourceRoot":"","sources":["../src/dashboard-cli.ts"],"names":[],"mappings":";AACA,OAAO,EAA0E,KAAK,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEjJ,OAAO,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAO1E,OAAO,EAAE,qBAAqB,EAAoC,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAKjH,OAAO,EAAsB,KAAK,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAGzE,eAAO,MAAM,mBAAmB,6BAA6B,CAAC;AAC9D,OAAO,EAAE,aAAa,IAAI,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAE9E,eAAO,MAAM,iBAAiB,gCAAgC,CAAC;AAC/D,eAAO,MAAM,cAAc,yBAAyB,CAAC;AACrD,eAAO,MAAM,mBAAmB,2BAA2B,CAAC;AAQ5D,eAAO,MAAM,0BAA0B,EAAG,CAAU,CAAC;AACrD,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AACtD,eAAO,MAAM,sBAAsB,gCAAgC,CAAC;AACpE,eAAO,MAAM,iBAAiB,2BAA2B,CAAC;AAC1D,eAAO,MAAM,oBAAoB,MAAM,CAAC;AAExC,MAAM,WAAW,qBAAqB;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,GAAG,CAAC,EAAE,IAAI,CAAC;IACX,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,WAAW,CAAC,EAAE,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC;IACvD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EAAE,mBAAmB,CAAC;CACjC;AACD,wBAAsB,mBAAmB,CAAC,IAAI,EAAC,mBAAmB,EAAC,IAAI,EAAC,MAAM;;;;;;
|
|
1
|
+
{"version":3,"file":"dashboard-cli.d.ts","sourceRoot":"","sources":["../src/dashboard-cli.ts"],"names":[],"mappings":";AACA,OAAO,EAA0E,KAAK,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEjJ,OAAO,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAO1E,OAAO,EAAE,qBAAqB,EAAoC,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAKjH,OAAO,EAAsB,KAAK,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAGzE,eAAO,MAAM,mBAAmB,6BAA6B,CAAC;AAC9D,OAAO,EAAE,aAAa,IAAI,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAE9E,eAAO,MAAM,iBAAiB,gCAAgC,CAAC;AAC/D,eAAO,MAAM,cAAc,yBAAyB,CAAC;AACrD,eAAO,MAAM,mBAAmB,2BAA2B,CAAC;AAQ5D,eAAO,MAAM,0BAA0B,EAAG,CAAU,CAAC;AACrD,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AACtD,eAAO,MAAM,sBAAsB,gCAAgC,CAAC;AACpE,eAAO,MAAM,iBAAiB,2BAA2B,CAAC;AAC1D,eAAO,MAAM,oBAAoB,MAAM,CAAC;AAExC,MAAM,WAAW,qBAAqB;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,GAAG,CAAC,EAAE,IAAI,CAAC;IACX,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,WAAW,CAAC,EAAE,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC;IACvD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EAAE,mBAAmB,CAAC;CACjC;AACD,wBAAsB,mBAAmB,CAAC,IAAI,EAAC,mBAAmB,EAAC,IAAI,EAAC,MAAM;;;;;;GAM7E;AAiCD,wBAAsB,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC,CAuDpF;AA2CD,wBAAsB,YAAY,CAAC,IAAI,WAAwB,EAAE,GAAG,GAAE,MAAM,CAAC,UAAwB,EAAE,IAAI,GAAE;IAAE,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAAC,SAAS,CAAC,EAAC,mBAAmB,CAAA;CAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAuE/L"}
|
package/dist/dashboard-cli.js
CHANGED
|
@@ -37,7 +37,12 @@ export const DASHBOARD_REFRESH_MS = 250;
|
|
|
37
37
|
export async function dashboardHostAction(host, line) {
|
|
38
38
|
if (!isDashboardConnection(host) || Buffer.byteLength(line) > 60000)
|
|
39
39
|
throw Error("genuine bounded dashboard connection required");
|
|
40
|
-
|
|
40
|
+
const command = line.trim();
|
|
41
|
+
if (command.startsWith("{"))
|
|
42
|
+
return host.action(dashboardHostRequest(parseRetentionJson(command, 60000)));
|
|
43
|
+
if (!/^[a-zA-Z0-9:_-]{1,64}$/.test(command))
|
|
44
|
+
throw Error("dashboard action must be a listed command key");
|
|
45
|
+
return host.humanAction(command);
|
|
41
46
|
}
|
|
42
47
|
function shellQuote(value) {
|
|
43
48
|
return `'${value.replaceAll("'", `'"'"'`)}'`;
|
|
@@ -84,9 +89,11 @@ export async function dashboardFrame(options) {
|
|
|
84
89
|
if (options.dailyJson || options.debriefJson)
|
|
85
90
|
return JSON.stringify(view);
|
|
86
91
|
const source = view.source;
|
|
92
|
+
const actions = view.actions ?? [];
|
|
87
93
|
return ["PI-DADDY — CONNECTED HOST (snapshot; identity/acceptance not authenticated)", source?.daily ? renderDailyView(source.daily, options.width) : "Source unavailable; no previous acceptance substituted.",
|
|
88
94
|
view.debrief ? renderDebrief(view.debrief, options.width) : "Debrief deferred/closed. No implicit presentation or steering.",
|
|
89
|
-
`Attention reserved ${view.attention.attentionUsed}/5 (not proof of delivery). Tip ${view.tip}.`,
|
|
95
|
+
`Attention reserved ${view.attention.attentionUsed}/5 (not proof of delivery). Tip ${view.tip}.`,
|
|
96
|
+
actions.length ? `ACTIONS — type one command and Enter\n${actions.map(action => ` ${action.key} — ${action.label}`).join("\n")}` : "ACTIONS — none currently authorized; refresh never acts."].join("\n\n");
|
|
90
97
|
}
|
|
91
98
|
if (options.debrief || options.debriefJson) {
|
|
92
99
|
if (!isDebriefPresenter(options.debrief))
|