@eddyskywalker/dsh-chatgpt-subscription 0.52.0 → 0.53.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/index.js CHANGED
@@ -146,7 +146,7 @@ const ROUTE_PREFIX$5 = "/api/dsh-chatgpt-subscription";
146
146
  * `test/responses-client.test.ts` asserts the two agree, so a release that
147
147
  * forgets this constant fails the suite instead of shipping quietly.
148
148
  */
149
- const PLUGIN_VERSION = "0.52.0";
149
+ const PLUGIN_VERSION = "0.53.0";
150
150
  const CODEX_CHATGPT_PROVIDER_ID = "codex-chatgpt";
151
151
  const CODEX_API_BASE = "https://chatgpt.com/backend-api/codex";
152
152
  const CODEX_RESPONSES_URL = `${CODEX_API_BASE}/responses`;
@@ -2272,13 +2272,22 @@ var AccountPoolCore = class {
2272
2272
  return result;
2273
2273
  });
2274
2274
  }
2275
+ /**
2276
+ * Public summaries of a document the caller already read.
2277
+ *
2278
+ * A caller that needs both the rows and which one would serve the next
2279
+ * request must not read the pool twice: the two reads can straddle a write,
2280
+ * and the answer would then name one account while listing another
2281
+ * generation's state. Reading is not free either — an encrypted round trip,
2282
+ * a DPAPI unprotect on Windows.
2283
+ */
2284
+ summariesOf(data) {
2285
+ const now = Date.now();
2286
+ return data.accounts.map((account) => this.summarize(account, now));
2287
+ }
2275
2288
  /** Public summaries, with cooldowns that already expired reported as absent. */
2276
2289
  async listAccounts() {
2277
- const data = await this.read();
2278
- const now = Date.now();
2279
- return data.accounts.map((account) => {
2280
- return this.summarize(account, now);
2281
- });
2290
+ return this.summariesOf(await this.read());
2282
2291
  }
2283
2292
  summarize(account, now) {
2284
2293
  const expires = this.hooks.expiresAt?.(account.credentials);
@@ -2334,7 +2343,7 @@ var AccountPoolCore = class {
2334
2343
  };
2335
2344
  if (existingIndex >= 0) data.accounts[existingIndex] = account;
2336
2345
  else data.accounts.push(account);
2337
- if (!data.activeAccountId || account.isPrimary) data.activeAccountId = account.id;
2346
+ if (!data.activeAccountId) data.activeAccountId = account.id;
2338
2347
  return account;
2339
2348
  }
2340
2349
  setPrimary(accountId) {
@@ -29556,6 +29565,8 @@ async function runDeviceLogin(options) {
29556
29565
  ...identity.nickname === void 0 ? {} : { nickname: identity.nickname }
29557
29566
  };
29558
29567
  const credentials = options.enrich === void 0 ? signedIn : await options.enrich(signedIn).catch(() => signedIn);
29568
+ const refusal = options.accept?.(credentials) ?? null;
29569
+ if (refusal !== null) throw new Error(refusal);
29559
29570
  await options.store.write(credentials);
29560
29571
  if (options.onSave) await options.onSave(credentials).catch(() => void 0);
29561
29572
  await persistRegion(options.region);
@@ -29605,7 +29616,8 @@ async function beginWebLogin(store, options = {}) {
29605
29616
  signal: controller.signal,
29606
29617
  open,
29607
29618
  ...options.onSave === void 0 ? {} : { onSave: options.onSave },
29608
- ...options.enrich === void 0 ? {} : { enrich: options.enrich }
29619
+ ...options.enrich === void 0 ? {} : { enrich: options.enrich },
29620
+ ...options.accept === void 0 ? {} : { accept: options.accept }
29609
29621
  });
29610
29622
  webLoginFlow = {
29611
29623
  ...webLoginFlow,
@@ -36161,7 +36173,7 @@ async function getKimiCodeWebStatus(store, modelSettings, preferences, options =
36161
36173
  const credentials = await store.read();
36162
36174
  const settings = preferences ? preferences.status() : await modelSettings.read();
36163
36175
  const poolData = accountPool === void 0 ? null : await accountPool.read().catch(() => null);
36164
- const accounts = accountPool === void 0 ? [] : await accountPool.listAccounts().catch(() => []);
36176
+ const accounts = accountPool === void 0 || poolData === null ? [] : accountPool.summariesOf(poolData);
36165
36177
  const activeAccount = accounts.find((entry) => entry.id === poolData?.activeAccountId) ?? accounts.find((entry) => entry.isPrimary) ?? accounts[0];
36166
36178
  const activePoolAccount = poolData === null ? void 0 : poolData.accounts.find((entry) => entry.id === poolData.activeAccountId) ?? poolData.accounts.find((entry) => entry.isPrimary) ?? poolData.accounts[0];
36167
36179
  const active = (accountPool === void 0 || activePoolAccount === void 0 ? void 0 : await accountPool.getFreshCredential(activePoolAccount.id, options.fetchFn ?? fetch).catch(() => void 0)) ?? activePoolAccount?.credentials ?? credentials;
@@ -36339,6 +36351,31 @@ function hitRatioOf(cached, fresh) {
36339
36351
  const total = cached + fresh;
36340
36352
  return total > 0 ? cached / total : null;
36341
36353
  }
36354
+ /**
36355
+ * Name the account a re-authorization has to sign back in as.
36356
+ *
36357
+ * `relogin` on the card clears one row's failure marker and then runs an ordinary
36358
+ * device-code sign-in, which authorizes whichever account the browser already
36359
+ * is. Without this check the pool could accept a DIFFERENT account, replace that
36360
+ * account's row and move the rotation with it, while the row the user clicked
36361
+ * stayed broken — the card then looked like the pool had switched on its own.
36362
+ *
36363
+ * The comparison is over identity, never tokens: the account id the token
36364
+ * carries, and only when neither side carries one, the address.
36365
+ */
36366
+ async function signInGuard(pool, accountId) {
36367
+ const row = (await pool.read().catch(() => null))?.accounts.find((account) => account.id === accountId);
36368
+ if (row === void 0) return () => "要重新登录的账号已不在号池中,本次登录已取消,号池未改动。";
36369
+ const expectedUserId = row.userId ?? row.credentials.userId;
36370
+ const expectedEmail = (row.email ?? row.credentials.email)?.trim().toLowerCase() || void 0;
36371
+ return (credentials) => {
36372
+ const signedUserId = credentials.userId;
36373
+ const signedEmail = credentials.email?.trim().toLowerCase() || void 0;
36374
+ if (expectedUserId !== void 0 && signedUserId !== void 0 ? expectedUserId === signedUserId : expectedEmail !== void 0 && signedEmail !== void 0 ? expectedEmail === signedEmail : true) return null;
36375
+ const signedName = credentials.email ?? signedUserId ?? "未知账号";
36376
+ return `重新登录的是「${row.alias}」,本次登录的却是「${signedName}」,已取消,号池与凭据都没有改动。`;
36377
+ };
36378
+ }
36342
36379
  /** Register the Kimi Code settings routes under `/kimi-code/api`. */
36343
36380
  function registerKimiCodeRoutes(ctx, store, modelSettings, preferences, options = {}, accountPool = options.accountPool) {
36344
36381
  const fetchFn = options.fetchFn ?? fetch;
@@ -36490,12 +36527,15 @@ function registerKimiCodeRoutes(ctx, store, modelSettings, preferences, options
36490
36527
  });
36491
36528
  const body = await readRequestJson$9(request);
36492
36529
  const requested = isRegion$4(body.region) ? body.region : void 0;
36530
+ const expectAccountId = typeof body.accountId === "string" ? body.accountId : void 0;
36531
+ const accept = accountPool === void 0 || expectAccountId === void 0 ? void 0 : await signInGuard(accountPool, expectAccountId);
36493
36532
  return sendJson$9(response, 200, {
36494
36533
  ok: true,
36495
36534
  value: await beginWebLogin(store, {
36496
36535
  fetchFn,
36497
36536
  region: requested,
36498
36537
  openBrowser: options.openBrowser,
36538
+ ...accept === void 0 ? {} : { accept },
36499
36539
  enrich: async (credentials) => {
36500
36540
  const profile = await fetchProfile(store, {
36501
36541
  fetchFn,
@@ -86720,39 +86760,68 @@ const HEADER_SCHEMA = z.strictObject({
86720
86760
  ]).optional()
86721
86761
  });
86722
86762
  /**
86763
+ * 每种角色**允许携带**的字段集。
86764
+ *
86765
+ * 同一个字段集只写一次:它既出现在 kind 违规的拒绝文案尾部(模型被拒时当场
86766
+ * 唯一的纠错入口),也出现在守卫的两条 `MANDATE_KIND` 拒绝里。文案与 schema
86767
+ * 各写一套,迟早会重演"样板自己非法"那类事故。
86768
+ */
86769
+ const MANDATE_KIND_FIELDS = {
86770
+ dispatch: "v, kind, brief_id, run_id, idem, mandate_version, prompt_ref, policy, task, boundary, followup, parent_mandate",
86771
+ report: "v, kind, brief_id, run_id, idem, mandate_version, prompt_ref, policy, status",
86772
+ steer: "v, kind, brief_id, run_id, idem, mandate_version, prompt_ref, policy, grant"
86773
+ };
86774
+ /**
86775
+ * 拼出"这个方向到底该带什么"的纠错尾巴。
86776
+ *
86777
+ * 拒绝文案只说"不许带 X"时,模型只能逐个字段试错——它反复写不对的原因正在这里。
86778
+ * 把该方向的字段集直接贴在违规说明后面,一次往返就能改对。
86779
+ * @param kind - 声明了角色、却用错了字段的那种角色。
86780
+ * @returns 追加在违规说明之后的纠错尾巴。
86781
+ */
86782
+ function kindRepairHint(kind) {
86783
+ return " (a " + kind + " header carries exactly: " + MANDATE_KIND_FIELDS[kind] + "; copy the ready-to-send block from dispatch_ledger {action:\"self\"})";
86784
+ }
86785
+ /**
86723
86786
  * 校验 kind 与字段的组合。
86724
86787
  *
86725
86788
  * 字段是"按角色出现"的:dispatch 带 task/boundary/followup/parent_mandate,
86726
86789
  * report 带 status,steer 带 grant。组合不合法 = 头部损坏,而不是"忽略
86727
86790
  * 多余字段"——多带字段往往意味着模型抄错了角色。
86791
+ *
86792
+ * `null` 与"没写"同义:schema 把 parent_mandate / grant 声明成 nullable,模型
86793
+ * 也习惯把用不到的字段写成 null。把 null 当成"携带了这个字段",等于拒绝一个
86794
+ * 语义上完全正确、只是写法啰嗦的头部。
86728
86795
  * @param header - 已通过 schema 的头部。
86729
86796
  * @returns 违规说明;合法时 undefined。
86730
86797
  */
86731
86798
  function kindViolation(header) {
86799
+ const carriedParent = header.parent_mandate !== void 0 && header.parent_mandate !== null;
86800
+ const carriedGrant = header.grant !== void 0 && header.grant !== null;
86732
86801
  if (header.kind === "dispatch") {
86733
- if (header.task === void 0) return "a dispatch header must carry task";
86734
- if (header.boundary === void 0) return "a dispatch header must carry boundary";
86735
- if (header.followup === void 0) return "a dispatch header must carry followup";
86736
- if (header.parent_mandate === void 0) return "a dispatch header must carry parent_mandate";
86737
- if (header.grant !== void 0) return "a dispatch header must not carry grant";
86738
- if (header.status !== void 0) return "a dispatch header must not carry status";
86802
+ if (header.task === void 0) return "a dispatch header must carry task" + kindRepairHint("dispatch");
86803
+ if (header.boundary === void 0) return "a dispatch header must carry boundary" + kindRepairHint("dispatch");
86804
+ if (header.followup === void 0) return "a dispatch header must carry followup" + kindRepairHint("dispatch");
86805
+ if (header.parent_mandate === void 0) return "a dispatch header must carry parent_mandate" + kindRepairHint("dispatch");
86806
+ if (carriedGrant) return "a dispatch header must not carry grant" + kindRepairHint("dispatch");
86807
+ if (header.status !== void 0) return "a dispatch header must not carry status" + kindRepairHint("dispatch");
86739
86808
  return;
86740
86809
  }
86741
86810
  if (header.kind === "report") {
86742
- if (header.status === void 0) return "a report header must carry status";
86743
- if (header.task !== void 0) return "a report header must not carry task";
86744
- if (header.boundary !== void 0) return "a report header must not carry boundary";
86745
- if (header.followup !== void 0) return "a report header must not carry followup";
86746
- if (header.parent_mandate !== void 0) return "a report header must not carry parent_mandate";
86747
- if (header.grant !== void 0) return "a report header must not carry grant";
86811
+ if (header.status === void 0) return "a report header must carry status" + kindRepairHint("report");
86812
+ if (header.task !== void 0) return "a report header must not carry task" + kindRepairHint("report");
86813
+ if (header.boundary !== void 0) return "a report header must not carry boundary" + kindRepairHint("report");
86814
+ if (header.followup !== void 0) return "a report header must not carry followup" + kindRepairHint("report");
86815
+ if (carriedParent) return "a report header must not carry parent_mandate" + kindRepairHint("report");
86816
+ if (carriedGrant) return "a report header must not carry grant" + kindRepairHint("report");
86748
86817
  return;
86749
86818
  }
86750
- if (header.grant === void 0) return "a steer header must carry grant";
86751
- if (header.status !== void 0) return "a steer header must not carry status";
86752
- if (header.task !== void 0) return "a steer header must not carry task";
86753
- if (header.boundary !== void 0) return "a steer header must not carry boundary";
86754
- if (header.followup !== void 0) return "a steer header must not carry followup";
86755
- if (header.parent_mandate !== void 0) return "a steer header must not carry parent_mandate";
86819
+ if (header.grant === void 0) return "a steer header must carry grant" + kindRepairHint("steer");
86820
+ if (header.status !== void 0) return "a steer header must not carry status" + kindRepairHint("steer");
86821
+ if (header.task !== void 0) return "a steer header must not carry task" + kindRepairHint("steer");
86822
+ if (header.boundary !== void 0) return "a steer header must not carry boundary" + kindRepairHint("steer");
86823
+ if (header.followup !== void 0) return "a steer header must not carry followup" + kindRepairHint("steer");
86824
+ if (carriedParent) return "a steer header must not carry parent_mandate" + kindRepairHint("steer");
86756
86825
  }
86757
86826
  /**
86758
86827
  * 解析一段文本里的 Mandate v2 头部。
@@ -88616,7 +88685,7 @@ function createDispatchLedgerGuard(options) {
88616
88685
  if (parsed.state === "invalid" || parsed.header === void 0) return dispatchDenial("MANDATE_MALFORMED", "the mandate header could not be parsed (" + (parsed.reason ?? "unknown reason") + ").");
88617
88686
  const header = parsed.header;
88618
88687
  if (isDispatch) {
88619
- if (header.kind !== "dispatch") return dispatchDenial("MANDATE_KIND", "a dispatch call must carry a kind \"dispatch\" header.");
88688
+ if (header.kind !== "dispatch") return dispatchDenial("MANDATE_KIND", "a dispatch call must carry a kind \"dispatch\" header. A dispatch header carries exactly: " + MANDATE_KIND_FIELDS.dispatch + " (copy the ready-to-send block from dispatch_ledger {action:\"self\"}).");
88620
88689
  const session = sessionOfAgent$1(execution?.agent);
88621
88690
  const state = session === void 0 ? initialDispatchLedgerState() : cache.fold(session);
88622
88691
  const policy = options.policyFor?.(session ?? { id: "" });
@@ -88627,7 +88696,7 @@ function createDispatchLedgerGuard(options) {
88627
88696
  if (denial === void 0 && issuer !== void 0 && callId !== void 0) reservations.reserve(issuer, ns, callId);
88628
88697
  return denial;
88629
88698
  }
88630
- if (header.kind === "dispatch") return dispatchDenial("MANDATE_KIND", "a dispatch header belongs to the delegation tool, not send_message.");
88699
+ if (header.kind === "dispatch") return dispatchDenial("MANDATE_KIND", "a dispatch header belongs to the delegation tool, not send_message. A report header carries exactly: " + MANDATE_KIND_FIELDS.report + "; a steer header exactly: " + MANDATE_KIND_FIELDS.steer + ".");
88631
88700
  const targetId = asString$2(args["agent_id"]);
88632
88701
  if (targetId === void 0) return void 0;
88633
88702
  const sessions = sessionsOf();
@@ -88686,64 +88755,60 @@ function installDispatchLedgerGuard(ctx, options = {}) {
88686
88755
  const DISPATCH_MANDATE_PROTOCOL = [
88687
88756
  "Dispatch Ledger - Mandate protocol v2",
88688
88757
  "",
88689
- "1. HEADER. Put the fenced block below at the VERY START of the text you pass to",
88690
- "`subagent.prompt` (dispatch) or to `send_message.message` (report/steer).",
88691
- "Nothing may precede it. The task text follows the closing fence.",
88758
+ "1. HEADER. Put ONE fenced block at the VERY START of the text you pass to",
88759
+ "`subagent.prompt` (dispatch) or `send_message.message` (report/steer). Nothing",
88760
+ "may precede it; the body follows the closing fence.",
88692
88761
  "",
88693
88762
  "```dsh-mandate-v2",
88694
- "{\"v\":2,\"kind\":\"dispatch\",\"brief_id\":\"b-7f\",\"run_id\":\"r-1\",\"idem\":\"i-1\",\"mandate_version\":1,\"prompt_ref\":\"plan-v3\",\"policy\":{\"id\":\"dsh-dispatch-ledger\",\"version\":\"1\",\"sha256\":\"3f9a1c2b3c4d5e6f\"},\"task\":[\"task://req-42\"],\"boundary\":[\"src/host/dispatch-ledger/**\"],\"followup\":[\"ctx://plan-v3\"],\"parent_mandate\":null,\"grant\":null}",
88763
+ "{\"v\":2,\"kind\":\"dispatch\",\"brief_id\":\"b-7f\",\"run_id\":\"r-1\",\"idem\":\"i-1\",\"mandate_version\":1,\"prompt_ref\":\"plan-v3\",\"policy\":{\"id\":\"dsh-dispatch-ledger\",\"version\":\"1\",\"sha256\":\"3f9a1c2b3c4d5e6f\"},\"task\":[\"task://req-42\"],\"boundary\":[\"src/host/dispatch-ledger/**\"],\"followup\":[\"ctx://plan-v3\"],\"parent_mandate\":null}",
88695
88764
  "```",
88696
88765
  "",
88697
- "2. FIELDS.",
88698
- "v = 2 (anything else is malformed).",
88699
- "kind: \"dispatch\" (new delegation), \"report\" (child -> owner), \"steer\" (owner -> child).",
88700
- "brief_id: the work item. Stable across runs. <=64 chars, [A-Za-z0-9._:-].",
88701
- "run_id: one dispatch attempt. Use a NEW value after a hand_back.",
88702
- "idem: idempotency key inside one run. Use a NEW value after a hand_back.",
88703
- "mandate_version: 1 (the authorization snapshot version).",
88704
- "prompt_ref: copy it verbatim from dispatch_ledger {action:\"self\"} (the prompt_ref field of",
88705
- " that result). Never invent one. A report or a steer MUST echo the mandate's own",
88706
- " prompt_ref unchanged.",
88707
- "policy: {id, version, sha256} copied verbatim from dispatch_ledger {action:\"self\"}.",
88708
- " sha256 is the first 12 or more hex characters the tool printed.",
88709
- "task: <=4 references (<=160 chars each) naming the original request. NOT the request text.",
88710
- "boundary: <=16 structured boundary entries (<=120 chars each), e.g. \"src/host/dispatch-ledger/**\".",
88711
- "followup: <=8 references (<=120 chars each) naming the context this delegation may later ask for.",
88712
- "parent_mandate: null on the first run of a brief; a later run must set {brief_id, run_id, idem}",
88713
- " of the run it replaces.",
88714
- "grant (steer only): null, or {context:[...]} where every entry is already in that run followup.",
88715
- "status (report only): ready | hand_back | blocked | failed | dropped.",
88716
- "The body after the closing fence is sealed by the host: it computes the sha256 and",
88717
- " stores it in the ledger. Do NOT put a hash in the header: an unknown field makes",
88718
- " the header malformed.",
88766
+ "2. PER KIND. Each kind carries its own fields and NO others: one foreign field",
88767
+ "makes the whole header malformed.",
88768
+ "- dispatch: the block above. task: <=4 references (<=160 chars) naming the",
88769
+ " request, NOT its text. boundary: <=16 entries (<=120 chars). followup: <=8",
88770
+ " references (<=120 chars). parent_mandate: null on the first run of a brief,",
88771
+ " else the {brief_id, run_id, idem} of the run this one replaces.",
88772
+ "- report: the same block MINUS task, boundary, followup and parent_mandate, PLUS",
88773
+ " \"status\":\"ready\"|\"hand_back\"|\"blocked\"|\"failed\"|\"dropped\". Take brief_id,",
88774
+ " run_id, idem, prompt_ref and policy from YOUR OWN mandate - read them with",
88775
+ " dispatch_ledger {action:\"self\"} - never from the message you received.",
88776
+ "- steer: the same block MINUS task, boundary, followup and parent_mandate, PLUS",
88777
+ " \"grant\": {\"context\":[\"...\"]} (entries already in that run followup) or null.",
88778
+ "",
88779
+ "3. FIELDS. v = 2, mandate_version = 1. brief_id: the work item, stable across",
88780
+ "runs, <=64 chars from [A-Za-z0-9._:-]. run_id: one dispatch attempt. idem: the",
88781
+ "idempotency key inside one run; both are NEW after a hand_back. prompt_ref and",
88782
+ "policy: copy verbatim from dispatch_ledger {action:\"self\"}; never invent them.",
88783
+ "The host seals the body by hashing it, so never put a hash in the header: an",
88784
+ "unknown field makes the header malformed.",
88719
88785
  "",
88720
- "3. FLOW.",
88721
- "a. Call dispatch_ledger {action:\"self\"} ONCE. Copy policy from the result. This protocol is",
88722
- " printed at the TAIL of that result.",
88723
- "b. Dispatch: header (kind=dispatch) then the task text, in `subagent.prompt`.",
88786
+ "4. FLOW.",
88787
+ "a. Call dispatch_ledger {action:\"self\"} ONCE. Copy policy and prompt_ref from it;",
88788
+ " this protocol is printed at the TAIL of that result.",
88789
+ "b. Dispatch: dispatch header + task text, in `subagent.prompt`.",
88724
88790
  "c. The child reads its own mandate with dispatch_ledger {action:\"self\"}.",
88725
- "d. Report: header (kind=report, status=...) then the result, in `send_message` to your parent agent id.",
88726
- "e. Steer: header (kind=steer, grant=...) in `send_message` to the child.",
88791
+ "d. Report: report header + result, in `send_message` to your parent agent id.",
88792
+ "e. Steer: steer header, in `send_message` to the child.",
88727
88793
  "",
88728
- "4. REJECTION CODES. The guard denies only these.",
88729
- "MANDATE_MALFORMED: the header does not parse, or a field is out of range.",
88794
+ "5. REJECTION CODES. These are the only denials; each one names its fix.",
88795
+ "MANDATE_MALFORMED: the header does not parse, or carries a field its kind does",
88796
+ " not allow. Re-send with exactly the fields of that kind.",
88730
88797
  "MANDATE_KIND: the kind does not match the tool.",
88731
- "MANDATE_DUPLICATE: the namespace (brief_id, run_id, idem) is already claimed. A namespace is",
88732
- " never reusable, not even after a release. Use a NEW run_id AND a NEW idem, and set parent_mandate.",
88733
- "MANDATE_BRIEF_BUSY: another run of this brief is still booked. Wait for it, or use a new brief_id.",
88734
- "MANDATE_LINEAGE_REQUIRED: this brief already has a run, but parent_mandate is missing.",
88735
- "MANDATE_LINEAGE: parent_mandate does not point at the latest released run of this brief.",
88736
- "MANDATE_POLICY_STALE: the policy block does not match the current one. Re-read",
88737
- " dispatch_ledger {action:\"self\"} and copy it again.",
88798
+ "MANDATE_DUPLICATE: the namespace (brief_id, run_id, idem) is claimed and never",
88799
+ " reusable. Use a NEW run_id AND a NEW idem, and set parent_mandate.",
88800
+ "MANDATE_BRIEF_BUSY: another run of this brief is still booked. Wait, or use a new brief_id.",
88801
+ "MANDATE_LINEAGE_REQUIRED: the brief already has a run, but parent_mandate is missing.",
88802
+ "MANDATE_LINEAGE: parent_mandate does not point at the latest settled run of the brief.",
88803
+ "MANDATE_POLICY_STALE: the policy block is not current. Copy it from self again.",
88738
88804
  "MANDATE_VERSION: mandate_version or prompt_ref does not match the recorded run.",
88739
- "MANDATE_NOT_PARENT / MANDATE_NOT_CHILD: the other side is not your parent / not your child.",
88805
+ "MANDATE_NOT_PARENT: the agent you report to is not your parent.",
88806
+ "MANDATE_NOT_CHILD: the agent you steer is not your child.",
88740
88807
  "MANDATE_GRANT_EXCEEDS: grant.context asks for context outside followup.",
88741
88808
  "MANDATE_NOT_HELD: you do not hold this mandate.",
88742
- "MANDATE_LEDGER_FULL: the ledger reached its run or brief limit. Report it; never",
88743
- " reuse an old namespace to get around it.",
88809
+ "MANDATE_LEDGER_FULL: the ledger is full. Report it; never reuse an old namespace.",
88744
88810
  "",
88745
- "5. A dispatch without a header is allowed but audited, and it cannot be de-duplicated.",
88746
- " After a hand_back the new run needs a NEW run_id and a NEW idem: never reuse the old ones."
88811
+ "6. A dispatch with no header is allowed but audited, and cannot be de-duplicated."
88747
88812
  ].join("\n");
88748
88813
  //#endregion
88749
88814
  //#region src/host/dispatch-ledger/tool.ts
@@ -88900,6 +88965,98 @@ function matchesFilters(row, args) {
88900
88965
  return true;
88901
88966
  }
88902
88967
  /**
88968
+ * 造一个本次渲染专用的 id。
88969
+ *
88970
+ * 骨架里的 brief_id / run_id / idem 必须是"抄下来就能用"的真 id,所以每渲染
88971
+ * 一次就现造一组:模型原样照抄也不会撞上别处的命名空间。
88972
+ * @param prefix - id 前缀(b / r / i)。
88973
+ * @returns 符合头部 id 字符集 `[A-Za-z0-9._:-]` 的 id。
88974
+ */
88975
+ function skeletonId(prefix) {
88976
+ const stamp = Date.now().toString(36);
88977
+ const noise = Math.random().toString(36).slice(2, 8);
88978
+ return prefix + "-" + (stamp + noise).slice(-8);
88979
+ }
88980
+ /**
88981
+ * 把一段头部值包成"可复制"的围栏块,并**先用真解析器自检**。
88982
+ *
88983
+ * 宁可少给一段骨架,也不给一个模型抄了就被拒的头部——这段文本是它唯一的依据。
88984
+ * @param lead - 引导语:说清哪些字段要改、哪些一个都不能动。
88985
+ * @param header - 头部值。
88986
+ * @returns 引导语 + 围栏块;判不出 `ok` 时 undefined。
88987
+ */
88988
+ function readyToSendBlock(lead, header) {
88989
+ const block = "```dsh-mandate-v2\n" + JSON.stringify(header) + "\n```";
88990
+ if (parseMandateHeader(block).state !== "ok") return void 0;
88991
+ return lead + "\n" + block;
88992
+ }
88993
+ /**
88994
+ * 读一个策略块的三个字段。
88995
+ * @param value - value 里的 policy(或 mandate.policy)。
88996
+ * @returns 策略块;形状不对时 undefined。
88997
+ */
88998
+ function policyBlockOf(value) {
88999
+ if (!isRecord$7(value)) return void 0;
89000
+ return {
89001
+ id: value["id"],
89002
+ version: value["version"],
89003
+ sha256: value["sha256"]
89004
+ };
89005
+ }
89006
+ /**
89007
+ * 子代理的 **report 骨架**。
89008
+ *
89009
+ * brief_id / run_id / idem / prompt_ref / policy 全部来自它**自己持有的**那份
89010
+ * mandate(也就是它收到的派发头),所以它只需要改 status——把"自己拼 JSON"换成
89011
+ * "照着抄一行"。
89012
+ * @param mandate - `self` 结果里的 mandate。
89013
+ * @returns 可复制块;没有 mandate 或自检不过时 undefined。
89014
+ */
89015
+ function reportSkeletonOf(mandate) {
89016
+ if (mandate === void 0) return void 0;
89017
+ const policy = policyBlockOf(mandate["policy"]);
89018
+ if (policy === void 0) return void 0;
89019
+ return readyToSendBlock("report header - copy this block into send_message and change ONLY status (ready | hand_back | blocked | failed | dropped); every other field is yours already:", {
89020
+ v: 2,
89021
+ kind: "report",
89022
+ brief_id: mandate["brief_id"],
89023
+ run_id: mandate["run_id"],
89024
+ idem: mandate["idem"],
89025
+ mandate_version: mandate["mandate_version"],
89026
+ prompt_ref: mandate["prompt_ref"],
89027
+ policy,
89028
+ status: "ready"
89029
+ });
89030
+ }
89031
+ /**
89032
+ * 协调者的 **dispatch 骨架**。
89033
+ *
89034
+ * policy 与 prompt_ref 由宿主填好(模型不能自拟),三个 id 现造(每次派发都要
89035
+ * 换新的),task / boundary / followup 留成一眼就该改掉的占位符。
89036
+ * @param policy - `self` 结果里的 policy。
89037
+ * @param promptRef - `self` 结果里的 prompt_ref。
89038
+ * @returns 可复制块;宿主没给 policy / prompt_ref 时 undefined。
89039
+ */
89040
+ function dispatchSkeletonOf(policy, promptRef) {
89041
+ const block = policyBlockOf(policy);
89042
+ if (block === void 0) return void 0;
89043
+ if (typeof promptRef !== "string" || promptRef === "") return void 0;
89044
+ return readyToSendBlock("dispatch header - give every dispatch NEW brief_id / run_id / idem, make task, boundary and followup name your own work, and write the task text after the closing fence:", {
89045
+ v: 2,
89046
+ kind: "dispatch",
89047
+ brief_id: skeletonId("b"),
89048
+ run_id: skeletonId("r"),
89049
+ idem: skeletonId("i"),
89050
+ mandate_version: 1,
89051
+ prompt_ref: promptRef,
89052
+ policy: block,
89053
+ task: ["task://what-this-dispatch-delivers"],
89054
+ boundary: ["files or module this child may touch"],
89055
+ followup: ["ctx://context-it-may-ask-for-later"],
89056
+ parent_mandate: null
89057
+ });
89058
+ }
89059
+ /**
88903
89060
  * 构造 `dispatch_ledger` 工具。
88904
89061
  * @param deps - 依赖。
88905
89062
  * @returns 可注册的工具定义。
@@ -89114,15 +89271,18 @@ function createDispatchLedgerTool(deps) {
89114
89271
  if (record["action"] === "self") {
89115
89272
  const mandate = record["mandate"];
89116
89273
  const policy = record["policy"];
89274
+ const head = [
89275
+ "session " + String(record["sessionId"]) + (record["parentSessionId"] === void 0 ? "" : " (parent " + String(record["parentSessionId"]) + ")"),
89276
+ "policy " + String(policy?.["id"] ?? "none") + " " + String(policy?.["version"] ?? "") + " sha256 " + String(policy?.["sha256"] ?? ""),
89277
+ "prompt_ref (copy into a dispatch header): " + String(record["prompt_ref"] ?? "not provided by this host"),
89278
+ mandate === void 0 ? "mandate: none held by this session" : "mandate: brief " + String(mandate["brief_id"]) + " run " + String(mandate["run_id"]) + " idem " + String(mandate["idem"]) + " prompt_ref " + String(mandate["prompt_ref"]),
89279
+ "open: " + JSON.stringify(record["open"] ?? {})
89280
+ ].join("\n");
89281
+ const held = record["mandate"];
89282
+ const skeleton = (held === void 0 ? void 0 : reportSkeletonOf(held)) ?? dispatchSkeletonOf(policy, record["prompt_ref"]);
89117
89283
  return [{
89118
89284
  type: "text",
89119
- text: [
89120
- "session " + String(record["sessionId"]) + (record["parentSessionId"] === void 0 ? "" : " (parent " + String(record["parentSessionId"]) + ")"),
89121
- "policy " + String(policy?.["id"] ?? "none") + " " + String(policy?.["version"] ?? "") + " sha256 " + String(policy?.["sha256"] ?? ""),
89122
- "prompt_ref (copy into a dispatch header): " + String(record["prompt_ref"] ?? "not provided by this host"),
89123
- mandate === void 0 ? "mandate: none held by this session" : "mandate: brief " + String(mandate["brief_id"]) + " run " + String(mandate["run_id"]) + " idem " + String(mandate["idem"]) + " prompt_ref " + String(mandate["prompt_ref"]),
89124
- "open: " + JSON.stringify(record["open"] ?? {})
89125
- ].join("\n") + "\n\n" + DISPATCH_MANDATE_PROTOCOL
89285
+ text: skeleton === void 0 ? head + "\n\n" + DISPATCH_MANDATE_PROTOCOL : head + "\n\n" + skeleton + "\n\n" + DISPATCH_MANDATE_PROTOCOL
89126
89286
  }];
89127
89287
  }
89128
89288
  const lines = (record["entries"] ?? []).map((entry) => [
@@ -1 +1 @@
1
- {"version":3,"file":"KimiCodeSection.d.ts","sourceRoot":"","sources":["../../../../src/client/kimi-code/KimiCodeSection.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmD,MAAM,OAAO,CAAA;AA0BvE,UAAU,KAAK;IACb,aAAa,CAAC,EAAE,MAAM,IAAI,CAAA;IAC1B,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAA;CAChC;AA+CD,wBAAgB,eAAe,CAAC,EAAE,aAAa,EAAE,kBAAkB,EAAE,EAAE,KAAK,GAAG,KAAK,CAAC,YAAY,CAqtBhG"}
1
+ {"version":3,"file":"KimiCodeSection.d.ts","sourceRoot":"","sources":["../../../../src/client/kimi-code/KimiCodeSection.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmD,MAAM,OAAO,CAAA;AA0BvE,UAAU,KAAK;IACb,aAAa,CAAC,EAAE,MAAM,IAAI,CAAA;IAC1B,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAA;CAChC;AA+CD,wBAAgB,eAAe,CAAC,EAAE,aAAa,EAAE,kBAAkB,EAAE,EAAE,KAAK,GAAG,KAAK,CAAC,YAAY,CA8uBhG"}
@@ -71,7 +71,7 @@ export declare const ROUTE_PREFIX: "/api/dsh-chatgpt-subscription";
71
71
  * `test/responses-client.test.ts` asserts the two agree, so a release that
72
72
  * forgets this constant fails the suite instead of shipping quietly.
73
73
  */
74
- export declare const PLUGIN_VERSION: "0.52.0";
74
+ export declare const PLUGIN_VERSION: "0.53.0";
75
75
  export declare const CODEX_CHATGPT_PROVIDER_ID: "codex-chatgpt";
76
76
  export { MINIMAX_CODE_PROVIDER_ID, MINIMAX_CODE_ROUTE_PREFIX } from './shared/minimax-code-contracts.ts';
77
77
  export declare const CODEX_API_BASE: "https://chatgpt.com/backend-api/codex";
@@ -304,6 +304,16 @@ export declare class AccountPoolCore<TCredentials, TAccount extends PoolAccountS
304
304
  * pool write is verified, and must not re-enter the pool either.
305
305
  */
306
306
  protected updatePool<T>(mutate: (data: PoolData<TAccount>) => T | Promise<T>, afterCommit?: (data: PoolData<TAccount>, result: T) => Promise<void>): Promise<T>;
307
+ /**
308
+ * Public summaries of a document the caller already read.
309
+ *
310
+ * A caller that needs both the rows and which one would serve the next
311
+ * request must not read the pool twice: the two reads can straddle a write,
312
+ * and the answer would then name one account while listing another
313
+ * generation's state. Reading is not free either — an encrypted round trip,
314
+ * a DPAPI unprotect on Windows.
315
+ */
316
+ summariesOf(data: PoolData<TAccount>): TSummary[];
307
317
  /** Public summaries, with cooldowns that already expired reported as absent. */
308
318
  listAccounts(): Promise<TSummary[]>;
309
319
  protected summarize(account: TAccount, now: number): TSummary;
@@ -1 +1 @@
1
- {"version":3,"file":"account-pool.d.ts","sourceRoot":"","sources":["../../../../src/host/common/account-pool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"account-pool.d.ts","sourceRoot":"","sources":["../../../../src/host/common/account-pool.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"guard.d.ts","sourceRoot":"","sources":["../../../../src/host/dispatch-ledger/guard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"guard.d.ts","sourceRoot":"","sources":["../../../../src/host/dispatch-ledger/guard.ts"],"names":[],"mappings":"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"}
@@ -121,6 +121,14 @@ export interface MandateParseResult {
121
121
  /** 围栏之后的正文(`ok` 时有)。 */
122
122
  readonly body?: string;
123
123
  }
124
+ /**
125
+ * 每种角色**允许携带**的字段集。
126
+ *
127
+ * 同一个字段集只写一次:它既出现在 kind 违规的拒绝文案尾部(模型被拒时当场
128
+ * 唯一的纠错入口),也出现在守卫的两条 `MANDATE_KIND` 拒绝里。文案与 schema
129
+ * 各写一套,迟早会重演"样板自己非法"那类事故。
130
+ */
131
+ export declare const MANDATE_KIND_FIELDS: Readonly<Record<MandateKind, string>>;
124
132
  /**
125
133
  * 解析一段文本里的 Mandate v2 头部。
126
134
  *
@@ -1 +1 @@
1
- {"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../../../src/host/dispatch-ledger/header.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../../../src/host/dispatch-ledger/header.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,13 @@
11
11
  * 工具描述保持静态且短(≤240 字符),preset 里只留一行短引导。模型读到的
12
12
  * 工具结果尾部就是协议本身。
13
13
  *
14
+ * ## 样板必须自洽
15
+ *
16
+ * 正文里出现的每一段围栏,都是模型会**照抄**的样板;样板一旦不合文法,模型
17
+ * 抄一次就被拒一次,而它没有别的依据可循。所以样板与 {@link ./header.ts} 的
18
+ * schema 必须互相自洽:`test/dispatch-ledger-header.test.ts` 会把正文里的
19
+ * 每一段围栏都丢给真解析器,判不出 `ok` 就算回归。
20
+ *
14
21
  * ## 长度上限
15
22
  *
16
23
  * 协议正文必须 ≤ {@link DISPATCH_MANDATE_PROTOCOL_MAX_CHARS} 字符。这条上限
@@ -1 +1 @@
1
- {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../../../src/host/dispatch-ledger/protocol.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,iBAAiB;AACjB,eAAO,MAAM,mCAAmC,OAAO,CAAA;AAEvD,2BAA2B;AAC3B,eAAO,MAAM,yBAAyB,EAAE,MAQ3B,CAAA"}
1
+ {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../../../src/host/dispatch-ledger/protocol.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,iBAAiB;AACjB,eAAO,MAAM,mCAAmC,OAAO,CAAA;AAEvD,2BAA2B;AAC3B,eAAO,MAAM,yBAAyB,EAAE,MAyD5B,CAAA"}