instar 1.3.614 → 1.3.616

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 (54) hide show
  1. package/dashboard/mandates.js +30 -9
  2. package/dist/commands/server.d.ts.map +1 -1
  3. package/dist/commands/server.js +110 -1
  4. package/dist/commands/server.js.map +1 -1
  5. package/dist/config/ConfigDefaults.d.ts.map +1 -1
  6. package/dist/config/ConfigDefaults.js +27 -0
  7. package/dist/config/ConfigDefaults.js.map +1 -1
  8. package/dist/coordination/AccountFollowMeMandateDelivery.d.ts +64 -0
  9. package/dist/coordination/AccountFollowMeMandateDelivery.d.ts.map +1 -0
  10. package/dist/coordination/AccountFollowMeMandateDelivery.js +92 -0
  11. package/dist/coordination/AccountFollowMeMandateDelivery.js.map +1 -0
  12. package/dist/coordination/DeliveredMandateStore.d.ts +67 -0
  13. package/dist/coordination/DeliveredMandateStore.d.ts.map +1 -0
  14. package/dist/coordination/DeliveredMandateStore.js +80 -0
  15. package/dist/coordination/DeliveredMandateStore.js.map +1 -0
  16. package/dist/core/AccountFollowMeRevocationStore.d.ts +34 -0
  17. package/dist/core/AccountFollowMeRevocationStore.d.ts.map +1 -0
  18. package/dist/core/AccountFollowMeRevocationStore.js +76 -0
  19. package/dist/core/AccountFollowMeRevocationStore.js.map +1 -0
  20. package/dist/core/AccountFollowMeSpendSlice.d.ts +197 -0
  21. package/dist/core/AccountFollowMeSpendSlice.d.ts.map +1 -0
  22. package/dist/core/AccountFollowMeSpendSlice.js +196 -0
  23. package/dist/core/AccountFollowMeSpendSlice.js.map +1 -0
  24. package/dist/core/AnthropicSubscriptionRouter.d.ts +28 -0
  25. package/dist/core/AnthropicSubscriptionRouter.d.ts.map +1 -1
  26. package/dist/core/AnthropicSubscriptionRouter.js +17 -0
  27. package/dist/core/AnthropicSubscriptionRouter.js.map +1 -1
  28. package/dist/core/MeshRpc.d.ts +37 -1
  29. package/dist/core/MeshRpc.d.ts.map +1 -1
  30. package/dist/core/MeshRpc.js +30 -0
  31. package/dist/core/MeshRpc.js.map +1 -1
  32. package/dist/core/PostUpdateMigrator.d.ts +9 -0
  33. package/dist/core/PostUpdateMigrator.d.ts.map +1 -1
  34. package/dist/core/PostUpdateMigrator.js +30 -0
  35. package/dist/core/PostUpdateMigrator.js.map +1 -1
  36. package/dist/core/accountFollowMeCooperativeWipe.d.ts +66 -0
  37. package/dist/core/accountFollowMeCooperativeWipe.d.ts.map +1 -0
  38. package/dist/core/accountFollowMeCooperativeWipe.js +179 -0
  39. package/dist/core/accountFollowMeCooperativeWipe.js.map +1 -0
  40. package/dist/server/AgentServer.d.ts +28 -0
  41. package/dist/server/AgentServer.d.ts.map +1 -1
  42. package/dist/server/AgentServer.js +81 -1
  43. package/dist/server/AgentServer.js.map +1 -1
  44. package/dist/server/routes.d.ts +37 -0
  45. package/dist/server/routes.d.ts.map +1 -1
  46. package/dist/server/routes.js +135 -4
  47. package/dist/server/routes.js.map +1 -1
  48. package/package.json +1 -1
  49. package/src/data/builtin-manifest.json +64 -64
  50. package/upgrades/1.3.615.md +35 -0
  51. package/upgrades/1.3.616.md +34 -0
  52. package/upgrades/side-effects/ws52-account-follow-me-r7a-spend-slice.md +70 -0
  53. package/upgrades/side-effects/ws52-account-follow-me-revocation-wiring.md +104 -0
  54. package/upgrades/side-effects/ws52-one-dashboard-mandate-delivery.md +74 -0
@@ -0,0 +1,66 @@
1
+ /**
2
+ * WS5.2 R12.i — the REAL cooperative data-plane wipe for AccountFollowMeRevocation.
3
+ *
4
+ * The pure executor (`AccountFollowMeRevocation`) takes a `cooperativeWipe(req) => CooperativeWipeResult`
5
+ * dep — three booleans (loggedOut / slotDeleted / poolRemoved). This factory builds the PRODUCTION
6
+ * implementation for a LOCAL account (the PER-SERVER model, OQ6: the operator revokes the mandate on
7
+ * the TARGET machine's OWN dashboard, so the target runs its OWN local wipe — this is never a
8
+ * cross-machine wipe-instruction).
9
+ *
10
+ * Per the spec (line 193) the wipe is three steps against the local account:
11
+ * 1. logout — the framework's own logout against that account's CLAUDE_CONFIG_DIR.
12
+ * 2. slot del — delete the per-account config-home directory + its keychain credential entry.
13
+ * 3. pool rm — SubscriptionPool.remove(accountId).
14
+ *
15
+ * FAIL-CLOSED CONTRACT (load-bearing): every step is wrapped so a throw becomes `false`, NEVER a
16
+ * silent `true`. The executor treats a partial/all-false result as a durable pending retry — it
17
+ * never claims `removed` it could not confirm. The whole function returns the per-step booleans;
18
+ * it does NOT itself throw (the executor's catch is a backstop, but we resolve each step honestly).
19
+ *
20
+ * The two side-effecting primitives (framework logout, directory/keychain deletion) are injected so
21
+ * this is unit-testable without spawning a real `claude` CLI or touching a real keychain; production
22
+ * wiring passes the real execFileSync-backed logout + SafeFsExecutor-backed deletion.
23
+ */
24
+ /**
25
+ * Deletion-safety guard (BLOCKING fix, 2026-06-17 second-pass review): the cooperative wipe does a
26
+ * `recursive,force` rm of an account's configHome. configHome is operator-provided at enroll time and
27
+ * `~/.claude` (the operator's PRIMARY/shared login) is a legitimate value — so an `account-follow-me`
28
+ * revoke targeting the default account would otherwise recursively delete the operator's main login
29
+ * directory. This refuses to delete any catastrophic / shared target: a filesystem root, `$HOME`
30
+ * itself, an ANCESTOR of `$HOME`, or a framework DEFAULT config home (`~/.claude`, `~/.codex`, …).
31
+ * A refused path returns slotDeleted:false → the executor falls to a durable pending, NEVER a false
32
+ * `removed`. A genuine per-account slot (e.g. `~/.claude-adriana`, `~/.instar/accounts/<id>`) is NOT
33
+ * matched and deletes normally.
34
+ */
35
+ export declare function isProtectedConfigHome(rawConfigHome: string): boolean;
36
+ import type { CooperativeWipeResult, RevocationRequest } from './AccountFollowMeRevocation.js';
37
+ import type { SubscriptionPool } from './SubscriptionPool.js';
38
+ export interface CooperativeWipeDeps {
39
+ pool: SubscriptionPool;
40
+ /**
41
+ * Run the framework's logout against the account's config home. MUST return true ONLY on a
42
+ * confirmed logout; false (or throw) otherwise. Injected for tests; production uses execFileSync.
43
+ */
44
+ frameworkLogout?: (args: {
45
+ framework: string;
46
+ configHome: string;
47
+ }) => boolean;
48
+ /**
49
+ * Delete the per-account config-home directory + its keychain credential entry. MUST return true
50
+ * ONLY when the slot is gone; false (or throw) otherwise. Injected for tests; production uses
51
+ * SafeFsExecutor + `security`.
52
+ */
53
+ deleteSlot?: (args: {
54
+ configHome: string;
55
+ framework: string;
56
+ }) => boolean;
57
+ log?: (msg: string) => void;
58
+ }
59
+ /**
60
+ * Build the production `cooperativeWipe` function for the injected SubscriptionPool. The returned
61
+ * function reads the LOCAL account's config home + framework from the pool (the operator-revoked
62
+ * account on THIS machine) and runs the three steps. If the account is not found locally, every
63
+ * step is false (nothing to wipe here — the executor falls to pending, honest).
64
+ */
65
+ export declare function buildCooperativeWipe(deps: CooperativeWipeDeps): (req: RevocationRequest) => CooperativeWipeResult;
66
+ //# sourceMappingURL=accountFollowMeCooperativeWipe.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"accountFollowMeCooperativeWipe.d.ts","sourceRoot":"","sources":["../../src/core/accountFollowMeCooperativeWipe.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AASH;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAqBpE;AACD,OAAO,KAAK,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAC/F,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAY9D,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,gBAAgB,CAAC;IACvB;;;OAGG;IACH,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC;IAC/E;;;;OAIG;IACH,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC;IAC1E,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7B;AA0DD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,mBAAmB,GAAG,CAAC,GAAG,EAAE,iBAAiB,KAAK,qBAAqB,CA2CjH"}
@@ -0,0 +1,179 @@
1
+ /**
2
+ * WS5.2 R12.i — the REAL cooperative data-plane wipe for AccountFollowMeRevocation.
3
+ *
4
+ * The pure executor (`AccountFollowMeRevocation`) takes a `cooperativeWipe(req) => CooperativeWipeResult`
5
+ * dep — three booleans (loggedOut / slotDeleted / poolRemoved). This factory builds the PRODUCTION
6
+ * implementation for a LOCAL account (the PER-SERVER model, OQ6: the operator revokes the mandate on
7
+ * the TARGET machine's OWN dashboard, so the target runs its OWN local wipe — this is never a
8
+ * cross-machine wipe-instruction).
9
+ *
10
+ * Per the spec (line 193) the wipe is three steps against the local account:
11
+ * 1. logout — the framework's own logout against that account's CLAUDE_CONFIG_DIR.
12
+ * 2. slot del — delete the per-account config-home directory + its keychain credential entry.
13
+ * 3. pool rm — SubscriptionPool.remove(accountId).
14
+ *
15
+ * FAIL-CLOSED CONTRACT (load-bearing): every step is wrapped so a throw becomes `false`, NEVER a
16
+ * silent `true`. The executor treats a partial/all-false result as a durable pending retry — it
17
+ * never claims `removed` it could not confirm. The whole function returns the per-step booleans;
18
+ * it does NOT itself throw (the executor's catch is a backstop, but we resolve each step honestly).
19
+ *
20
+ * The two side-effecting primitives (framework logout, directory/keychain deletion) are injected so
21
+ * this is unit-testable without spawning a real `claude` CLI or touching a real keychain; production
22
+ * wiring passes the real execFileSync-backed logout + SafeFsExecutor-backed deletion.
23
+ */
24
+ import { execFileSync } from 'node:child_process';
25
+ import fs from 'node:fs';
26
+ import os from 'node:os';
27
+ import path from 'node:path';
28
+ import { SafeFsExecutor } from './SafeFsExecutor.js';
29
+ import { claudeCredentialService, expandHome } from './OAuthRefresher.js';
30
+ /**
31
+ * Deletion-safety guard (BLOCKING fix, 2026-06-17 second-pass review): the cooperative wipe does a
32
+ * `recursive,force` rm of an account's configHome. configHome is operator-provided at enroll time and
33
+ * `~/.claude` (the operator's PRIMARY/shared login) is a legitimate value — so an `account-follow-me`
34
+ * revoke targeting the default account would otherwise recursively delete the operator's main login
35
+ * directory. This refuses to delete any catastrophic / shared target: a filesystem root, `$HOME`
36
+ * itself, an ANCESTOR of `$HOME`, or a framework DEFAULT config home (`~/.claude`, `~/.codex`, …).
37
+ * A refused path returns slotDeleted:false → the executor falls to a durable pending, NEVER a false
38
+ * `removed`. A genuine per-account slot (e.g. `~/.claude-adriana`, `~/.instar/accounts/<id>`) is NOT
39
+ * matched and deletes normally.
40
+ */
41
+ export function isProtectedConfigHome(rawConfigHome) {
42
+ const expanded = expandHome(String(rawConfigHome ?? '')).trim();
43
+ if (!expanded)
44
+ return true; // empty / whitespace — refuse before path.resolve('') falls back to cwd.
45
+ const resolvedRaw = path.resolve(expanded);
46
+ if (!resolvedRaw)
47
+ return true; // unresolvable — refuse, fail-closed.
48
+ const homeRaw = path.resolve(os.homedir());
49
+ // Case-fold the comparison: macOS/Windows default volumes are case-INSENSITIVE, so `~/.CLAUDE`
50
+ // is the SAME on-disk dir as `~/.claude` and must be refused too (string-exact would miss it).
51
+ const resolved = resolvedRaw.toLowerCase();
52
+ const home = homeRaw.toLowerCase();
53
+ const sep = path.sep;
54
+ // A filesystem root (e.g. "/" or "C:\").
55
+ if (resolvedRaw === path.parse(resolvedRaw).root)
56
+ return true;
57
+ // $HOME itself, or an ancestor of $HOME (e.g. "/Users", "/").
58
+ if (resolved === home || home.startsWith(resolved + sep))
59
+ return true;
60
+ // Framework default / shared config homes — the operator's primary logins, never a follow-me slot.
61
+ const PROTECTED_DEFAULT_HOMES = ['.claude', '.codex', '.gemini', '.pi', '.config'];
62
+ for (const name of PROTECTED_DEFAULT_HOMES) {
63
+ if (resolved === path.join(home, name).toLowerCase())
64
+ return true;
65
+ }
66
+ return false;
67
+ }
68
+ /** Per-framework logout command (mirrors the enroll login-command table; args, not a shell string). */
69
+ const FRAMEWORK_LOGOUT = {
70
+ 'claude-code': { cmd: 'claude', args: ['auth', 'logout'] },
71
+ 'codex-cli': { cmd: 'codex', args: ['logout'] },
72
+ // gemini/pi have no headless logout verb today — slot deletion + pool.remove still apply, and the
73
+ // missing logout surfaces as loggedOut:false ⇒ the executor keeps a durable pending (honest).
74
+ };
75
+ const LOGOUT_TIMEOUT_MS = 15_000;
76
+ /** Production framework-logout: env-scope the logout CLI to the account's config home. */
77
+ function defaultFrameworkLogout(args) {
78
+ const spec = FRAMEWORK_LOGOUT[args.framework];
79
+ if (!spec)
80
+ return false; // no headless logout verb for this framework — honestly not-done.
81
+ try {
82
+ execFileSync(spec.cmd, spec.args, {
83
+ timeout: LOGOUT_TIMEOUT_MS,
84
+ stdio: 'ignore',
85
+ env: { ...process.env, CLAUDE_CONFIG_DIR: expandHome(args.configHome) },
86
+ });
87
+ return true;
88
+ }
89
+ catch {
90
+ // @silent-fallback-ok: fail-closed — a non-zero exit / missing CLI / timeout is NOT a confirmed
91
+ // logout; the false return surfaces to the executor (→ pending, never a false `removed`).
92
+ return false;
93
+ }
94
+ }
95
+ /** Production slot deletion: remove the config-home dir (SafeFsExecutor) + the keychain entry. */
96
+ function defaultDeleteSlot(args) {
97
+ const home = expandHome(args.configHome);
98
+ // DELETION-SAFETY GUARD: never recursively delete a shared/default/root path (see
99
+ // isProtectedConfigHome). Refusing returns false → durable pending, never a false `removed`.
100
+ if (isProtectedConfigHome(args.configHome)) {
101
+ return false;
102
+ }
103
+ let dirGone = false;
104
+ try {
105
+ // Recursive force delete of the per-account config home. force:true makes an already-absent
106
+ // dir a success (idempotent — a retried wipe is safe).
107
+ SafeFsExecutor.safeRmSync(home, {
108
+ recursive: true,
109
+ force: true,
110
+ operation: 'accountFollowMeCooperativeWipe.deleteSlot',
111
+ });
112
+ dirGone = !fs.existsSync(home);
113
+ }
114
+ catch {
115
+ // @silent-fallback-ok: fail-closed — a delete error surfaces as slotDeleted:false → pending.
116
+ dirGone = false;
117
+ }
118
+ // Best-effort keychain credential delete for claude-code slots (the login token lives here too).
119
+ if (args.framework === 'claude-code') {
120
+ try {
121
+ const service = claudeCredentialService(args.configHome);
122
+ execFileSync('security', ['delete-generic-password', '-s', service], {
123
+ timeout: 5_000,
124
+ stdio: 'ignore',
125
+ });
126
+ }
127
+ catch {
128
+ // @silent-fallback-ok: a missing keychain entry (or non-darwin) is a no-op; the directory
129
+ // delete is the authoritative slot-gone signal, so this never flips the result false on its own.
130
+ }
131
+ }
132
+ return dirGone;
133
+ }
134
+ /**
135
+ * Build the production `cooperativeWipe` function for the injected SubscriptionPool. The returned
136
+ * function reads the LOCAL account's config home + framework from the pool (the operator-revoked
137
+ * account on THIS machine) and runs the three steps. If the account is not found locally, every
138
+ * step is false (nothing to wipe here — the executor falls to pending, honest).
139
+ */
140
+ export function buildCooperativeWipe(deps) {
141
+ const frameworkLogout = deps.frameworkLogout ?? defaultFrameworkLogout;
142
+ const deleteSlot = deps.deleteSlot ?? defaultDeleteSlot;
143
+ return (req) => {
144
+ const acct = deps.pool.get(req.accountId);
145
+ if (!acct) {
146
+ deps.log?.(`[account-follow-me] cooperativeWipe ${req.accountId}: no local account — nothing to wipe here`);
147
+ return { loggedOut: false, slotDeleted: false, poolRemoved: false };
148
+ }
149
+ const configHome = acct.configHome;
150
+ const framework = acct.framework;
151
+ let loggedOut = false;
152
+ try {
153
+ loggedOut = frameworkLogout({ framework, configHome });
154
+ }
155
+ catch {
156
+ // @silent-fallback-ok: fail-closed — surfaces as loggedOut:false → executor keeps pending.
157
+ loggedOut = false;
158
+ }
159
+ let slotDeleted = false;
160
+ try {
161
+ slotDeleted = deleteSlot({ configHome, framework });
162
+ }
163
+ catch {
164
+ // @silent-fallback-ok: fail-closed — surfaces as slotDeleted:false → executor keeps pending.
165
+ slotDeleted = false;
166
+ }
167
+ let poolRemoved = false;
168
+ try {
169
+ poolRemoved = deps.pool.remove(req.accountId);
170
+ }
171
+ catch {
172
+ // @silent-fallback-ok: fail-closed — surfaces as poolRemoved:false → executor keeps pending.
173
+ poolRemoved = false;
174
+ }
175
+ deps.log?.(`[account-follow-me] cooperativeWipe ${req.accountId}: logout=${loggedOut} slot=${slotDeleted} pool=${poolRemoved}`);
176
+ return { loggedOut, slotDeleted, poolRemoved };
177
+ };
178
+ }
179
+ //# sourceMappingURL=accountFollowMeCooperativeWipe.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"accountFollowMeCooperativeWipe.js","sourceRoot":"","sources":["../../src/core/accountFollowMeCooperativeWipe.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,uBAAuB,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAE1E;;;;;;;;;;GAUG;AACH,MAAM,UAAU,qBAAqB,CAAC,aAAqB;IACzD,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAChE,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC,CAAC,yEAAyE;IACrG,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC3C,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC,CAAC,sCAAsC;IACrE,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;IAC3C,+FAA+F;IAC/F,+FAA+F;IAC/F,MAAM,QAAQ,GAAG,WAAW,CAAC,WAAW,EAAE,CAAC;IAC3C,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IACnC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;IACrB,yCAAyC;IACzC,IAAI,WAAW,KAAK,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IAC9D,8DAA8D;IAC9D,IAAI,QAAQ,KAAK,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,GAAG,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IACtE,mGAAmG;IACnG,MAAM,uBAAuB,GAAG,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;IACnF,KAAK,MAAM,IAAI,IAAI,uBAAuB,EAAE,CAAC;QAC3C,IAAI,QAAQ,KAAK,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,WAAW,EAAE;YAAE,OAAO,IAAI,CAAC;IACpE,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAID,uGAAuG;AACvG,MAAM,gBAAgB,GAAoD;IACxE,aAAa,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE;IAC1D,WAAW,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,QAAQ,CAAC,EAAE;IAC/C,kGAAkG;IAClG,8FAA8F;CAC/F,CAAC;AAEF,MAAM,iBAAiB,GAAG,MAAM,CAAC;AAkBjC,0FAA0F;AAC1F,SAAS,sBAAsB,CAAC,IAA+C;IAC7E,MAAM,IAAI,GAAG,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC9C,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC,CAAC,kEAAkE;IAC3F,IAAI,CAAC;QACH,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE;YAChC,OAAO,EAAE,iBAAiB;YAC1B,KAAK,EAAE,QAAQ;YACf,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,iBAAiB,EAAE,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;SACxE,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,gGAAgG;QAChG,0FAA0F;QAC1F,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,kGAAkG;AAClG,SAAS,iBAAiB,CAAC,IAA+C;IACxE,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACzC,kFAAkF;IAClF,6FAA6F;IAC7F,IAAI,qBAAqB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QAC3C,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,CAAC;QACH,4FAA4F;QAC5F,uDAAuD;QACvD,cAAc,CAAC,UAAU,CAAC,IAAI,EAAE;YAC9B,SAAS,EAAE,IAAI;YACf,KAAK,EAAE,IAAI;YACX,SAAS,EAAE,2CAA2C;SACvD,CAAC,CAAC;QACH,OAAO,GAAG,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAAC,MAAM,CAAC;QACP,6FAA6F;QAC7F,OAAO,GAAG,KAAK,CAAC;IAClB,CAAC;IACD,iGAAiG;IACjG,IAAI,IAAI,CAAC,SAAS,KAAK,aAAa,EAAE,CAAC;QACrC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,uBAAuB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACzD,YAAY,CAAC,UAAU,EAAE,CAAC,yBAAyB,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE;gBACnE,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,QAAQ;aAChB,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,0FAA0F;YAC1F,iGAAiG;QACnG,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAAC,IAAyB;IAC5D,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,IAAI,sBAAsB,CAAC;IACvE,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,iBAAiB,CAAC;IACxD,OAAO,CAAC,GAAsB,EAAyB,EAAE;QACvD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC1C,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,IAAI,CAAC,GAAG,EAAE,CACR,uCAAuC,GAAG,CAAC,SAAS,2CAA2C,CAChG,CAAC;YACF,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QACtE,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACnC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAEjC,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC;YACH,SAAS,GAAG,eAAe,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;QACzD,CAAC;QAAC,MAAM,CAAC;YACP,2FAA2F;YAC3F,SAAS,GAAG,KAAK,CAAC;QACpB,CAAC;QAED,IAAI,WAAW,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC;YACH,WAAW,GAAG,UAAU,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC;QACtD,CAAC;QAAC,MAAM,CAAC;YACP,6FAA6F;YAC7F,WAAW,GAAG,KAAK,CAAC;QACtB,CAAC;QAED,IAAI,WAAW,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC;YACH,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAChD,CAAC;QAAC,MAAM,CAAC;YACP,6FAA6F;YAC7F,WAAW,GAAG,KAAK,CAAC;QACtB,CAAC;QAED,IAAI,CAAC,GAAG,EAAE,CACR,uCAAuC,GAAG,CAAC,SAAS,YAAY,SAAS,SAAS,WAAW,SAAS,WAAW,EAAE,CACpH,CAAC;QACF,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC;IACjD,CAAC,CAAC;AACJ,CAAC"}
@@ -107,6 +107,9 @@ export declare class AgentServer {
107
107
  /** Coordination Mandate enforcement (spec §4): deny-by-default gate + signed
108
108
  * store + hash-chained audit. Null when stateDir is unavailable. */
109
109
  private coordination;
110
+ /** WS5.2 R4a — durable store of cross-machine-DELIVERED account-follow-me mandates (target side).
111
+ * Null when coordination/stateDir is unavailable. */
112
+ private deliveredMandateStore;
110
113
  /** Operator Authorization Request (agent proposes → operator approves one-tap). Null
111
114
  * when coordination/stateDir is unavailable. `enabled` is the resolved dev-gate. */
112
115
  private authorizationRequests;
@@ -216,6 +219,7 @@ export declare class AgentServer {
216
219
  proactiveSwapMonitor?: import('../core/ProactiveSwapMonitor.js').ProactiveSwapMonitor;
217
220
  inUseAccountResolver?: import('../core/InUseAccountResolver.js').InUseAccountResolver;
218
221
  enrollmentWizard?: import('../core/EnrollmentWizard.js').EnrollmentWizard;
222
+ accountFollowMeRevocation?: import('../core/AccountFollowMeRevocation.js').AccountFollowMeRevocation;
219
223
  credentialRepointing?: import('./routes.js').RouteContext['credentialRepointing'];
220
224
  semanticMemory?: import('../memory/SemanticMemory.js').SemanticMemory;
221
225
  activitySentinel?: import('../monitoring/SessionActivitySentinel.js').SessionActivitySentinel;
@@ -338,6 +342,17 @@ export declare class AgentServer {
338
342
  /** Signed rollout-stage E2E result store (§Rollout). */
339
343
  sessionPoolE2EResultStore?: import('../core/SessionPoolE2EResultStore.js').SessionPoolE2EResultStore;
340
344
  localSigningKeyPem?: string;
345
+ /** WS5.2 R4a — operator/issuer side: deliver an R4a-signed account-follow-me mandate to a REMOTE
346
+ * target over the signed mesh. Injected from server.ts (where the mesh client + peer-URL
347
+ * resolution live). Absent ⇒ this machine cannot deliver (single-machine / no mesh). */
348
+ deliverMandateToMachine?: (args: {
349
+ targetMachineId: string;
350
+ portable: import('../coordination/AccountFollowMeMandateBridge.js').PortableMandate;
351
+ }) => Promise<{
352
+ ok: boolean;
353
+ status: number;
354
+ reason?: string;
355
+ }>;
341
356
  /** Lease wire transport — receives peer lease broadcasts at /api/lease (spec §6). */
342
357
  leaseTransport?: {
343
358
  recordObserved: (lease: any) => void;
@@ -699,6 +714,19 @@ export declare class AgentServer {
699
714
  * Expose the Express app for testing with supertest.
700
715
  */
701
716
  getApp(): Express;
717
+ /**
718
+ * WS5.2 R4a — TARGET-side acceptance of a cross-machine-delivered account-follow-me mandate (the
719
+ * brains behind the `account-follow-me-mandate-deliver` mesh handler, which is wired in server.ts
720
+ * where the peer-key resolver lives). `sender` MUST be the mesh-AUTHENTICATED envelope sender;
721
+ * `operatorPublicKeyPem` is that sender's REGISTERED Ed25519 key (resolved by the caller from the
722
+ * same registered-identity store verifyEnvelope used) — never a key from the payload. FAIL CLOSED:
723
+ * feature dark / no store / signature-or-bounds failure → refuse + persist nothing.
724
+ */
725
+ acceptDeliveredMandateCommand(sender: string, portable: import('../coordination/AccountFollowMeMandateBridge.js').PortableMandate | undefined | null, operatorPublicKeyPem: string | null): {
726
+ accepted: boolean;
727
+ reason?: string;
728
+ mandateId?: string;
729
+ };
702
730
  /** Wiring-integrity accessor: the ParallelWorkSentinel when constructed (enabled), else null. */
703
731
  getParallelWorkSentinel(): ParallelWorkSentinel | null;
704
732
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"AgentServer.d.ts","sourceRoot":"","sources":["../../src/server/AgentServer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AgentServer.d.ts","sourceRoot":"","sources":["../../src/server/AgentServer.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@
10
10
  import express from 'express';
11
11
  import fs from 'node:fs';
12
12
  import path from 'node:path';
13
- import { createHash, createHmac, timingSafeEqual } from 'node:crypto';
13
+ import { createHash, createHmac, timingSafeEqual, createPrivateKey } from 'node:crypto';
14
14
  import { ApprovalLedger } from '../core/ApprovalLedger.js';
15
15
  import { resolveDevAgentGate } from '../core/devAgentGate.js';
16
16
  import { TopicOperatorStore } from '../users/TopicOperatorStore.js';
@@ -21,6 +21,9 @@ import { MandateGate } from '../coordination/MandateGate.js';
21
21
  import { MandateAudit } from '../coordination/MandateAudit.js';
22
22
  import { ConditionsRegistry } from '../coordination/conditions.js';
23
23
  import { ReviewExchangeEngine } from '../coordination/ReviewExchange.js';
24
+ import { DeliveredMandateStore } from '../coordination/DeliveredMandateStore.js';
25
+ import { packageMandateForDelivery, acceptDeliveredMandate } from '../coordination/AccountFollowMeMandateBridge.js';
26
+ import { readFollowMeBounds, acceptMandateDelivery } from '../coordination/AccountFollowMeMandateDelivery.js';
24
27
  import { CutoverReadiness } from '../feedback-factory/cutoverReadiness.js';
25
28
  import { InboxDrainer } from '../feedback-factory/inbox/InboxDrainer.js';
26
29
  import { BlobInboxClient } from '../feedback-factory/inbox/BlobInboxClient.js';
@@ -166,6 +169,9 @@ export class AgentServer {
166
169
  /** Coordination Mandate enforcement (spec §4): deny-by-default gate + signed
167
170
  * store + hash-chained audit. Null when stateDir is unavailable. */
168
171
  coordination = null;
172
+ /** WS5.2 R4a — durable store of cross-machine-DELIVERED account-follow-me mandates (target side).
173
+ * Null when coordination/stateDir is unavailable. */
174
+ deliveredMandateStore = null;
169
175
  /** Operator Authorization Request (agent proposes → operator approves one-tap). Null
170
176
  * when coordination/stateDir is unavailable. `enabled` is the resolved dev-gate. */
171
177
  authorizationRequests = null;
@@ -879,6 +885,22 @@ export class AgentServer {
879
885
  gate,
880
886
  });
881
887
  this.coordination = { store, gate, audit, conditions, reviews };
888
+ // WS5.2 R4a — ONE-DASHBOARD cross-machine mandate delivery: the durable store of mandates
889
+ // delivered+verified to THIS machine from the operator machine. Built on the SAME stateDir
890
+ // as the mandate store; it retains the full R4a-signed PortableMandate so the enroll-start
891
+ // route re-verifies at point-of-use. No new authority path — a delivered mandate is trusted
892
+ // ONLY via the R4a asymmetric signature (verified by the mesh handler), never local authorship.
893
+ try {
894
+ this.deliveredMandateStore = new DeliveredMandateStore({
895
+ filePath: path.join(options.config.stateDir, 'state', 'delivered-mandates.json'),
896
+ });
897
+ }
898
+ catch (dmErr) {
899
+ // @silent-fallback-ok — null leaves the delivered-mandate path inert (enroll-start falls
900
+ // back to deny-by-default), never blocks boot.
901
+ console.warn('[instar] delivered-mandate store init failed (non-fatal):', dmErr);
902
+ this.deliveredMandateStore = null;
903
+ }
882
904
  // Operator Authorization Request — agent proposes → operator approves one-tap.
883
905
  // Built on the SAME stateDir; the approve route issues grants via `store` above
884
906
  // (the existing signed MandateStore), so no new authority path is introduced.
@@ -1603,6 +1625,7 @@ export class AgentServer {
1603
1625
  proactiveSwapMonitor: options.proactiveSwapMonitor,
1604
1626
  inUseAccountResolver: options.inUseAccountResolver,
1605
1627
  enrollmentWizard: options.enrollmentWizard ?? null,
1628
+ accountFollowMeRevocation: options.accountFollowMeRevocation ?? null,
1606
1629
  credentialRepointing: options.credentialRepointing ?? null,
1607
1630
  semanticMemory: options.semanticMemory ?? null,
1608
1631
  activitySentinel: options.activitySentinel ?? null,
@@ -1687,6 +1710,39 @@ export class AgentServer {
1687
1710
  approvalLedger: this.approvalLedger,
1688
1711
  topicOperatorStore: this.topicOperatorStore,
1689
1712
  coordination: this.coordination,
1713
+ deliveredMandateStore: this.deliveredMandateStore,
1714
+ // WS5.2 R4a — operator side: package an issued mandate with the asymmetric issuance signature
1715
+ // using THIS machine's Ed25519 identity key + fingerprint (meshSelfId). Null when no mesh
1716
+ // identity (single-machine) — the issue-for-machine route then 503s on a remote target.
1717
+ packageMandateForDelivery: (() => {
1718
+ const pem = options.localSigningKeyPem;
1719
+ const selfId = options.meshSelfId;
1720
+ if (!pem || !selfId)
1721
+ return null;
1722
+ return (mandate) => {
1723
+ const priv = createPrivateKey(pem);
1724
+ return packageMandateForDelivery(mandate, selfId, priv);
1725
+ };
1726
+ })(),
1727
+ deliverMandateToMachine: options.deliverMandateToMachine ?? null,
1728
+ // WS5.2 R4a — target side: re-verify a DELIVERED mandate AT POINT OF USE against the operator
1729
+ // key recorded at delivery (defense-in-depth; never trust a stored flag). Returns the verified
1730
+ // account-follow-me bounds, or null on any failure (fail-closed).
1731
+ verifyDeliveredMandate: this.deliveredMandateStore
1732
+ ? (mandateId) => {
1733
+ const record = this.deliveredMandateStore.get(mandateId);
1734
+ if (!record)
1735
+ return null;
1736
+ const accept = acceptDeliveredMandate({
1737
+ portable: record.portable,
1738
+ operatorEd25519PublicKey: record.operatorPublicKeyPem,
1739
+ expectedOperatorMachineFingerprint: record.deliveredBy,
1740
+ });
1741
+ if (!accept.accepted)
1742
+ return null;
1743
+ return readFollowMeBounds(accept.mandate);
1744
+ }
1745
+ : null,
1690
1746
  authorizationRequests: this.authorizationRequests,
1691
1747
  cutoverReadiness: this.cutoverReadiness,
1692
1748
  inboxDrainer: this.inboxDrainer,
@@ -3322,6 +3378,30 @@ export class AgentServer {
3322
3378
  getApp() {
3323
3379
  return this.app;
3324
3380
  }
3381
+ /**
3382
+ * WS5.2 R4a — TARGET-side acceptance of a cross-machine-delivered account-follow-me mandate (the
3383
+ * brains behind the `account-follow-me-mandate-deliver` mesh handler, which is wired in server.ts
3384
+ * where the peer-key resolver lives). `sender` MUST be the mesh-AUTHENTICATED envelope sender;
3385
+ * `operatorPublicKeyPem` is that sender's REGISTERED Ed25519 key (resolved by the caller from the
3386
+ * same registered-identity store verifyEnvelope used) — never a key from the payload. FAIL CLOSED:
3387
+ * feature dark / no store / signature-or-bounds failure → refuse + persist nothing.
3388
+ */
3389
+ acceptDeliveredMandateCommand(sender, portable, operatorPublicKeyPem) {
3390
+ if (!this.deliveredMandateStore)
3391
+ return { accepted: false, reason: 'delivered-mandate-store-unavailable' };
3392
+ const enabled = resolveDevAgentGate(this.config
3393
+ .multiMachine?.accountFollowMe?.enabled, this.config);
3394
+ const result = acceptMandateDelivery({
3395
+ enabled: () => enabled,
3396
+ selfMachineId: () => this.meshSelfId ?? this.config.machineId ?? 'local',
3397
+ operatorMachinePublicKey: () => operatorPublicKeyPem,
3398
+ store: this.deliveredMandateStore,
3399
+ log: (m) => console.log(m),
3400
+ }, sender, portable);
3401
+ return result.accepted
3402
+ ? { accepted: true, mandateId: result.mandateId }
3403
+ : { accepted: false, reason: result.reason };
3404
+ }
3325
3405
  /** Wiring-integrity accessor: the ParallelWorkSentinel when constructed (enabled), else null. */
3326
3406
  getParallelWorkSentinel() {
3327
3407
  return this.parallelWorkSentinel;