pi-daddy 0.25.1 → 0.26.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.
Files changed (40) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/chain.d.ts +2 -0
  3. package/dist/chain.d.ts.map +1 -1
  4. package/dist/chain.js.map +1 -1
  5. package/dist/daily-dashboard-host.js +2 -2
  6. package/dist/daily-dashboard-host.js.map +1 -1
  7. package/dist/dashboard-cli.d.ts +2 -0
  8. package/dist/dashboard-cli.d.ts.map +1 -1
  9. package/dist/dashboard-cli.js +41 -12
  10. package/dist/dashboard-cli.js.map +1 -1
  11. package/dist/dashboard-host.d.ts.map +1 -1
  12. package/dist/dashboard-host.js +24 -6
  13. package/dist/dashboard-host.js.map +1 -1
  14. package/dist/init.d.ts.map +1 -1
  15. package/dist/init.js +20 -1
  16. package/dist/init.js.map +1 -1
  17. package/dist/propagation.d.ts.map +1 -1
  18. package/dist/propagation.js +2 -1
  19. package/dist/propagation.js.map +1 -1
  20. package/dist/work-command.d.ts.map +1 -1
  21. package/dist/work-command.js +13 -3
  22. package/dist/work-command.js.map +1 -1
  23. package/extensions/chain-plan.ts +1 -0
  24. package/extensions/daily-dashboard-session.ts +12 -4
  25. package/extensions/delegate-chain.ts +6 -3
  26. package/extensions/delegation-activation.ts +17 -0
  27. package/extensions/delegation-authority.ts +12 -0
  28. package/extensions/delegation.ts +9 -8
  29. package/extensions/grants.ts +16 -21
  30. package/extensions/reload-environment.ts +63 -0
  31. package/extensions/session-environment.ts +45 -0
  32. package/extensions/session.ts +45 -34
  33. package/package.json +2 -1
  34. package/src/chain.ts +2 -0
  35. package/src/daily-dashboard-host.ts +3 -3
  36. package/src/dashboard-cli.ts +36 -11
  37. package/src/dashboard-host.ts +18 -5
  38. package/src/init.ts +18 -1
  39. package/src/propagation.ts +2 -1
  40. package/src/work-command.ts +10 -3
package/dist/init.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"propagation.d.ts","sourceRoot":"","sources":["../src/propagation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG/C,OAAO,EAAoB,KAAK,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAG3E,eAAO,MAAM,SAAS,oBAAoB,CAAC;AAC3C;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,qBAAqB,CAAC;AAC7C;;;;GAIG;AACH,eAAO,MAAM,aAAa,wBAAwB,CAAC;AACnD,sGAAsG;AACtG,eAAO,MAAM,gBAAgB,2BAA2B,CAAC;AACzD,eAAO,MAAM,SAAS,oBAAoB,CAAC;AAC3C,eAAO,MAAM,aAAa,wBAAwB,CAAC;AACnD,eAAO,MAAM,SAAS,oBAAoB,CAAC;AAC3C,eAAO,MAAM,UAAU,qBAAqB,CAAC;AAC7C,eAAO,MAAM,YAAY,uBAAuB,CAAC;AAEjD;;;;;;GAMG;AACH,eAAO,MAAM,cAAc,0MAUjB,CAAC;AAEX,eAAO,MAAM,SAAS,GAAI,KAAK,MAAM,GAAG,SAAS,KAAG,UAAU,EACW,CAAC;AAkB1E;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,cAAc,CAC5B,oBAAoB,EAAE,UAAU,EAAE,EAClC,aAAa,EAAE,MAAM,EAAE,GAAG,IAAI,GAC7B,UAAU,EAAE,CAgBd;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAO7E;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,2FAA2F;IAC3F,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAED;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,WAAW,CAStG;AAED,sFAAsF;AACtF,eAAO,MAAM,iBAAiB,IAAI,CAAC;AAEnC;;;;;;;;;GASG;AACH,eAAO,MAAM,aAAa,EAAE,UAAU,EAAkB,CAAC;AAEzD;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,UAAU,EAAE,CAGlE;AAED,MAAM,WAAW,aAAa;IAC5B,6EAA6E;IAC7E,QAAQ,EAAE,UAAU,EAAE,CAAC;IACvB,qDAAqD;IACrD,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB;;;;;;OAMG;IACH;;;OAGG;IACH,QAAQ,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;;;;;;;;;GAWG;AACH;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,SAAS,UAAU,EAAE,GAAG,UAAU,EAAE,CAE3E;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAiBrE;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAC3B,SAAS,EAAE,MAAM,CAAC,UAAU,EAC5B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC9B,MAAM,CAAC,UAAU,CAInB;AAED,2GAA2G;AAC3G,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,EAAE,GAAG,IAAI,CAoBlE"}
1
+ {"version":3,"file":"propagation.d.ts","sourceRoot":"","sources":["../src/propagation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG/C,OAAO,EAAoB,KAAK,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAG3E,eAAO,MAAM,SAAS,oBAAoB,CAAC;AAC3C;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,qBAAqB,CAAC;AAC7C;;;;GAIG;AACH,eAAO,MAAM,aAAa,wBAAwB,CAAC;AACnD,sGAAsG;AACtG,eAAO,MAAM,gBAAgB,2BAA2B,CAAC;AACzD,eAAO,MAAM,SAAS,oBAAoB,CAAC;AAC3C,eAAO,MAAM,aAAa,wBAAwB,CAAC;AACnD,eAAO,MAAM,SAAS,oBAAoB,CAAC;AAC3C,eAAO,MAAM,UAAU,qBAAqB,CAAC;AAC7C,eAAO,MAAM,YAAY,uBAAuB,CAAC;AAEjD;;;;;;GAMG;AACH,eAAO,MAAM,cAAc,0MAUjB,CAAC;AAEX,eAAO,MAAM,SAAS,GAAI,KAAK,MAAM,GAAG,SAAS,KAAG,UAAU,EACW,CAAC;AAkB1E;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,cAAc,CAC5B,oBAAoB,EAAE,UAAU,EAAE,EAClC,aAAa,EAAE,MAAM,EAAE,GAAG,IAAI,GAC7B,UAAU,EAAE,CAgBd;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAO7E;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,2FAA2F;IAC3F,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAED;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,WAAW,CAStG;AAED,sFAAsF;AACtF,eAAO,MAAM,iBAAiB,IAAI,CAAC;AAEnC;;;;;;;;;GASG;AACH,eAAO,MAAM,aAAa,EAAE,UAAU,EAAkB,CAAC;AAEzD;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,UAAU,EAAE,CAGlE;AAED,MAAM,WAAW,aAAa;IAC5B,6EAA6E;IAC7E,QAAQ,EAAE,UAAU,EAAE,CAAC;IACvB,qDAAqD;IACrD,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB;;;;;;OAMG;IACH;;;OAGG;IACH,QAAQ,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;;;;;;;;;GAWG;AACH;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,SAAS,UAAU,EAAE,GAAG,UAAU,EAAE,CAE3E;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAkBrE;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAC3B,SAAS,EAAE,MAAM,CAAC,UAAU,EAC5B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC9B,MAAM,CAAC,UAAU,CAInB;AAED,2GAA2G;AAC3G,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,EAAE,GAAG,IAAI,CAoBlE"}
@@ -230,7 +230,8 @@ export function childEnv(input) {
230
230
  // whatever was there before — the parent's own, unclamped `PI_GRANTS_APPROVED` — visible to every child.
231
231
  // `parseList("")` is `[]`, so an empty value reads back exactly as an absent one.
232
232
  env[ENV_APPROVED] = inheritApprovals(input.approved ?? [], inheritable).join(",");
233
- if (input.ledgerPath)
233
+ // Empty is an explicit one-run ledger opt-out and must overwrite a prior publication too.
234
+ if (input.ledgerPath !== undefined)
234
235
  env[ENV_LEDGER] = input.ledgerPath;
235
236
  return env;
236
237
  }
@@ -1 +1 @@
1
- {"version":3,"file":"propagation.js","sourceRoot":"","sources":["../src/propagation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"propagation.js","sourceRoot":"","sources":["../src/propagation.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"work-command.d.ts","sourceRoot":"","sources":["../src/work-command.ts"],"names":[],"mappings":"AAGA,OAAO,EAQL,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,EAE3B,MAAM,kBAAkB,CAAC;AAa1B,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,OAAO,EAAE,2BAA2B,CAAC;IAC9C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,gBAAgB,EAAE,WAAW,CAAC,qBAAqB,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAClF,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;CAC9B;AAID,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;CACjB;AAiBD,wBAAsB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAC,CA6BvG;AAED,wBAAsB,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAoDjG;AAED,6HAA6H;AAC7H,wBAAsB,kBAAkB,CAAC,KAAK,EAAC,UAAU,CAAC,iBAAiB,CAAC,EAAC,gBAAgB,EAAC,WAAW,CAAC,qBAAqB,CAAC,kBAAkB,CAAC,CAAC,GAAE,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAE3L;AAED,MAAM,MAAM,0BAA0B,GAAG,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,EAAE,YAAY,GAAG,QAAQ,GAAG,aAAa,GAAG,kBAAkB,GAAG,qBAAqB,GAAG,SAAS,GAAG,UAAU,CAAC,GAAG;IAC9L,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,GAAG,EAAE,IAAI,CAAC;CACX,CAAC;AAEF,wBAAsB,4BAA4B,CAAC,KAAK,EAAE,UAAU,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,0BAA0B,EAC3H,eAAe,EAAE,qBAAqB,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAmBhE"}
1
+ {"version":3,"file":"work-command.d.ts","sourceRoot":"","sources":["../src/work-command.ts"],"names":[],"mappings":"AAGA,OAAO,EAQL,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,EAE3B,MAAM,kBAAkB,CAAC;AAa1B,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,OAAO,EAAE,2BAA2B,CAAC;IAC9C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,gBAAgB,EAAE,WAAW,CAAC,qBAAqB,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAClF,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;CAC9B;AAID,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;CACjB;AAiBD,wBAAsB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAC,CA6BvG;AAED,wBAAsB,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CA2DjG;AAED,6HAA6H;AAC7H,wBAAsB,kBAAkB,CAAC,KAAK,EAAC,UAAU,CAAC,iBAAiB,CAAC,EAAC,gBAAgB,EAAC,WAAW,CAAC,qBAAqB,CAAC,kBAAkB,CAAC,CAAC,GAAE,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAE3L;AAED,MAAM,MAAM,0BAA0B,GAAG,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,EAAE,YAAY,GAAG,QAAQ,GAAG,aAAa,GAAG,kBAAkB,GAAG,qBAAqB,GAAG,SAAS,GAAG,UAAU,CAAC,GAAG;IAC9L,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,GAAG,EAAE,IAAI,CAAC;CACX,CAAC;AAEF,wBAAsB,4BAA4B,CAAC,KAAK,EAAE,UAAU,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,0BAA0B,EAC3H,eAAe,EAAE,qBAAqB,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAmBhE"}
@@ -1,5 +1,5 @@
1
1
  import { createHash, randomUUID } from "node:crypto";
2
- import { mkdir, readFile, rename, rm, writeFile } from "node:fs/promises";
2
+ import { lstat, mkdir, readFile, rename, rm, writeFile } from "node:fs/promises";
3
3
  import { dirname, isAbsolute, join, resolve } from "node:path";
4
4
  import { appendWorkLedgerEventOnce, buildWorkOccurrenceEvent, buildWorkRevisionEvent, buildWorkSnapshotEvent, parseWorkLedgerText, projectWorkLedger, } from "./work-ledger.js";
5
5
  import { withFileLock } from "./file-lock.js";
@@ -72,8 +72,18 @@ export async function declareWork(input) {
72
72
  if (!ID.test(input.id) || typeof input.outcome !== "string" || !input.outcome.trim())
73
73
  throw new TypeError("work declaration requires an identifier and non-empty outcome");
74
74
  const resolved = paths(input), outcomeDigest = sha256(input.outcome.trim());
75
- await mkdir(dirname(resolved.ledgerPath), { recursive: true, mode: 0o700 });
76
- await mkdir(dirname(resolved.statePath), { recursive: true, mode: 0o700 });
75
+ const projectPi = dirname(resolved.ledgerPath);
76
+ try {
77
+ // Create only a new project control directory as private; never chmod or repurpose an existing one.
78
+ await mkdir(projectPi, { mode: 0o700 });
79
+ }
80
+ catch (error) {
81
+ if (error.code !== "EEXIST")
82
+ throw error;
83
+ const existing = await lstat(projectPi);
84
+ if (!existing.isDirectory() || existing.isSymbolicLink())
85
+ throw Error("existing .pi state is not a directory; it was not followed or changed");
86
+ }
77
87
  return withFileLock(resolved.statePath, "declared work", async () => {
78
88
  const existing = await loadDeclaredWork(resolved.statePath);
79
89
  if (existing) {
@@ -1 +1 @@
1
- {"version":3,"file":"work-command.js","sourceRoot":"","sources":["../src/work-command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"work-command.js","sourceRoot":"","sources":["../src/work-command.ts"],"names":[],"mappings":"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"}
@@ -50,6 +50,7 @@ export async function planChain(
50
50
  agent: step.agent,
51
51
  tools: step.tools,
52
52
  model: step.model,
53
+ thinking: step.thinking,
53
54
  correlation: step.workspace
54
55
  ? { ...(step.correlation ?? {}), workspace_id: step.workspace.workspace_id }
55
56
  : step.correlation,
@@ -1,6 +1,6 @@
1
1
  import { createHash, randomUUID } from "node:crypto";
2
2
  import { homedir } from "node:os";
3
- import { mkdir } from "node:fs/promises";
3
+ import { lstat, mkdir, realpath } from "node:fs/promises";
4
4
  import { join } from "node:path";
5
5
  import { adoptDashboardHarnessBridge } from "../src/dashboard-harness.ts";
6
6
  import { ENV_DASHBOARD_HOST_SOCKET } from "../src/dashboard-host-transport.ts";
@@ -10,7 +10,14 @@ import type { OrdinaryChildren } from "../src/ordinary-children.ts";
10
10
 
11
11
  const BRIDGE=Symbol.for("skill-harness.dashboard-host.v1"),idPattern=/^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$/;
12
12
  export function dailyDashboardPaths(cwd:string,id:string,home=homedir(),uid=process.getuid?.()??0){const key=createHash("sha256").update(`${cwd}\0${id}`).digest("hex");return {directory:join(home,".local","state","pi-daddy","hosts",key.slice(0,16)),socketDirectory:join("/tmp",`pi-daddy-${uid}`),socketPath:join("/tmp",`pi-daddy-${uid}`,`host-${key.slice(0,20)}.sock`)};}
13
- export function createDailyDashboardSession(input:{ordinary:()=>OrdinaryChildren;declared:()=>DeclaredWorkState|undefined;rebind:(state:DeclaredWorkState)=>void;cwd:()=>string;env:Record<string,string|undefined>;author:string}){
13
+ export async function preparePrivateHostRoot(root:string):Promise<void>{
14
+ try { const before=await lstat(root,{bigint:true}); if(before.isSymbolicLink())throw Error("refusing symbolic-link host state root"); }
15
+ catch(error){if((error as NodeJS.ErrnoException).code!=="ENOENT")throw error;await mkdir(root,{recursive:true,mode:0o700});}
16
+ const state=await lstat(root,{bigint:true});
17
+ if(!state.isDirectory()||state.isSymbolicLink()||(state.mode&0o077n)!==0n||state.uid!==BigInt(process.getuid?.()??-1)||await realpath(root)!==root)throw Error("owner-private non-symlink host state root required");
18
+ }
19
+
20
+ export function createDailyDashboardSession(input:{ordinary:()=>OrdinaryChildren;declared:()=>DeclaredWorkState|undefined;rebind:(state:DeclaredWorkState)=>void;cwd:()=>string;env:Record<string,string|undefined>;author:string;home?:string}){
14
21
  let current:null|Awaited<ReturnType<typeof startDailyDashboardHost>>=null,publishedSocket:string|undefined,closing:null|{present:true;closing:true;evidenceDigest:string;expiresAt:number}=null;
15
22
  return Object.freeze({
16
23
  async run(target:string){
@@ -20,9 +27,10 @@ export function createDailyDashboardSession(input:{ordinary:()=>OrdinaryChildren
20
27
  if(target==="closing"){if(!current)throw Error("daily host is not running");const expiresAt=Date.now()+120_000;closing={present:true,closing:true,evidenceDigest:createHash("sha256").update(`${input.cwd()}\0${expiresAt}\0${randomUUID()}`).digest("hex"),expiresAt};return "explicit closing presence recorded for two minutes; pause new dispatch and finish/cancel active attempts, then choose prepare-case-cards in the dashboard. No card is counted as delivered until visibly acknowledged.";}
21
28
  if(!idPattern.test(target))throw Error("usage — /grants host <fresh-id> | closing | stop");if(current)throw Error("daily host already running in this session; use closing or stop");
22
29
  const declared=input.declared();if(!declared)throw Error("declare current work first with pi-daddy work add, then reload");
30
+ const home=input.home??homedir(),paths=dailyDashboardPaths(input.cwd(),target,home),root=join(home,".local","state","pi-daddy","hosts");await preparePrivateHostRoot(root);await mkdir(paths.socketDirectory,{recursive:true,mode:0o700});
31
+ try{await lstat(paths.directory);throw Error(`host ID ${target} already has preserved state; choose a fresh host ID (the existing state was not opened, deleted or reused)`);}catch(error){if((error as NodeJS.ErrnoException).code!=="ENOENT")throw error;}
23
32
  const bridge=(globalThis as Record<PropertyKey,unknown>)[BRIDGE];if(!bridge)throw Error("loaded skill-harness extension bridge unavailable; load the candidate skill-harness extension in this Pi session");
24
- const paths=dailyDashboardPaths(input.cwd(),target);await mkdir(join(homedir(),".local","state","pi-daddy","hosts"),{recursive:true,mode:0o700});await mkdir(paths.socketDirectory,{recursive:true,mode:0o700});
25
- current=await startDailyDashboardHost({id:target,cwd:input.cwd(),directory:paths.directory,socketPath:paths.socketPath,declared,ordinary:input.ordinary(),harness:adoptDashboardHarnessBridge(bridge) as never,author:input.author,presence:()=>closing,onDeclaredWorkChanged:input.rebind});
33
+ try{current=await startDailyDashboardHost({id:target,cwd:input.cwd(),directory:paths.directory,socketPath:paths.socketPath,declared,ordinary:input.ordinary(),harness:adoptDashboardHarnessBridge(bridge) as never,author:input.author,presence:()=>closing,onDeclaredWorkChanged:input.rebind});}catch(error){if((error as NodeJS.ErrnoException).code==="EEXIST")throw Error(`host ID ${target} could not start because state already exists; choose a fresh host ID. Existing state was preserved.`);throw error;}
26
34
  publishedSocket=current.socketPath;input.env[ENV_DASHBOARD_HOST_SOCKET]=publishedSocket;
27
35
  return `daily host started at ${publishedSocket}; current declared work/facts were captured. Run /grants dashboard, then use only its listed pause/resume/refresh/cancel/scope/priority/alternative action keys. Runtime remains unaccepted.`;
28
36
  },
@@ -34,6 +34,7 @@ import { chainApprovalFacts, newChainApprovalAudit, rememberChainApproval } from
34
34
  import { newExecutionId } from "../src/execution-id.ts";
35
35
  import { planChain, type GateRequest } from "./chain-plan.ts";
36
36
  import { preflightModel } from "../src/model-preflight.ts";
37
+ import { assertDelegationAuthority } from "./delegation-authority.ts";
37
38
 
38
39
  /** One chain step is one execution occurrence, however many capability dialogs contributed to its answer. */
39
40
  function mergeGateOutcomes(outcomes: readonly ApprovalOutcome[]): ApprovalOutcome {
@@ -59,9 +60,6 @@ function mergeGateOutcomes(outcomes: readonly ApprovalOutcome[]): ApprovalOutcom
59
60
  }
60
61
 
61
62
  export function registerChainTool(pi: ExtensionAPI, session: GrantsSession): void {
62
- // No `mayDelegate` guard here: `registerDelegationTools` already returns before calling this, so a second check
63
- // was dead code that made the leaf half of a wiring test pass for the wrong reason. The guard lives in one place.
64
-
65
63
  const stepShape = Type.Object({
66
64
  task: Type.String({
67
65
  description:
@@ -71,6 +69,10 @@ export function registerChainTool(pi: ExtensionAPI, session: GrantsSession): voi
71
69
  agent: Type.Optional(Type.String({ description: "Definition to spawn for this step." })),
72
70
  tools: Type.Optional(Type.Array(Type.String(), { description: "Capabilities, when no 'agent' fits." })),
73
71
  model: Type.Optional(Type.String({ description: "Model as provider/id. Defaults to this session's." })),
72
+ thinking: Type.Optional(Type.Union(
73
+ ["off", "minimal", "low", "medium", "high", "xhigh", "max"].map(level => Type.Literal(level)),
74
+ { description: "Requested Pi thinking level; unsupported model/level combinations fail in the child." },
75
+ )),
74
76
  correlation: Type.Optional(correlationShape()),
75
77
  workspace: Type.Optional(Type.Object({
76
78
  workspace_id: Type.String(),
@@ -98,6 +100,7 @@ export function registerChainTool(pi: ExtensionAPI, session: GrantsSession): voi
98
100
  "do not hold. A failed step ABORTS the rest, and you still receive everything that completed.",
99
101
  parameters: params,
100
102
  async execute(_toolCallId, args, signal, onUpdate, ctx) {
103
+ assertDelegationAuthority(session);
101
104
  const steps = args.steps ?? [];
102
105
 
103
106
  // **Every cheap refusal happens before any human is asked.** Yesterday's lesson on the `delegate` path: with
@@ -0,0 +1,17 @@
1
+ import type { ExtensionAPI } from "@earendil-works/pi-coding-agent";
2
+ import type { GrantsSession } from "./session.ts";
3
+
4
+ const DELEGATION_TOOL_NAMES = ["delegate", "delegate_all", "delegate_chain"];
5
+
6
+ function setDelegationActive(pi: ExtensionAPI, enabled: boolean): void {
7
+ const surface = pi as ExtensionAPI & { getActiveTools?: () => string[]; setActiveTools?: (names: string[]) => void };
8
+ if (!surface.getActiveTools || !surface.setActiveTools) return;
9
+ const active = new Set(surface.getActiveTools());
10
+ for (const name of DELEGATION_TOOL_NAMES) enabled ? active.add(name) : active.delete(name);
11
+ surface.setActiveTools([...active]);
12
+ }
13
+
14
+ /** Activate only the delegation tools authorised by the owner-bound session state. */
15
+ export function reconcileActiveDelegationTools(pi: ExtensionAPI, session: GrantsSession): void {
16
+ setDelegationActive(pi, session.mayDelegate);
17
+ }
@@ -0,0 +1,12 @@
1
+ import { GovernanceRefusal, refusal } from "../src/refusals.ts";
2
+ import type { GrantsSession } from "./session.ts";
3
+
4
+ /** Tool definitions may be inspected directly; execution still requires an owner-bound delegation grant. */
5
+ export function assertDelegationAuthority(session: GrantsSession): void {
6
+ if (!session.ownerBound) {
7
+ throw new GovernanceRefusal(refusal("CAPABILITY_ESCALATION", "delegation refused: session ownership is not bound yet"));
8
+ }
9
+ if (!session.mayDelegate) {
10
+ throw new GovernanceRefusal(refusal("CAPABILITY_ESCALATION", "delegation refused: this session does not hold tool:delegate"));
11
+ }
12
+ }
@@ -30,6 +30,7 @@ import { type GrantsSession } from "./session.ts";
30
30
  import { newDelegationOccurrence } from "./execution-occurrence.ts";
31
31
  import { correlationShape as buildCorrelationShape } from "./correlation-shape.ts";
32
32
  import { completePrimary } from "./primary-shadow.ts";
33
+ import { assertDelegationAuthority } from "./delegation-authority.ts";
33
34
 
34
35
  /**
35
36
  * Wire a set of children to pi's partial-result channel — ADR-0032.
@@ -121,14 +122,13 @@ export interface DelegationRegistration {
121
122
 
122
123
 
123
124
  /**
124
- * Register `delegate` and `delegate_all` — but only if this session may delegate.
125
+ * Register delegation definitions at owner-bound session_start.
125
126
  *
126
- * The conditional is the whole of S-5: an unconditionally-registered `delegate` appears in every child's
127
- * ceiling, so a delegator without it was told every single agent type "requires tool:delegate".
127
+ * Pi exposes factory registrations before `bindExtensions()`, so this timing keeps the pre-start surface
128
+ * empty. Owner reconciliation precedes registration and activation, so a holder without `tool:delegate`
129
+ * remains a leaf at every dispatch boundary.
128
130
  */
129
131
  export function registerDelegationTools(pi: ExtensionAPI, session: GrantsSession): DelegationRegistration {
130
- if (!session.mayDelegate) return { refreshSpawnable: () => {} };
131
-
132
132
  /**
133
133
  * Definitions this session is actually authorised to spawn (ADR-0017), for the tool description.
134
134
  *
@@ -142,9 +142,8 @@ export function registerDelegationTools(pi: ExtensionAPI, session: GrantsSession
142
142
  /**
143
143
  * **R-39.** This used to be computed once, right here, and it was always `[]`.
144
144
  *
145
- * `registerDelegationTools` is called synchronously from the extension factory, while
146
- * `session.definitions` is only populated in the `session_start` hook — which fires afterwards. So every
147
- * model in every governed session was told `Available: none.` and did the reasonable thing: it used
145
+ * `registerDelegationTools` runs at `session_start`, before that hook loads definitions. So every model
146
+ * in every governed session was told `Available: none.` and did the reasonable thing: it used
148
147
  * `delegate({tools})`, the path with no operator-authored instructions, no `agent:` prerequisite, no body
149
148
  * digest on the record, and no `always` approval available. **ADR-0017 and ADR-0019 bought expressiveness
150
149
  * the model was structurally prevented from using**, and every dialog was a `<delegate>` dialog again.
@@ -230,6 +229,7 @@ export function registerDelegationTools(pi: ExtensionAPI, session: GrantsSession
230
229
  "sub-agent must itself delegate further; withhold it to make the sub-agent a leaf.",
231
230
  parameters: delegateParams,
232
231
  async execute(_toolCallId, params, signal, onUpdate, ctx) {
232
+ assertDelegationAuthority(session);
233
233
  // ADR-0032: one child, same block. `_onUpdate` was discarded here, so a delegation showed the bare word
234
234
  // `delegate` for up to DEFAULT_TIMEOUT_MS — twenty minutes by default.
235
235
  const progress = progressReporter(session, [params.agent ?? "delegate"], onUpdate as never);
@@ -302,6 +302,7 @@ export function registerDelegationTools(pi: ExtensionAPI, session: GrantsSession
302
302
  "completion=primary with a 1-based primary returns that result while shadows remain owned/accounted.",
303
303
  parameters: delegateAllParams,
304
304
  async execute(_toolCallId, params, signal, onUpdate, ctx) {
305
+ assertDelegationAuthority(session);
305
306
  const children = params.children ?? [],primaryMode=params.completion==="primary";
306
307
  if(primaryMode!==Number.isInteger(params.primary)||primaryMode&&(params.primary!<1||params.primary!>children.length))throw new GovernanceRefusal(refusal("FANOUT_EXCEEDED","primary fan-out requires one in-range 1-based primary"));
307
308
  if(primaryMode&&session.variantRuns.size>=128)throw new GovernanceRefusal(refusal("FANOUT_EXCEEDED","primary/shadow accounting capacity exhausted"));
@@ -38,16 +38,13 @@ import { grantsCommand } from "./grants-command.ts";
38
38
  import { runInit } from "./init-command.ts";
39
39
  import { planWithApprovals } from "./run-delegation.ts";
40
40
  import { createGrantsSession, loadProjectDefinitions, type GrantsSession } from "./session.ts";
41
+ import { bindReloadLifecycle } from "./reload-environment.ts";
42
+ import { reconcileActiveDelegationTools } from "./delegation-activation.ts";
41
43
  import { resolveExecutor } from "./executor-session.ts";
42
44
  import { reportSessionStart } from "./session-report.ts";
43
45
  import { SPAWN_TOOLS, tripwireReason } from "./tripwire.ts";
44
46
  import { reportGrantStoreRefusal } from "./grant-store-refusal.ts";
45
- import {
46
- defaultDashboardPaths,
47
- offerDashboardHandshake,
48
- openDashboardCommand,
49
- } from "../src/dashboard-handshake.ts";
50
-
47
+ import { defaultDashboardPaths, offerDashboardHandshake, openDashboardCommand } from "../src/dashboard-handshake.ts";
51
48
  import { associateOrdinaryHost, ordinaryChildrenFor } from "../src/ordinary-children.ts";
52
49
  import { loadDeclaredWork } from "../src/work-command.ts";
53
50
  import { createDailyDashboardSession } from "./daily-dashboard-session.ts";
@@ -62,7 +59,6 @@ export default function (pi: ExtensionAPI) {
62
59
  return undefined;
63
60
  }
64
61
  })();
65
-
66
62
  const session = createGrantsSession(extensionPath);
67
63
  associateOrdinaryHost(pi,session);
68
64
  const dailyHost=createDailyDashboardSession({ordinary:()=>ordinaryChildrenFor(pi),declared:()=>session.declaredWork,rebind:state=>{session.declaredWork=state;},cwd:()=>session.cwd,env:process.env,author:"local-operator"});
@@ -70,14 +66,20 @@ export default function (pi: ExtensionAPI) {
70
66
  const dashboardPaths = defaultDashboardPaths(
71
67
  process.env.PI_CODING_AGENT_DIR?.trim() || join(homedir(), ".pi", "agent"),
72
68
  );
73
-
74
- // Filled in by `registerDelegationTools` at the bottom of this function. A holder rather than a reordering,
75
- // because the hooks below have to be registered before the tools and both need to call it — the tool
76
- // schemas describe which definitions are spawnable, and nothing knows that until a hook has run (R-39).
69
+ // Definitions are registered only after owner-bound session_start. Until then there is no delegation
70
+ // dispatch surface; afterwards this callback refreshes their model-facing spawnable-definition text.
77
71
  const delegation = { refreshSpawnable: () => {} };
78
72
  const publishedDailyWork: PublishedDailyWork = {};
79
73
 
80
74
  pi.on("session_start", async (_event, ctx) => {
75
+ // Real SDK contexts always supply SessionManager. The fallback keeps lightweight wiring fixtures
76
+ // isolated; it cannot carry state into another extension instance.
77
+ const owner = (ctx as { sessionManager?: object }).sessionManager ?? session;
78
+ const reload = bindReloadLifecycle(owner, session.reloadLifecycle);
79
+ session.reconcileEnvironment(reload.environment, reload.lifecycle);
80
+ session.ownerBound = true;
81
+ delegation.refreshSpawnable = registerDelegationTools(pi, session).refreshSpawnable;
82
+ reconcileActiveDelegationTools(pi, session);
81
83
  session.cwd = ctx.cwd;
82
84
  // A routed child changes cwd. Publishing a relative ledger string unchanged therefore fragments one
83
85
  // execution tree across workspaces. Resolve it once at the root's actual pi cwd; descendants inherit
@@ -250,7 +252,9 @@ export default function (pi: ExtensionAPI) {
250
252
  * `exit` remains the backstop. SIGKILL still orphans panes, exactly as R-62 records, and no signal handler is
251
253
  * installed here for the reason R-62 gives: it would turn pi's "interrupt this turn" into "exit pi".
252
254
  */
253
- pi.on("session_shutdown", async () => { await dailyHost.close().catch(() => undefined); });
255
+ pi.on("session_shutdown", async () => {
256
+ await dailyHost.close().catch(() => undefined);
257
+ });
254
258
 
255
259
  pi.on("agent_settled", async () => {
256
260
  try {
@@ -341,15 +345,6 @@ export default function (pi: ExtensionAPI) {
341
345
  return { block: true, reason };
342
346
  });
343
347
 
344
- // Governed delegation. Unlike the tripwire above this PROVISIONS: the grant is an argument, so the
345
- // orchestrator hands each child exactly the capabilities it should have. Registered only when this
346
- // session may delegate, so withholding `tool:delegate` genuinely makes a session a leaf.
347
- //
348
- // Registration necessarily happens HERE, before any hook has run, so the tools cannot yet know which
349
- // definitions exist — hence `refreshSpawnable`, called from both hooks above once they do. R-39 is what
350
- // happens without it: every model in every governed session is told `Available: none`.
351
- delegation.refreshSpawnable = registerDelegationTools(pi, session).refreshSpawnable;
352
-
353
348
  pi.registerCommand("grants", {
354
349
  ...grantsCommand,
355
350
  // Built per invocation and spelled out field by field, rather than passing the session whole: what a
@@ -0,0 +1,63 @@
1
+ import { GRANT_ENV_KEYS } from "../src/propagation.ts";
2
+
3
+ /** The root baseline and latest child publication for one real Pi session owner. */
4
+ export interface ReloadLifecycle { root: Record<string, string | undefined>; published?: Record<string, string | undefined> }
5
+ type SessionOwner = object;
6
+
7
+ interface ReloadState {
8
+ owners: WeakMap<SessionOwner, ReloadLifecycle>;
9
+ latestChildPublication?: { lifecycle: ReloadLifecycle; environment: Record<string, string | undefined> };
10
+ }
11
+ const RELOAD_STATE = Symbol.for("pi-daddy.reload-environment.v1");
12
+ function state(): ReloadState {
13
+ const global = globalThis as typeof globalThis & { [key: symbol]: ReloadState | undefined };
14
+ return global[RELOAD_STATE] ?? (global[RELOAD_STATE] = { owners: new WeakMap() });
15
+ }
16
+
17
+ function snapshot(): Record<string, string | undefined> {
18
+ return Object.fromEntries(GRANT_ENV_KEYS.map(key => [key, process.env[key]]));
19
+ }
20
+ function same(left: Record<string, string | undefined>, right: Record<string, string | undefined>): boolean {
21
+ return GRANT_ENV_KEYS.every(key => left[key] === right[key]);
22
+ }
23
+ function withRoot(root: Record<string, string | undefined>): NodeJS.ProcessEnv {
24
+ return { ...process.env, ...root };
25
+ }
26
+
27
+ /** Factory-time state is provisional: ExtensionAPI is recreated before the stable session owner is known. */
28
+ export function beginExtensionLifecycle(): { environment: NodeJS.ProcessEnv; lifecycle: ReloadLifecycle } {
29
+ return { environment: process.env, lifecycle: { root: snapshot() } };
30
+ }
31
+
32
+ /**
33
+ * Bind an extension lifecycle to Pi's stable owner at session_start.
34
+ *
35
+ * A matching latest publication is child state from a known owner, not an explicit replacement for this
36
+ * owner. An unmatched environment change is an explicit root replacement for THIS owner only.
37
+ */
38
+ export function bindReloadLifecycle(owner: SessionOwner, provisional: ReloadLifecycle): {
39
+ lifecycle: ReloadLifecycle;
40
+ environment: NodeJS.ProcessEnv;
41
+ } {
42
+ const holder = state();
43
+ const existing = holder.owners.get(owner);
44
+ if (!existing) {
45
+ holder.owners.set(owner, provisional);
46
+ return { lifecycle: provisional, environment: withRoot(provisional.root) };
47
+ }
48
+
49
+ const current = snapshot();
50
+ if (!holder.latestChildPublication || !same(current, holder.latestChildPublication.environment)) {
51
+ // No pi-daddy lifecycle published what is currently in process.env, so this is an explicit change to
52
+ // this owner's root rather than another bound session's child state.
53
+ existing.root = current;
54
+ }
55
+ return { lifecycle: existing, environment: withRoot(existing.root) };
56
+ }
57
+
58
+ /** Publish only parent-level child state, and retain which owner made the process-global publication. */
59
+ export function rememberChildPublication(lifecycle: ReloadLifecycle): void {
60
+ const environment = snapshot();
61
+ lifecycle.published = environment;
62
+ state().latestChildPublication = { lifecycle, environment };
63
+ }
@@ -0,0 +1,45 @@
1
+ import { parseInherited } from "../src/approval.ts";
2
+ import { DELEGATE_CAPABILITY } from "../src/delegate.ts";
3
+ import { budgetFromEnv } from "../src/fanout.ts";
4
+ import { WILDCARD } from "../src/pi-tools.ts";
5
+ import {
6
+ depthConfig, deriveOwnGrant, gatedFromEnv, ENV_APPROVED, ENV_DEPTH, ENV_EXECUTION_ID, ENV_FANOUT,
7
+ ENV_GATED, ENV_GRANT, ENV_LEDGER, ENV_MAX_DEPTH, ENV_PARENT_ID, parseList,
8
+ } from "../src/propagation.ts";
9
+ import { storedGrantSessionState } from "./stored-grant-session.ts";
10
+ import { chooseExecutor, ENV_HERDR } from "../src/executor.ts";
11
+ import { ENV_ALLOW_UNRESOLVED_MODELS } from "../src/model-preflight.ts";
12
+ import type { ReloadLifecycle } from "./reload-environment.ts";
13
+ import type { GrantsSession } from "./session.ts";
14
+
15
+ /** Rebuild every authority-bearing factory input once session_start identifies its real SDK owner. */
16
+ export function reconcileSessionEnvironment(
17
+ session: GrantsSession, environment: NodeJS.ProcessEnv, lifecycle: ReloadLifecycle,
18
+ ): void {
19
+ const grantRaw = environment[ENV_GRANT];
20
+ const stored = storedGrantSessionState(grantRaw, session.storeCwd);
21
+ const bounds = depthConfig(environment[ENV_DEPTH], environment[ENV_MAX_DEPTH]);
22
+ const ledgerRaw = environment[ENV_LEDGER];
23
+ session.ledgerFromEnvironment = ledgerRaw !== undefined;
24
+ session.governed = stored.governed;
25
+ session.inherited = stored.inherited;
26
+ session.depth = bounds.depth;
27
+ session.maxDepth = bounds.maxDepth;
28
+ session.malformedBounds = bounds.malformed;
29
+ session.gated = session.governed ? gatedFromEnv(environment[ENV_GATED]) : parseList(environment[ENV_GATED]);
30
+ session.ledgerPath = ledgerRaw !== undefined ? ledgerRaw : stored.defaultLedger;
31
+ session.executor = chooseExecutor(environment[ENV_HERDR], null);
32
+ session.ownSpawnId = environment[ENV_PARENT_ID]?.trim() || `d${session.depth}`;
33
+ session.ownExecutionId = environment[ENV_EXECUTION_ID]?.trim() || undefined;
34
+ session.fanoutBudget = budgetFromEnv(environment[ENV_FANOUT]);
35
+ session.mayDelegate = !session.governed || session.inherited.includes(DELEGATE_CAPABILITY) || session.inherited.includes(WILDCARD);
36
+ session.allowUnresolvedModels = environment[ENV_ALLOW_UNRESOLVED_MODELS] === "1";
37
+ session.reloadLifecycle = lifecycle;
38
+ session.inheritedApprovals = parseInherited(environment[ENV_APPROVED]);
39
+ session.ownGrant = deriveOwnGrant(session.inherited, null);
40
+ session.observed = false;
41
+ session.observedTools = null;
42
+ session.modelResolutionCache.clear();
43
+ if (stored.refusal) session.grantStoreRefusal = stored.refusal;
44
+ else delete session.grantStoreRefusal;
45
+ }