wicked-crew 0.10.0 → 0.10.2

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 (55) hide show
  1. package/dist/api/roster-standing.d.ts +27 -1
  2. package/dist/api/roster-standing.d.ts.map +1 -1
  3. package/dist/api/roster-standing.js +126 -10
  4. package/dist/api/roster-standing.js.map +1 -1
  5. package/dist/api/routes.d.ts.map +1 -1
  6. package/dist/api/routes.js +28 -11
  7. package/dist/api/routes.js.map +1 -1
  8. package/dist/api/seat-agents.d.ts +135 -0
  9. package/dist/api/seat-agents.d.ts.map +1 -0
  10. package/dist/api/seat-agents.js +186 -0
  11. package/dist/api/seat-agents.js.map +1 -0
  12. package/dist/api/seat-health.d.ts +23 -0
  13. package/dist/api/seat-health.d.ts.map +1 -1
  14. package/dist/api/seat-health.js +70 -8
  15. package/dist/api/seat-health.js.map +1 -1
  16. package/dist/api/seat-probe.d.ts +11 -2
  17. package/dist/api/seat-probe.d.ts.map +1 -1
  18. package/dist/api/seat-probe.js +28 -9
  19. package/dist/api/seat-probe.js.map +1 -1
  20. package/dist/api/seat-scrub.d.ts +65 -0
  21. package/dist/api/seat-scrub.d.ts.map +1 -0
  22. package/dist/api/seat-scrub.js +193 -0
  23. package/dist/api/seat-scrub.js.map +1 -0
  24. package/dist/api/seat-standing.d.ts +3 -2
  25. package/dist/api/seat-standing.d.ts.map +1 -1
  26. package/dist/api/seat-standing.js +8 -7
  27. package/dist/api/seat-standing.js.map +1 -1
  28. package/dist/api/seat-version.d.ts +81 -0
  29. package/dist/api/seat-version.d.ts.map +1 -0
  30. package/dist/api/seat-version.js +174 -0
  31. package/dist/api/seat-version.js.map +1 -0
  32. package/dist/api/server.js +1 -1
  33. package/dist/core/adapter.d.ts +12 -0
  34. package/dist/core/adapter.d.ts.map +1 -1
  35. package/dist/core/adapter.js +25 -0
  36. package/dist/core/adapter.js.map +1 -1
  37. package/dist/core/engine-roster.d.ts.map +1 -1
  38. package/dist/core/engine-roster.js +8 -0
  39. package/dist/core/engine-roster.js.map +1 -1
  40. package/dist/editors/registry.d.ts +2 -2
  41. package/dist/interactive/council-outcome.d.ts +5 -1
  42. package/dist/interactive/council-outcome.d.ts.map +1 -1
  43. package/dist/interactive/council-outcome.js +11 -2
  44. package/dist/interactive/council-outcome.js.map +1 -1
  45. package/dist/standing-orders/parse.js +1 -1
  46. package/dist/studio/assets/index-C6DLorst.css +32 -0
  47. package/dist/studio/assets/index-CAhuFWeA.js +609 -0
  48. package/dist/studio/editors/wicked-page/editor.json +1 -1
  49. package/dist/studio/editors/wicked-page/index.html +1 -1
  50. package/dist/studio/index.html +2 -2
  51. package/dist/studio/testid-inventory.json +553 -144
  52. package/endpoint-manifest.json +6 -14
  53. package/package.json +4 -4
  54. package/dist/studio/assets/index-DlZl1q2Q.js +0 -593
  55. package/dist/studio/assets/index-eLCOoPWX.css +0 -32
@@ -45,10 +45,11 @@
45
45
  * one refresh in the background (deduplicated per seat, one probe process at a time host-wide
46
46
  * for this daemon). A signed-in answer is kept for 5 minutes (so a live check costs at most one
47
47
  * one-word request per seat per 5 minutes); a signed-out or unknown one for 30 s, so a seat signed
48
- * in from the System page turns green on the next poll or two. The cache is keyed by (seat, worker
48
+ * in from the Agents page turns green on the next poll or two. The cache is keyed by (seat, worker
49
49
  * home): changing `worker_config_root` discards every answer at once. A launch awaits a missing or
50
50
  * stale answer, bounded, before it routes ({@link SeatProbe.ensureFresh}).
51
51
  */
52
+ import { type SeatAccount } from './seat-scrub.js';
52
53
  /** A probe process's outcome, as the runner reports it. `error` is set when it never ran to exit
53
54
  * (not installed, timed out, killed). */
54
55
  export interface ProbeOutput {
@@ -70,8 +71,11 @@ export interface SeatProbeReading {
70
71
  check: ProbeCheck;
71
72
  /** ISO-8601 of the probe. */
72
73
  probedAt: string;
73
- /** A bounded excerpt of what the CLI said (its own words for a `false`). */
74
+ /** A bounded excerpt of what the CLI said (its own words for a `false`), with every account
75
+ * identifier dropped (A8, `seat-scrub.ts`): it rides the roster's `auth_evidence` / `login_note`. */
74
76
  detail: string;
77
+ /** (A2) The account KIND the status command stated, when it stated one — never an identifier. */
78
+ account?: SeatAccount;
75
79
  }
76
80
  /** How long an answer is trusted before a background refresh (the stale answer is served meanwhile). */
77
81
  export declare const PROBE_TTL_SIGNED_IN_MS: number;
@@ -132,6 +136,11 @@ export declare class SeatProbe {
132
136
  ensureFresh(seatKeys: string[], workerRoot: string | undefined, waitMs?: number): Promise<void>;
133
137
  /** Probe now (deduplicated per seat and worker home); resolves to the fresh answer. */
134
138
  refresh(seatKey: string, workerRoot: string | undefined): Promise<SeatProbeReading | undefined>;
139
+ /**
140
+ * A3b: probe AGAIN, after any probe already running for this seat has finished. A running probe
141
+ * may have started before the operator signed in, so its answer cannot be the fresh one.
142
+ */
143
+ refreshFresh(seatKey: string, workerRoot: string | undefined): Promise<SeatProbeReading | undefined>;
135
144
  /** The status command, then — when it says signed in — the live check. */
136
145
  private probeOnce;
137
146
  private reading;
@@ -1 +1 @@
1
- {"version":3,"file":"seat-probe.d.ts","sourceRoot":"","sources":["../../src/api/seat-probe.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;AASH;0CAC0C;AAC1C,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,sEAAsE;AACtE,MAAM,MAAM,WAAW,GAAG,CACxB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EAAE,EACd,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,SAAS,EAAE,MAAM,KACd,OAAO,CAAC,WAAW,CAAC,CAAC;AAE1B;4FAC4F;AAC5F,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,QAAQ,CAAC;AAE3C,+BAA+B;AAC/B,MAAM,WAAW,gBAAgB;IAC/B,2FAA2F;IAC3F,QAAQ,EAAE,OAAO,GAAG,IAAI,CAAC;IACzB,+DAA+D;IAC/D,KAAK,EAAE,UAAU,CAAC;IAClB,6BAA6B;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,4EAA4E;IAC5E,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wGAAwG;AACxG,eAAO,MAAM,sBAAsB,QAAgB,CAAC;AACpD,eAAO,MAAM,kBAAkB,QAAY,CAAC;AAC5C,gFAAgF;AAChF,eAAO,MAAM,gBAAgB,QAAY,CAAC;AAC1C,8EAA8E;AAC9E,eAAO,MAAM,iBAAiB,QAAY,CAAC;AAC3C,4FAA4F;AAC5F,eAAO,MAAM,oBAAoB,QAAY,CAAC;AAU9C,KAAK,OAAO,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC,UAAU,CAAA;CAAE,CAAC;AAYvE,8FAA8F;AAC9F,wBAAgB,YAAY,CAC1B,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,GAAG,GAAE,MAAM,CAAC,UAAwB,EACpC,IAAI,GAAE,MAAkB,GACvB,OAAO,GAAG,IAAI,CAMhB;AAED,0FAA0F;AAC1F,wBAAgB,aAAa,CAC3B,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,GAAG,GAAE,MAAM,CAAC,UAAwB,EACpC,IAAI,GAAE,MAAkB,GACvB,OAAO,GAAG,IAAI,CAUhB;AAED,8FAA8F;AAC9F,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,GAAG,OAAO,GAAG,IAAI,CAY/E;AAED;8EAC8E;AAC9E,wBAAgB,cAAc,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,GAAG,IAAI,CAG/D;AAED;kGACkG;AAClG,eAAO,MAAM,SAAS,EAAE,WAmBpB,CAAC;AAEL,MAAM,WAAW,gBAAgB;IAC/B,GAAG,CAAC,EAAE,WAAW,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,uDAAuD;AACvD,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA0D;IAChF,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA4D;IACrF,kEAAkE;IAClE,OAAO,CAAC,KAAK,CAAuC;IACpD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAc;IAClC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAe;IACnC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAgC;IACpD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAqB;gBAE9B,IAAI,GAAE,gBAAqB;IAOvC,4CAA4C;IAC5C,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAIhC;;;;OAIG;IACH,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,gBAAgB,GAAG,SAAS;IAQnF;;;;OAIG;IACG,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,MAAM,GAAG,SAAS,EAAE,MAAM,GAAE,MAA6B,GAAG,OAAO,CAAC,IAAI,CAAC;IAkB3H,uFAAuF;IACvF,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAqB/F,0EAA0E;YAC5D,SAAS;IAavB,OAAO,CAAC,OAAO;IAIf,OAAO,CAAC,KAAK;CAId"}
1
+ {"version":3,"file":"seat-probe.d.ts","sourceRoot":"","sources":["../../src/api/seat-probe.ts"],"names":[],"mappings":"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"}
@@ -45,7 +45,7 @@
45
45
  * one refresh in the background (deduplicated per seat, one probe process at a time host-wide
46
46
  * for this daemon). A signed-in answer is kept for 5 minutes (so a live check costs at most one
47
47
  * one-word request per seat per 5 minutes); a signed-out or unknown one for 30 s, so a seat signed
48
- * in from the System page turns green on the next poll or two. The cache is keyed by (seat, worker
48
+ * in from the Agents page turns green on the next poll or two. The cache is keyed by (seat, worker
49
49
  * home): changing `worker_config_root` discards every answer at once. A launch awaits a missing or
50
50
  * stale answer, bounded, before it routes ({@link SeatProbe.ensureFresh}).
51
51
  */
@@ -54,6 +54,7 @@ import { homedir, tmpdir } from 'node:os';
54
54
  import { join } from 'node:path';
55
55
  import { childEnvWithBootEstateDb } from '../core/governance-store.js';
56
56
  import { isAuthRefusal } from './seat-health.js';
57
+ import { accountFromStatus, liveSummary, statusSummary } from './seat-scrub.js';
57
58
  /** How long an answer is trusted before a background refresh (the stale answer is served meanwhile). */
58
59
  export const PROBE_TTL_SIGNED_IN_MS = 5 * 60 * 1000;
59
60
  export const PROBE_TTL_OTHER_MS = 30 * 1000;
@@ -179,7 +180,13 @@ export class SeatProbe {
179
180
  void this.refresh(seatKey, workerRoot);
180
181
  if (hit === undefined)
181
182
  return undefined;
182
- return { signedIn: hit.signedIn, check: hit.check, probedAt: hit.probedAt, detail: hit.detail };
183
+ return {
184
+ signedIn: hit.signedIn,
185
+ check: hit.check,
186
+ probedAt: hit.probedAt,
187
+ detail: hit.detail,
188
+ ...(hit.account !== undefined ? { account: hit.account } : {}),
189
+ };
183
190
  }
184
191
  /**
185
192
  * Before a launch routes: probe every probed seat whose answer is missing or stale and wait for
@@ -227,24 +234,36 @@ export class SeatProbe {
227
234
  this.inflight.set(key, job);
228
235
  return job;
229
236
  }
237
+ /**
238
+ * A3b: probe AGAIN, after any probe already running for this seat has finished. A running probe
239
+ * may have started before the operator signed in, so its answer cannot be the fresh one.
240
+ */
241
+ async refreshFresh(seatKey, workerRoot) {
242
+ const running = this.inflight.get(cacheKey(seatKey, workerRoot));
243
+ if (running !== undefined)
244
+ await running.catch(() => undefined);
245
+ return this.refresh(seatKey, workerRoot);
246
+ }
230
247
  /** The status command, then — when it says signed in — the live check. */
231
248
  async probeOnce(seatKey, status, verify) {
232
249
  const out = await this.run(status.cmd, status.args, status.env, PROBE_TIMEOUT_MS);
233
250
  const said = classifyProbe(seatKey, out);
234
- const statusWords = excerpt(out.error ?? `${out.stdout}\n${out.stderr}`);
251
+ // A8: only crew's own words for what the CLI said (`seat-scrub.ts`), never its prose.
252
+ const statusWords = excerpt(statusSummary(seatKey, out));
253
+ const account = said === true ? accountFromStatus(seatKey, out.stdout, out.stderr) : undefined;
235
254
  if (said !== true || verify === null)
236
- return this.reading(said, 'status', statusWords);
255
+ return this.reading(said, 'status', statusWords, account);
237
256
  const live = await this.run(verify.cmd, verify.args, verify.env, VERIFY_TIMEOUT_MS);
238
257
  const verdict = classifyVerify(live);
239
- const liveWords = excerpt(live.error ?? `${live.stdout}\n${live.stderr}`);
258
+ const liveWords = excerpt(liveSummary(live));
240
259
  if (verdict === false)
241
260
  return this.reading(false, 'live', liveWords);
242
261
  if (verdict === true)
243
- return this.reading(true, 'live', statusWords);
244
- return this.reading(true, 'status', `the live check could not tell (${liveWords}); status: ${statusWords}`);
262
+ return this.reading(true, 'live', statusWords, account);
263
+ return this.reading(true, 'status', `the live check could not tell (${liveWords}); status: ${statusWords}`, account);
245
264
  }
246
- reading(signedIn, check, detail) {
247
- return { signedIn, check, probedAt: new Date(this.now()).toISOString(), detail };
265
+ reading(signedIn, check, detail, account) {
266
+ return { signedIn, check, probedAt: new Date(this.now()).toISOString(), detail, ...(account !== undefined ? { account } : {}) };
248
267
  }
249
268
  stale(hit) {
250
269
  const ttl = hit.signedIn === true ? PROBE_TTL_SIGNED_IN_MS : PROBE_TTL_OTHER_MS;
@@ -1 +1 @@
1
- {"version":3,"file":"seat-probe.js","sourceRoot":"","sources":["../../src/api/seat-probe.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"seat-probe.js","sourceRoot":"","sources":["../../src/api/seat-probe.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,65 @@
1
+ /**
2
+ * Account identifiers never reach the wire (DES-seats-page A8 and A2).
3
+ *
4
+ * A seat's own words ride `GET /roster` as `auth_evidence` and inside `login_note`, and those are
5
+ * the CLI's status output. Signed in, `claude auth status --json` prints the account (`email`,
6
+ * `orgId`, `orgName`) beside the fields the roster needs (`loggedIn`, `authMethod`). `codex login
7
+ * status` prints a masked key prefix ("Logged in using an API key - sk-proj-***"). This module is
8
+ * the one place that turns that output into something the roster may carry:
9
+ *
10
+ * - {@link scrubStatusOutput} reads a JSON status object for its ALLOWLISTED fields only, so an
11
+ * account field that a newer CLI adds is dropped too, and a field this module does not know is
12
+ * never carried;
13
+ * - {@link scrubEvidence} is the second guard for free text: email-like, UUID-like and key-shaped
14
+ * strings are masked, wherever they appear;
15
+ * - {@link accountFromStatus} reads the account KIND (and a provider-public plan name) from the
16
+ * raw output BEFORE the scrub. It never returns an identifier.
17
+ *
18
+ * The roster's evidence fields carry ONLY crew's own vocabulary (codex r2 on #996: no mask can know
19
+ * every shape an identifier takes in a CLI's prose): {@link statusSummary} for a status command,
20
+ * {@link liveSummary} for the live check, `refusalSummary` (seat-health.ts) for a seat's refusal.
21
+ * {@link scrubEvidence} stays as the second guard over all of them.
22
+ *
23
+ * Pure: no IO, no clock.
24
+ */
25
+ /** Mask every account identifier in free text (the second guard; see the module doc). */
26
+ export declare function scrubEvidence(text: string): string;
27
+ /**
28
+ * A CLI's status output reduced to what the roster may carry. JSON objects (claude) keep only the
29
+ * {@link STATUS_ALLOWLIST} fields, re-serialized compactly; anything else goes through
30
+ * {@link scrubEvidence}.
31
+ */
32
+ export declare function scrubStatusOutput(text: string): string;
33
+ /** `RosterSeat.account.kind` (api-types 0.115.0). */
34
+ export type SeatAccountKind = 'subscription' | 'api_key' | 'free' | 'unknown';
35
+ export interface SeatAccount {
36
+ kind: SeatAccountKind;
37
+ /** A provider-public plan name ("Max", "Pro"), only from the fixed table below. */
38
+ plan?: string;
39
+ }
40
+ /**
41
+ * The account kind a seat's auth-status output states, or `undefined` when it states none (the
42
+ * caller then says `unknown`). Read from the RAW output; returns no identifier.
43
+ *
44
+ * - claude (`auth status --json`): `authMethod: "claude.ai"` is a subscription (plan from
45
+ * `subscriptionType`), `"api_key"` an API key;
46
+ * - codex (`login status`): "Logged in using ChatGPT" is a subscription; an API key, an access
47
+ * token or a Bedrock key is `api_key`.
48
+ */
49
+ export declare function accountFromStatus(seatKey: string, stdout: string, stderr?: string): SeatAccount | undefined;
50
+ /** A probe process's outcome, as `seat-probe.ts` reports it (structural). */
51
+ export interface ProbeOutputLike {
52
+ code: number | null;
53
+ stdout: string;
54
+ stderr: string;
55
+ error?: string;
56
+ }
57
+ /**
58
+ * A status command's answer, in crew's words only: claude's JSON reduced to its allowlisted
59
+ * fields (stdout alone — a stderr warning never turns the allowlist off; malformed JSON is
60
+ * withheld, never echoed), codex's known phrase, plus any refusal phrase stderr carried.
61
+ */
62
+ export declare function statusSummary(seatKey: string, out: ProbeOutputLike): string;
63
+ /** The live check's answer, in crew's words only: the refusal phrase, a known blocker, or the exit. */
64
+ export declare function liveSummary(out: ProbeOutputLike): string;
65
+ //# sourceMappingURL=seat-scrub.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"seat-scrub.d.ts","sourceRoot":"","sources":["../../src/api/seat-scrub.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAwBH,yFAAyF;AACzF,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAQlD;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAkBtD;AAED,qDAAqD;AACrD,MAAM,MAAM,eAAe,GAAG,cAAc,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAC;AAE9E,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,eAAe,CAAC;IACtB,mFAAmF;IACnF,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAUD;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,SAAK,GAAG,WAAW,GAAG,SAAS,CAsBvG;AAED,6EAA6E;AAC7E,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAmBD;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,eAAe,GAAG,MAAM,CAgB3E;AAWD,uGAAuG;AACvG,wBAAgB,WAAW,CAAC,GAAG,EAAE,eAAe,GAAG,MAAM,CAOxD"}
@@ -0,0 +1,193 @@
1
+ /**
2
+ * Account identifiers never reach the wire (DES-seats-page A8 and A2).
3
+ *
4
+ * A seat's own words ride `GET /roster` as `auth_evidence` and inside `login_note`, and those are
5
+ * the CLI's status output. Signed in, `claude auth status --json` prints the account (`email`,
6
+ * `orgId`, `orgName`) beside the fields the roster needs (`loggedIn`, `authMethod`). `codex login
7
+ * status` prints a masked key prefix ("Logged in using an API key - sk-proj-***"). This module is
8
+ * the one place that turns that output into something the roster may carry:
9
+ *
10
+ * - {@link scrubStatusOutput} reads a JSON status object for its ALLOWLISTED fields only, so an
11
+ * account field that a newer CLI adds is dropped too, and a field this module does not know is
12
+ * never carried;
13
+ * - {@link scrubEvidence} is the second guard for free text: email-like, UUID-like and key-shaped
14
+ * strings are masked, wherever they appear;
15
+ * - {@link accountFromStatus} reads the account KIND (and a provider-public plan name) from the
16
+ * raw output BEFORE the scrub. It never returns an identifier.
17
+ *
18
+ * The roster's evidence fields carry ONLY crew's own vocabulary (codex r2 on #996: no mask can know
19
+ * every shape an identifier takes in a CLI's prose): {@link statusSummary} for a status command,
20
+ * {@link liveSummary} for the live check, `refusalSummary` (seat-health.ts) for a seat's refusal.
21
+ * {@link scrubEvidence} stays as the second guard over all of them.
22
+ *
23
+ * Pure: no IO, no clock.
24
+ */
25
+ import { refusalSummary } from './seat-health.js';
26
+ /** The fields of a JSON auth-status object the roster may carry. Everything else is dropped. */
27
+ const STATUS_ALLOWLIST = ['loggedIn', 'authMethod', 'apiProvider'];
28
+ const EMAIL_RE = /[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}/g;
29
+ const UUID_RE = /\b[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\b/gi;
30
+ /** A provider key prefix with whatever follows it (masked or not): `sk-…`, `sk-ant-…`, `ghp_…`,
31
+ * `gho_…`, `github_pat_…`, `xox?-…`, `AKIA…`. */
32
+ const KEY_PREFIX_RE = /\b(?:sk-[A-Za-z0-9_*.-]*|gh[pousr]_[A-Za-z0-9_*]*|github_pat_[A-Za-z0-9_*]*|xox[abprs]-[A-Za-z0-9*-]*|AKIA[A-Z0-9*]*)/g;
33
+ /** A long unbroken token (24+ chars of a key alphabet, holding a digit or a capital): an access
34
+ * token, a bearer, a hash. Version strings never reach this length without a separator, and a
35
+ * snake_case word (`read_only_requires_wrapped`) holds neither. */
36
+ const LONG_TOKEN_RE = /\b(?=[A-Za-z0-9_\-]*[0-9A-Z])[A-Za-z0-9_\-]{24,}\b/g;
37
+ /** `Bearer <token>` / `Basic <token>`: whatever follows the scheme. */
38
+ const AUTH_SCHEME_RE = /\b(Bearer|Basic|Token)\s+[^\s,;)}\]]+/gi;
39
+ /** `key: value` / `key=value` pairs whose key names an account identifier or a secret. The value is
40
+ * masked to the end of its clause — a quoted string, or everything up to `,` `;` `)` `}` `]` or the
41
+ * line's end — so a multi-word name ("organization: Acme Research Ltd") goes whole. */
42
+ const ACCOUNT_PAIR_RE = /("?(?:e-?mail|email_?address|account(?:_?id|_?uuid|_?name)?|org(?:ani[sz]ation)?(?:_?id|_?uuid|_?name)?|team(?:_?id|_?name)?|workspace(?:_?id|_?name)?|tenant(?:_?id)?|user(?:_?id|_?name)?|login|username|(?:access_?|refresh_?|id_?|session_?|auth_?)?token|api_?key|secret|password|passwd|credentials?|authorization|cookie)"?\s*[:=]\s*)("[^"]*"|[^,;)}\]\n]+)/gi;
43
+ /** Mask every account identifier in free text (the second guard; see the module doc). */
44
+ export function scrubEvidence(text) {
45
+ return text
46
+ .replace(ACCOUNT_PAIR_RE, (_m, key, value) => `${key}${value.startsWith('"') ? '"<redacted>"' : '<redacted>'}`)
47
+ .replace(AUTH_SCHEME_RE, (_m, scheme) => `${scheme} <redacted>`)
48
+ .replace(EMAIL_RE, '<email>')
49
+ .replace(UUID_RE, '<id>')
50
+ .replace(KEY_PREFIX_RE, '<key>')
51
+ .replace(LONG_TOKEN_RE, '<redacted>');
52
+ }
53
+ /**
54
+ * A CLI's status output reduced to what the roster may carry. JSON objects (claude) keep only the
55
+ * {@link STATUS_ALLOWLIST} fields, re-serialized compactly; anything else goes through
56
+ * {@link scrubEvidence}.
57
+ */
58
+ export function scrubStatusOutput(text) {
59
+ const trimmed = text.trim();
60
+ if (trimmed.startsWith('{')) {
61
+ try {
62
+ const parsed = JSON.parse(trimmed);
63
+ if (typeof parsed === 'object' && parsed !== null && !Array.isArray(parsed)) {
64
+ const kept = {};
65
+ for (const k of STATUS_ALLOWLIST) {
66
+ const v = parsed[k];
67
+ if (typeof v === 'boolean' || typeof v === 'number' || (typeof v === 'string' && v.length <= 40))
68
+ kept[k] = v;
69
+ }
70
+ return scrubEvidence(JSON.stringify(kept));
71
+ }
72
+ }
73
+ catch {
74
+ /* not one JSON object: the text guard below */
75
+ }
76
+ }
77
+ return scrubEvidence(text);
78
+ }
79
+ /** Provider-public plan names, by the status output's own token. Anything else is not carried. */
80
+ const CLAUDE_PLANS = Object.freeze({
81
+ max: 'Max',
82
+ pro: 'Pro',
83
+ team: 'Team',
84
+ enterprise: 'Enterprise',
85
+ });
86
+ /**
87
+ * The account kind a seat's auth-status output states, or `undefined` when it states none (the
88
+ * caller then says `unknown`). Read from the RAW output; returns no identifier.
89
+ *
90
+ * - claude (`auth status --json`): `authMethod: "claude.ai"` is a subscription (plan from
91
+ * `subscriptionType`), `"api_key"` an API key;
92
+ * - codex (`login status`): "Logged in using ChatGPT" is a subscription; an API key, an access
93
+ * token or a Bedrock key is `api_key`.
94
+ */
95
+ export function accountFromStatus(seatKey, stdout, stderr = '') {
96
+ if (seatKey === 'claude') {
97
+ try {
98
+ const parsed = JSON.parse(stdout.trim());
99
+ if (parsed.loggedIn !== true)
100
+ return undefined;
101
+ if (parsed.authMethod === 'claude.ai') {
102
+ const plan = typeof parsed.subscriptionType === 'string' ? CLAUDE_PLANS[parsed.subscriptionType.toLowerCase()] : undefined;
103
+ return { kind: 'subscription', ...(plan !== undefined ? { plan } : {}) };
104
+ }
105
+ if (parsed.authMethod === 'api_key')
106
+ return { kind: 'api_key' };
107
+ return { kind: 'unknown' };
108
+ }
109
+ catch {
110
+ return undefined;
111
+ }
112
+ }
113
+ if (seatKey === 'codex') {
114
+ const said = `${stdout}\n${stderr}`;
115
+ if (/logged in using chatgpt/i.test(said))
116
+ return { kind: 'subscription' };
117
+ if (/logged in using (?:an api key|amazon bedrock|(?:a )?(?:personal )?access token)/i.test(said))
118
+ return { kind: 'api_key' };
119
+ if (/logged in using/i.test(said))
120
+ return { kind: 'unknown' };
121
+ }
122
+ return undefined;
123
+ }
124
+ /** Why a probe process did not answer, in crew's words. */
125
+ function processFailure(error) {
126
+ if (/ENOENT/.test(error))
127
+ return 'the CLI is not installed (ENOENT)';
128
+ if (/ETIMEDOUT|timed? ?out|SIGTERM|killed/i.test(error))
129
+ return 'timed out';
130
+ return 'the CLI did not run';
131
+ }
132
+ /** codex `login status` phrases (codex 0.16x), the only words carried from its output. */
133
+ const CODEX_STATUS_PHRASES = [
134
+ /Not logged in/i,
135
+ /Logged in using ChatGPT/i,
136
+ /Logged in using an API key/i,
137
+ /Logged in using Amazon Bedrock (?:API key|AWS access keys)/i,
138
+ /Logged in using (?:personal )?access token/i,
139
+ /Logged in using workload identity/i,
140
+ ];
141
+ /**
142
+ * A status command's answer, in crew's words only: claude's JSON reduced to its allowlisted
143
+ * fields (stdout alone — a stderr warning never turns the allowlist off; malformed JSON is
144
+ * withheld, never echoed), codex's known phrase, plus any refusal phrase stderr carried.
145
+ */
146
+ export function statusSummary(seatKey, out) {
147
+ if (out.error !== undefined || out.code === null)
148
+ return processFailure(out.error ?? '');
149
+ let main;
150
+ if (seatKey === 'claude') {
151
+ const stdout = out.stdout.trim();
152
+ main =
153
+ stdout.startsWith('{') && isJsonObject(stdout)
154
+ ? scrubStatusOutput(stdout)
155
+ : (refusalSummary(out.stdout) ?? `exit ${out.code}: the status output is not JSON (withheld)`);
156
+ }
157
+ else {
158
+ const said = `${out.stdout}\n${out.stderr}`;
159
+ const phrase = CODEX_STATUS_PHRASES.map((re) => re.exec(said)?.[0]).find((p) => p !== undefined);
160
+ main = phrase ?? `exit ${out.code}: the status output is withheld`;
161
+ }
162
+ const refused = refusalSummary(out.stderr);
163
+ return scrubEvidence(refused !== null && !main.toLowerCase().includes(refused.toLowerCase()) ? `${main}; ${refused}` : main);
164
+ }
165
+ /** What stops a live request, beyond a refusal for want of a credential (crew's words). */
166
+ const LIVE_BLOCKERS = [
167
+ [/usage limit/i, 'usage limit'],
168
+ [/rate[ -]?limit/i, 'rate limit'],
169
+ [/quota/i, 'quota'],
170
+ [/overloaded/i, 'overloaded'],
171
+ [/stream disconnected|ECONNRESET|ECONNREFUSED|ENOTFOUND|network/i, 'network'],
172
+ ];
173
+ /** The live check's answer, in crew's words only: the refusal phrase, a known blocker, or the exit. */
174
+ export function liveSummary(out) {
175
+ if (out.error !== undefined || out.code === null)
176
+ return processFailure(out.error ?? '');
177
+ const said = `${out.stdout}\n${out.stderr}`;
178
+ const refused = refusalSummary(said);
179
+ if (refused !== null)
180
+ return scrubEvidence(refused);
181
+ const blocker = LIVE_BLOCKERS.find(([re]) => re.test(said))?.[1];
182
+ return blocker !== undefined ? `exit ${out.code}: ${blocker}` : `exit ${out.code}`;
183
+ }
184
+ function isJsonObject(text) {
185
+ try {
186
+ const v = JSON.parse(text);
187
+ return typeof v === 'object' && v !== null && !Array.isArray(v);
188
+ }
189
+ catch {
190
+ return false;
191
+ }
192
+ }
193
+ //# sourceMappingURL=seat-scrub.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"seat-scrub.js","sourceRoot":"","sources":["../../src/api/seat-scrub.ts"],"names":[],"mappings":"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"}
@@ -44,11 +44,12 @@ import type { SeatProbeReading } from './seat-probe.js';
44
44
  export declare function plainEvidence(detail: string): string | null;
45
45
  /**
46
46
  * `auth_evidence` with the operator's home directory written `~` (crew#771: screen shares and
47
- * recordings). Only the home as a whole path segment — `/home/al` never eats the start of
47
+ * recordings). A command's display passes `$HOME` instead (`seat-agents.ts`): it expands inside the
48
+ * double quotes the engine puts around a seat's root, where `~` does not. Only the home as a whole path segment — `/home/al` never eats the start of
48
49
  * `/home/alice` — and in every separator spelling: `/`, `\`, and the JSON-escaped `\\` a Windows
49
50
  * home takes inside a CLI's JSON status (codex on #797). A root home (`/`) is left alone.
50
51
  */
51
- export declare function homeless(detail: string, home?: string): string;
52
+ export declare function homeless(detail: string, home?: string, replacement?: string): string;
52
53
  /** The seat's auth state, read for what it MEANS for the seat's usability. */
53
54
  export type SeatAuth = 'signed_in' | 'signed_out' | 'not_required' | 'unknown';
54
55
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"seat-standing.d.ts","sourceRoot":"","sources":["../../src/api/seat-standing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"seat-standing.d.ts","sourceRoot":"","sources":["../../src/api/seat-standing.ts"],"names":[],"mappings":"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"}
@@ -59,11 +59,12 @@ function escapeRegExp(s) {
59
59
  }
60
60
  /**
61
61
  * `auth_evidence` with the operator's home directory written `~` (crew#771: screen shares and
62
- * recordings). Only the home as a whole path segment — `/home/al` never eats the start of
62
+ * recordings). A command's display passes `$HOME` instead (`seat-agents.ts`): it expands inside the
63
+ * double quotes the engine puts around a seat's root, where `~` does not. Only the home as a whole path segment — `/home/al` never eats the start of
63
64
  * `/home/alice` — and in every separator spelling: `/`, `\`, and the JSON-escaped `\\` a Windows
64
65
  * home takes inside a CLI's JSON status (codex on #797). A root home (`/`) is left alone.
65
66
  */
66
- export function homeless(detail, home = homedir()) {
67
+ export function homeless(detail, home = homedir(), replacement = '~') {
67
68
  const trimmed = home.replace(/[\\/]+$/, '');
68
69
  if (trimmed === '')
69
70
  return detail;
@@ -71,7 +72,7 @@ export function homeless(detail, home = homedir()) {
71
72
  const spellings = new Set([trimmed, trimmed.replace(/\\/g, '/'), back, back.replace(/\\/g, '\\\\')]);
72
73
  let out = detail;
73
74
  for (const h of [...spellings].sort((a, b) => b.length - a.length))
74
- out = out.replace(new RegExp(`${escapeRegExp(h)}(?=$|[\\\\/\\s"'),;:])`, 'g'), '~');
75
+ out = out.replace(new RegExp(`${escapeRegExp(h)}(?=$|[\\\\/\\s"'),;:])`, 'g'), () => replacement);
75
76
  return out;
76
77
  }
77
78
  /**
@@ -154,10 +155,10 @@ export function seatStanding(seat, signedIn, authFailure = null, probeInput = un
154
155
  ...base,
155
156
  council_eligible: false,
156
157
  council_ineligible_reason: authFailure !== null
157
- ? `signed out — the seat itself reported no credential (${noCredentialCause(authFailure)}); sign it in from the System page`
158
+ ? `signed out — the seat itself reported no credential (${noCredentialCause(authFailure)}); sign it in from the Agents page`
158
159
  : read.auth_source === 'probe'
159
- ? `signed out — the seat's own auth check says ${probeWords(read.auth_evidence)}; sign it in from the System page`
160
- : 'signed out — a council would bench this seat on its first ballot; sign it in from the System page',
160
+ ? `signed out — the seat's own auth check says ${probeWords(read.auth_evidence)}; sign it in from the Agents page`
161
+ : 'signed out — a council would bench this seat on its first ballot; sign it in from the Agents page',
161
162
  };
162
163
  }
163
164
  // A seat the ENGINE benched in a recent run on its own refusal (`seatBenched`: out of quota, not
@@ -217,7 +218,7 @@ kind = 'pool') {
217
218
  const reasons = [];
218
219
  let source = 'scope';
219
220
  if (!authUsable(auth)) {
220
- reasons.push('signed out — it cannot take a turn until it is signed in from the System page');
221
+ reasons.push('signed out — it cannot take a turn until it is signed in from the Agents page');
221
222
  source = 'auth';
222
223
  }
223
224
  if (seat.enabled_for_council === false) {
@@ -1 +1 @@
1
- {"version":3,"file":"seat-standing.js","sourceRoot":"","sources":["../../src/api/seat-standing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"seat-standing.js","sourceRoot":"","sources":["../../src/api/seat-standing.ts"],"names":[],"mappings":"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"}