looply-cli 0.5.9 → 0.5.11

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 (141) hide show
  1. package/dist/.src-hash +1 -1
  2. package/dist/account-failover.d.ts +30 -0
  3. package/dist/account-failover.d.ts.map +1 -0
  4. package/dist/account-failover.js +32 -0
  5. package/dist/account-failover.js.map +1 -0
  6. package/dist/autonomy-controller.d.ts +23 -1
  7. package/dist/autonomy-controller.d.ts.map +1 -1
  8. package/dist/autonomy-controller.js +50 -9
  9. package/dist/autonomy-controller.js.map +1 -1
  10. package/dist/autonomy-store.d.ts +33 -1
  11. package/dist/autonomy-store.d.ts.map +1 -1
  12. package/dist/autonomy-store.js +58 -8
  13. package/dist/autonomy-store.js.map +1 -1
  14. package/dist/autonomy-tick.d.ts +23 -1
  15. package/dist/autonomy-tick.d.ts.map +1 -1
  16. package/dist/autonomy-tick.js +80 -14
  17. package/dist/autonomy-tick.js.map +1 -1
  18. package/dist/bin.d.ts.map +1 -1
  19. package/dist/bin.js +25 -5
  20. package/dist/bin.js.map +1 -1
  21. package/dist/branch-delivery-wiring.d.ts.map +1 -1
  22. package/dist/branch-delivery-wiring.js +6 -1
  23. package/dist/branch-delivery-wiring.js.map +1 -1
  24. package/dist/branch-delivery.d.ts +135 -6
  25. package/dist/branch-delivery.d.ts.map +1 -1
  26. package/dist/branch-delivery.js +540 -80
  27. package/dist/branch-delivery.js.map +1 -1
  28. package/dist/branch-replay.d.ts +45 -0
  29. package/dist/branch-replay.d.ts.map +1 -0
  30. package/dist/branch-replay.js +123 -0
  31. package/dist/branch-replay.js.map +1 -0
  32. package/dist/commit-ownership.d.ts +102 -0
  33. package/dist/commit-ownership.d.ts.map +1 -0
  34. package/dist/commit-ownership.js +97 -0
  35. package/dist/commit-ownership.js.map +1 -0
  36. package/dist/coordinator-state.d.ts.map +1 -1
  37. package/dist/coordinator-state.js +21 -1
  38. package/dist/coordinator-state.js.map +1 -1
  39. package/dist/daemon-cmd.d.ts.map +1 -1
  40. package/dist/daemon-cmd.js +53 -4
  41. package/dist/daemon-cmd.js.map +1 -1
  42. package/dist/daemon.d.ts +10 -1
  43. package/dist/daemon.d.ts.map +1 -1
  44. package/dist/daemon.js +31 -5
  45. package/dist/daemon.js.map +1 -1
  46. package/dist/deliver-cmd.d.ts +18 -0
  47. package/dist/deliver-cmd.d.ts.map +1 -1
  48. package/dist/deliver-cmd.js +71 -5
  49. package/dist/deliver-cmd.js.map +1 -1
  50. package/dist/delivery-settings-cache.d.ts +15 -1
  51. package/dist/delivery-settings-cache.d.ts.map +1 -1
  52. package/dist/delivery-settings-cache.js +31 -3
  53. package/dist/delivery-settings-cache.js.map +1 -1
  54. package/dist/environment-hold.d.ts +69 -0
  55. package/dist/environment-hold.d.ts.map +1 -0
  56. package/dist/environment-hold.js +120 -0
  57. package/dist/environment-hold.js.map +1 -0
  58. package/dist/gate.d.ts.map +1 -1
  59. package/dist/gate.js +15 -1
  60. package/dist/gate.js.map +1 -1
  61. package/dist/github-api.d.ts +19 -0
  62. package/dist/github-api.d.ts.map +1 -1
  63. package/dist/github-api.js +26 -0
  64. package/dist/github-api.js.map +1 -1
  65. package/dist/goal-adaptive.d.ts +1 -0
  66. package/dist/goal-adaptive.d.ts.map +1 -1
  67. package/dist/goal-adaptive.js +26 -13
  68. package/dist/goal-adaptive.js.map +1 -1
  69. package/dist/goal-compile.d.ts +37 -0
  70. package/dist/goal-compile.d.ts.map +1 -1
  71. package/dist/goal-compile.js +25 -1
  72. package/dist/goal-compile.js.map +1 -1
  73. package/dist/goal-replay.d.ts +83 -0
  74. package/dist/goal-replay.d.ts.map +1 -0
  75. package/dist/goal-replay.js +121 -0
  76. package/dist/goal-replay.js.map +1 -0
  77. package/dist/goal-reproof.d.ts +5 -0
  78. package/dist/goal-reproof.d.ts.map +1 -1
  79. package/dist/goal-reproof.js +11 -4
  80. package/dist/goal-reproof.js.map +1 -1
  81. package/dist/grant-pause.d.ts +48 -0
  82. package/dist/grant-pause.d.ts.map +1 -0
  83. package/dist/grant-pause.js +103 -0
  84. package/dist/grant-pause.js.map +1 -0
  85. package/dist/grant-reconcile.d.ts +8 -2
  86. package/dist/grant-reconcile.d.ts.map +1 -1
  87. package/dist/grant-reconcile.js +9 -2
  88. package/dist/grant-reconcile.js.map +1 -1
  89. package/dist/grant-waiting-wiring.d.ts +49 -0
  90. package/dist/grant-waiting-wiring.d.ts.map +1 -0
  91. package/dist/grant-waiting-wiring.js +77 -0
  92. package/dist/grant-waiting-wiring.js.map +1 -0
  93. package/dist/model-transport.d.ts +13 -0
  94. package/dist/model-transport.d.ts.map +1 -1
  95. package/dist/model-transport.js +70 -9
  96. package/dist/model-transport.js.map +1 -1
  97. package/dist/planner-timeouts.d.ts +14 -0
  98. package/dist/planner-timeouts.d.ts.map +1 -0
  99. package/dist/planner-timeouts.js +51 -0
  100. package/dist/planner-timeouts.js.map +1 -0
  101. package/dist/provider-accounts-cmd.d.ts +58 -0
  102. package/dist/provider-accounts-cmd.d.ts.map +1 -0
  103. package/dist/provider-accounts-cmd.js +247 -0
  104. package/dist/provider-accounts-cmd.js.map +1 -0
  105. package/dist/provider-accounts.d.ts +157 -0
  106. package/dist/provider-accounts.d.ts.map +1 -0
  107. package/dist/provider-accounts.js +423 -0
  108. package/dist/provider-accounts.js.map +1 -0
  109. package/dist/provider-cmd.d.ts +3 -0
  110. package/dist/provider-cmd.d.ts.map +1 -1
  111. package/dist/provider-cmd.js +25 -0
  112. package/dist/provider-cmd.js.map +1 -1
  113. package/dist/provider-limit.d.ts +6 -0
  114. package/dist/provider-limit.d.ts.map +1 -1
  115. package/dist/provider-limit.js +12 -0
  116. package/dist/provider-limit.js.map +1 -1
  117. package/dist/provider-state.d.ts +3 -0
  118. package/dist/provider-state.d.ts.map +1 -1
  119. package/dist/provider-state.js +4 -1
  120. package/dist/provider-state.js.map +1 -1
  121. package/dist/run-cmd.d.ts +12 -1
  122. package/dist/run-cmd.d.ts.map +1 -1
  123. package/dist/run-cmd.js +187 -15
  124. package/dist/run-cmd.js.map +1 -1
  125. package/dist/run-refusal-marks.d.ts +7 -1
  126. package/dist/run-refusal-marks.d.ts.map +1 -1
  127. package/dist/run-refusal-marks.js +4 -0
  128. package/dist/run-refusal-marks.js.map +1 -1
  129. package/dist/server-client.d.ts +33 -2
  130. package/dist/server-client.d.ts.map +1 -1
  131. package/dist/server-client.js +33 -1
  132. package/dist/server-client.js.map +1 -1
  133. package/dist/spend-ledger.d.ts +7 -0
  134. package/dist/spend-ledger.d.ts.map +1 -1
  135. package/dist/spend-ledger.js +1 -0
  136. package/dist/spend-ledger.js.map +1 -1
  137. package/dist/start-attempts.d.ts +4 -2
  138. package/dist/start-attempts.d.ts.map +1 -1
  139. package/dist/start-attempts.js +6 -1
  140. package/dist/start-attempts.js.map +1 -1
  141. package/package.json +2 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grant-waiting-wiring.d.ts","sourceRoot":"","sources":["../src/grant-waiting-wiring.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAKL,KAAK,mBAAmB,EACzB,MAAM,oBAAoB,CAAC;AAG5B;;;;;;;;;;;GAWG;AAEH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE;QACf,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;YAAE,QAAQ,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAC9G,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;KAC5F,CAAC;IACF,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,sEAAsE;IACtE,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,qEAAqE;IACrE,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,YAAY;IAC3B,eAAe,CAAC,KAAK,EAAE,gBAAgB,GAAG,mBAAmB,CAAC;IAC9D,kBAAkB,CAAC,KAAK,EAAE,gBAAgB,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1F,QAAQ,CAAC,UAAU,EAAE;QACnB,SAAS,CAAC,KAAK,EAAE,gBAAgB,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;QACxD,OAAO,CAAC,KAAK,EAAE,gBAAgB,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;KACvE,CAAC;IACF,8CAA8C;IAC9C,QAAQ,CAAC,KAAK,EAAE,gBAAgB,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IACvD,6DAA6D;IAC7D,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACtD,gFAAgF;IAChF,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED,wEAAwE;AACxE,wBAAgB,cAAc,IAAI,MAAM,CAMvC;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,gBAAgB,GAAG,YAAY,CAuDrE"}
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.packageVersion = packageVersion;
4
+ exports.makeGrantWaiting = makeGrantWaiting;
5
+ const node_fs_1 = require("node:fs");
6
+ const node_path_1 = require("node:path");
7
+ const environment_hold_1 = require("./environment-hold");
8
+ const grant_pause_1 = require("./grant-pause");
9
+ /** This package's version, read the way `looply --version` reads it. */
10
+ function packageVersion() {
11
+ try {
12
+ return JSON.parse((0, node_fs_1.readFileSync)((0, node_path_1.join)(__dirname, '..', 'package.json'), 'utf8')).version ?? 'unknown';
13
+ }
14
+ catch {
15
+ return 'unknown';
16
+ }
17
+ }
18
+ function makeGrantWaiting(deps) {
19
+ const version = deps.looplyVersion ?? packageVersion();
20
+ const digest = deps.digest ?? (() => (0, environment_hold_1.configDigest)(deps.projectDir));
21
+ /** What the server was last told, per goal — so a hold is said once per change. */
22
+ const told = new Map();
23
+ const tell = (goalId, hold) => {
24
+ const key = hold === null ? '' : `${hold.code}:${hold.reason}`;
25
+ if (told.get(goalId) === key)
26
+ return;
27
+ told.set(goalId, key);
28
+ deps.client.recordGoalHold(deps.projectId, goalId, hold).catch((e) => {
29
+ told.delete(goalId);
30
+ deps.log(`autonomy: could not tell the server why ${goalId} is held (${e.message})`);
31
+ });
32
+ };
33
+ const reporting = new Set();
34
+ return {
35
+ environmentHold(grant) {
36
+ const record = (0, environment_hold_1.readEnvironmentHold)(deps.stateDir, grant.controllerId);
37
+ if (record === null)
38
+ return { held: false };
39
+ const fact = (0, environment_hold_1.decideEnvironmentHold)(record, { at: Date.now(), looplyVersion: version, configDigest: digest() });
40
+ if (fact.held)
41
+ tell(grant.goalId, { code: record.code, reason: fact.because.replace(/^held: /, '').slice(0, 300) });
42
+ return fact;
43
+ },
44
+ onEnvironmentFault(grant, code, because) {
45
+ (0, environment_hold_1.writeEnvironmentHold)(deps.stateDir, grant.controllerId, {
46
+ code,
47
+ reason: because.slice(0, 300),
48
+ since: new Date().toISOString(),
49
+ looplyVersion: version,
50
+ configDigest: digest(),
51
+ });
52
+ },
53
+ grantClock: {
54
+ expiresAt: (grant, now) => (0, grant_pause_1.effectiveExpiresAt)(grant.expiresAt, (0, grant_pause_1.readGrantPause)(deps.stateDir, grant.controllerId), now),
55
+ waiting(grant, waiting, now) {
56
+ const p = (0, grant_pause_1.noteWaiting)(deps.stateDir, grant.controllerId, waiting, now);
57
+ const due = (0, grant_pause_1.pauseReportDue)(p, now);
58
+ if (due === null || reporting.has(grant.controllerId))
59
+ return;
60
+ reporting.add(grant.controllerId);
61
+ deps.client
62
+ .recordAutonomyPause(deps.projectId, grant.controllerId, due)
63
+ .then((r) => (0, grant_pause_1.noteReported)(deps.stateDir, grant.controllerId, Math.min(r.pausedMs, due)))
64
+ .catch((e) => deps.log(`autonomy: could not report ${grant.goalId}'s paused clock (${e.message})`))
65
+ .finally(() => reporting.delete(grant.controllerId));
66
+ },
67
+ },
68
+ pausedMs: (grant, now) => (0, grant_pause_1.pausedNow)((0, grant_pause_1.readGrantPause)(deps.stateDir, grant.controllerId), now),
69
+ dependencyHold(goalId, because) {
70
+ tell(goalId, { code: 'dependency', reason: because.slice(0, 300) });
71
+ },
72
+ moved(goalId) {
73
+ tell(goalId, null);
74
+ },
75
+ };
76
+ }
77
+ //# sourceMappingURL=grant-waiting-wiring.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grant-waiting-wiring.js","sourceRoot":"","sources":["../src/grant-waiting-wiring.ts"],"names":[],"mappings":"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"}
@@ -113,6 +113,19 @@ export interface ModelTransportDeps {
113
113
  checkAuth?: typeof checkProviderAuth;
114
114
  /** Overridable for tests; production reads the platform's own shell. */
115
115
  shell?: string;
116
+ /**
117
+ * Which of the machine's named AI accounts this work may use
118
+ * (`provider-accounts.ts`): the Looply project and who asked for the work,
119
+ * so the owners' settings can be applied. Absent: no project, no requester.
120
+ * The account is chosen again at every call, so one that started resting is
121
+ * not asked again until its reset.
122
+ */
123
+ accountScope?: {
124
+ projectId: string | null;
125
+ requesterRef: string | null;
126
+ };
127
+ /** Told which account each built-in call used (null on a configured provider). */
128
+ onAccount?: (name: string | null) => void;
116
129
  }
117
130
  /**
118
131
  * The command line for one mediated turn.
@@ -1 +1 @@
1
- {"version":3,"file":"model-transport.d.ts","sourceRoot":"","sources":["../src/model-transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAK3C,OAAO,EAAiB,KAAK,WAAW,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAS/E,OAAO,EAAyB,iBAAiB,EAAsB,MAAM,kBAAkB,CAAC;AAChG,OAAO,EAAiB,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAKtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAgB,KAAK,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAElE;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,0BAA0B,QAAkB,CAAC;AAE1D,+CAA+C;AAC/C,MAAM,WAAW,SAAS;IACxB,iEAAiE;IACjE,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;CACzB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,GAAE,MAAkB,GAAG,MAAM,CAKvG;AAED,6EAA6E;AAC7E,wBAAgB,aAAa,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,CAMvD;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,IAAI,GAAE,kBAAuB,GAAG,MAAM,CAIjE;AAED,MAAM,WAAW,kBAAkB;IACjC;;;;;OAKG;IACH,aAAa,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IACrC;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,QAAQ,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;IACnC,kEAAkE;IAClE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2EAA2E;IAC3E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,KAAK,CAAC;IACvB,yFAAyF;IACzF,SAAS,CAAC,EAAE,OAAO,iBAAiB,CAAC;IACrC,wEAAwE;IACxE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;;GAYG;AACH;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAE1D;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAavF;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,GAAG,MAAM,EAAE,CAG3E;AAkBD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,eAAO,MAAM,qBAAqB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAEjE,CAAC;AAEH;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CACrC,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,QAAQ,EACd,IAAI,GAAE,SAAyB,EAC/B,IAAI,GAAE,kBAAuB;AAC7B;;;;;;;;;;;;;;;;GAgBG;AACH,KAAK,CAAC,EAAE,aAAa,GACpB,WAAW,CAoYb"}
1
+ {"version":3,"file":"model-transport.d.ts","sourceRoot":"","sources":["../src/model-transport.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,8 @@ const untrusted_exec_1 = require("./untrusted-exec");
21
21
  /** Which shell a configured provider's line is handed to. See the launch below. */
22
22
  const WIN_HOST = process.platform === 'win32';
23
23
  const provider_state_1 = require("./provider-state");
24
+ const provider_accounts_1 = require("./provider-accounts");
25
+ const provider_limit_1 = require("./provider-limit");
24
26
  const tool_bridge_1 = require("./tool-bridge");
25
27
  const agent_envelope_1 = require("./agent-envelope");
26
28
  const spend_ledger_1 = require("./spend-ledger");
@@ -256,7 +258,10 @@ owned) {
256
258
  * instead would have produced a tidy $0.00 for a night of work.
257
259
  */
258
260
  const record = (0, spend_ledger_1.recordingSpend)(role, now, deps.home, deps.runId);
261
+ /** Which named account the last call used; read by the recording wrapper below. */
262
+ let lastAccountName = null;
259
263
  const invoke = async (prompt, timeoutMs) => {
264
+ lastAccountName = null;
260
265
  const started = now();
261
266
  const fail = (why) => ({
262
267
  ok: false,
@@ -290,6 +295,9 @@ owned) {
290
295
  let argv;
291
296
  /** Set only on the mediated path; the provider's own profile. */
292
297
  let claudeConfigDir = null;
298
+ /** Set only on the mediated path; which named account that profile is. */
299
+ let accountName = null;
300
+ let lastRefusal = '';
293
301
  // Where a CONFIGURED transport's runtime lives, so its command can be
294
302
  // resolved. This is what `agent.runtime` means now: provider runtime
295
303
  // requirements, declared by a person, NOT project filesystem authority. It
@@ -364,19 +372,54 @@ owned) {
364
372
  * `.looply/config.yaml` lives inside the worktree the model may edit, and
365
373
  * a worker that could name this directory could point it at one it wrote.
366
374
  */
367
- claudeConfigDir = (0, provider_state_1.providerProfileDir)({ home: deps.home });
368
375
  /**
369
- * ⚠️ CHECKED IN THE SAME PROFILE AND ENVIRONMENT THE RUN WILL USE, or it
370
- * answers a different question — the mistake `doctor --provider` was
371
- * repaired for once already. It costs no model turn: `auth status` is
372
- * local and prints the profile's own state.
376
+ * WHICH OF THE MACHINE'S AI ACCOUNTS (`provider-accounts.ts`). With no
377
+ * named account this is always `default`, the legacy profile, so a
378
+ * machine nobody configured runs exactly as before. Chosen per call: an
379
+ * account that started resting after a usage limit is skipped until its
380
+ * reset, and one found logged out is skipped for the rest of this call.
373
381
  */
374
- const ready = (deps.checkAuth ?? provider_state_1.checkProviderAuth)(executable, { ...(0, exec_domains_1.buildProviderEnv)(sessionDir), CLAUDE_CONFIG_DIR: claudeConfigDir }, { home: deps.home });
375
- if (!ready.ok) {
382
+ const home = deps.home ?? (0, node_os_1.homedir)();
383
+ const skip = [];
384
+ for (;;) {
385
+ const choice = (0, provider_accounts_1.chooseAccountForCall)({
386
+ role: role,
387
+ projectId: deps.accountScope?.projectId ?? null,
388
+ requesterRef: deps.accountScope?.requesterRef ?? null,
389
+ now: now(),
390
+ skip,
391
+ }, home);
392
+ if (choice.kind === 'none') {
393
+ return fail(skip.length > 0 ? lastRefusal : `the agent did not run: provider_no_account — ${choice.because}`);
394
+ }
395
+ accountName = choice.entry.name;
396
+ claudeConfigDir = choice.entry.profileDir;
397
+ /**
398
+ * ⚠️ CHECKED IN THE SAME PROFILE AND ENVIRONMENT THE RUN WILL USE, or it
399
+ * answers a different question — the mistake `doctor --provider` was
400
+ * repaired for once already. It costs no model turn: `auth status` is
401
+ * local and prints the profile's own state.
402
+ */
403
+ const ready = (deps.checkAuth ?? provider_state_1.checkProviderAuth)(executable, { ...(0, exec_domains_1.buildProviderEnv)(sessionDir), CLAUDE_CONFIG_DIR: claudeConfigDir }, { home: deps.home, profile: claudeConfigDir });
404
+ const known = (0, provider_accounts_1.readAccountStates)(home)[accountName];
405
+ if (ready.ok) {
406
+ const plan = (0, provider_accounts_1.planOf)(ready.plan);
407
+ if (known?.ready !== true || known.plan !== plan || known.authMethod !== ready.method) {
408
+ (0, provider_accounts_1.recordAccountReadiness)(accountName, { ready: true, reason: null, authMethod: ready.method, plan }, now(), home);
409
+ }
410
+ break;
411
+ }
376
412
  // The reason is carried through rather than flattened: only one of the
377
413
  // five means "log in", and telling somebody to re-authenticate when the
378
414
  // executable is missing wastes their afternoon.
379
- return fail(`the agent did not run: provider_${ready.reason} — ${ready.because}`);
415
+ lastRefusal = `the agent did not run: provider_${ready.reason} — ${ready.because}`;
416
+ if (ready.reason !== 'unauthenticated')
417
+ return fail(lastRefusal);
418
+ if (known?.ready !== false) {
419
+ (0, provider_accounts_1.recordAccountReadiness)(accountName, { ready: false, reason: 'not_logged_in' }, now(), home);
420
+ }
421
+ // Logged out: try the next account this work may use, if there is one.
422
+ skip.push(accountName);
380
423
  }
381
424
  // The role's model and effort sit between the mediation flags and the
382
425
  // tool allowlist. ALWAYS present now: config.yaml, then the project's
@@ -469,6 +512,7 @@ owned) {
469
512
  verbatim = WIN_HOST;
470
513
  runtimePath = declared.paths;
471
514
  }
515
+ lastAccountName = accountName;
472
516
  const base = (0, exec_domains_1.buildProviderEnv)(sessionDir, forwarded(spec, isReserved));
473
517
  const env = {
474
518
  ...base,
@@ -600,7 +644,24 @@ owned) {
600
644
  */
601
645
  const format = builtIn ? requested : 'text';
602
646
  const env = format === 'json' ? (0, agent_envelope_1.parseAgentEnvelope)(r.output ?? '') : null;
603
- record({ ms: r.ms, ...(env?.cost === undefined ? {} : { cost: env.cost }) });
647
+ record({
648
+ ms: r.ms,
649
+ ...(env?.cost === undefined ? {} : { cost: env.cost }),
650
+ ...(lastAccountName === null ? {} : { account: lastAccountName }),
651
+ });
652
+ /**
653
+ * A USAGE LIMIT RESTS THE ACCOUNT THAT MET IT, for every daemon on this
654
+ * machine, until the reset it states (see `provider-limit.ts`). Read off
655
+ * the CLI's own envelope only — the built-in provider's — never the
656
+ * model's prose. The caller decides whether to ask again on another
657
+ * account (`failingOverAccounts`) or to wait.
658
+ */
659
+ if (lastAccountName !== null && format === 'json') {
660
+ const limit = (0, provider_limit_1.providerLimitOf)(r, now());
661
+ if (limit !== null)
662
+ (0, provider_accounts_1.markAccountResting)(lastAccountName, (0, provider_limit_1.quietUntilOf)(limit, now()), limit.because, deps.home ?? (0, node_os_1.homedir)());
663
+ }
664
+ deps.onAccount?.(lastAccountName);
604
665
  return r;
605
666
  };
606
667
  }
@@ -1 +1 @@
1
- {"version":3,"file":"model-transport.js","sourceRoot":"","sources":["../src/model-transport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-transport.js","sourceRoot":"","sources":["../src/model-transport.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * HOW MANY TIMES ONE PLANNING HAS TIMED OUT ON THIS MACHINE — the count `goal-compile.ts`'s
3
+ * `compileTierFor` turns into a longer limit and a smaller plan (TAB-B-57, 2026-10-16: two Starts
4
+ * lost to a ten-minute planner timeout before the third compiled).
5
+ *
6
+ * Keyed by whatever the caller names one planning by (`<id>@<version>`), in the PROJECT's state
7
+ * directory, so a later Start placed in another checkout still knows. Separate from the compiler
8
+ * on purpose: the compiler writes nothing.
9
+ */
10
+ export declare const PLANNER_TIMEOUTS_FILE = "planner-timeouts.json";
11
+ export declare function plannerTimeoutsFor(stateDir: string, key: string): number;
12
+ /** Count one more timeout for `key`; returns the new count. Never throws: the count only lengthens a limit. */
13
+ export declare function notePlannerTimeout(stateDir: string, key: string): number;
14
+ //# sourceMappingURL=planner-timeouts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"planner-timeouts.d.ts","sourceRoot":"","sources":["../src/planner-timeouts.ts"],"names":[],"mappings":"AAGA;;;;;;;;GAQG;AAEH,eAAO,MAAM,qBAAqB,0BAA0B,CAAC;AAE7D,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAQxE;AAED,+GAA+G;AAC/G,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAmBxE"}
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PLANNER_TIMEOUTS_FILE = void 0;
4
+ exports.plannerTimeoutsFor = plannerTimeoutsFor;
5
+ exports.notePlannerTimeout = notePlannerTimeout;
6
+ const node_fs_1 = require("node:fs");
7
+ const node_path_1 = require("node:path");
8
+ /**
9
+ * HOW MANY TIMES ONE PLANNING HAS TIMED OUT ON THIS MACHINE — the count `goal-compile.ts`'s
10
+ * `compileTierFor` turns into a longer limit and a smaller plan (TAB-B-57, 2026-10-16: two Starts
11
+ * lost to a ten-minute planner timeout before the third compiled).
12
+ *
13
+ * Keyed by whatever the caller names one planning by (`<id>@<version>`), in the PROJECT's state
14
+ * directory, so a later Start placed in another checkout still knows. Separate from the compiler
15
+ * on purpose: the compiler writes nothing.
16
+ */
17
+ exports.PLANNER_TIMEOUTS_FILE = 'planner-timeouts.json';
18
+ function plannerTimeoutsFor(stateDir, key) {
19
+ try {
20
+ const raw = JSON.parse((0, node_fs_1.readFileSync)((0, node_path_1.join)(stateDir, exports.PLANNER_TIMEOUTS_FILE), 'utf8'));
21
+ const n = raw[key];
22
+ return typeof n === 'number' && Number.isFinite(n) && n > 0 ? Math.floor(n) : 0;
23
+ }
24
+ catch {
25
+ return 0;
26
+ }
27
+ }
28
+ /** Count one more timeout for `key`; returns the new count. Never throws: the count only lengthens a limit. */
29
+ function notePlannerTimeout(stateDir, key) {
30
+ const path = (0, node_path_1.join)(stateDir, exports.PLANNER_TIMEOUTS_FILE);
31
+ try {
32
+ let raw = {};
33
+ try {
34
+ raw = JSON.parse((0, node_fs_1.readFileSync)(path, 'utf8'));
35
+ }
36
+ catch {
37
+ raw = {};
38
+ }
39
+ const next = (typeof raw[key] === 'number' ? raw[key] : 0) + 1;
40
+ raw[key] = next;
41
+ (0, node_fs_1.mkdirSync)(stateDir, { recursive: true });
42
+ const tmp = `${path}.${process.pid}.tmp`;
43
+ (0, node_fs_1.writeFileSync)(tmp, `${JSON.stringify(raw)}\n`, 'utf8');
44
+ (0, node_fs_1.renameSync)(tmp, path);
45
+ return next;
46
+ }
47
+ catch {
48
+ return 0;
49
+ }
50
+ }
51
+ //# sourceMappingURL=planner-timeouts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"planner-timeouts.js","sourceRoot":"","sources":["../src/planner-timeouts.ts"],"names":[],"mappings":";;;AAeA,gDAQC;AAGD,gDAmBC;AA7CD,qCAA6E;AAC7E,yCAAiC;AAEjC;;;;;;;;GAQG;AAEU,QAAA,qBAAqB,GAAG,uBAAuB,CAAC;AAE7D,SAAgB,kBAAkB,CAAC,QAAgB,EAAE,GAAW;IAC9D,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAA,sBAAY,EAAC,IAAA,gBAAI,EAAC,QAAQ,EAAE,6BAAqB,CAAC,EAAE,MAAM,CAAC,CAA4B,CAAC;QAC/G,MAAM,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;QACnB,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAClF,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,CAAC;IACX,CAAC;AACH,CAAC;AAED,+GAA+G;AAC/G,SAAgB,kBAAkB,CAAC,QAAgB,EAAE,GAAW;IAC9D,MAAM,IAAI,GAAG,IAAA,gBAAI,EAAC,QAAQ,EAAE,6BAAqB,CAAC,CAAC;IACnD,IAAI,CAAC;QACH,IAAI,GAAG,GAA2B,EAAE,CAAC;QACrC,IAAI,CAAC;YACH,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAA,sBAAY,EAAC,IAAI,EAAE,MAAM,CAAC,CAA2B,CAAC;QACzE,CAAC;QAAC,MAAM,CAAC;YACP,GAAG,GAAG,EAAE,CAAC;QACX,CAAC;QACD,MAAM,IAAI,GAAG,CAAC,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAC/D,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;QAChB,IAAA,mBAAS,EAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACzC,MAAM,GAAG,GAAG,GAAG,IAAI,IAAI,OAAO,CAAC,GAAG,MAAM,CAAC;QACzC,IAAA,uBAAa,EAAC,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACvD,IAAA,oBAAU,EAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,CAAC;IACX,CAAC;AACH,CAAC"}
@@ -0,0 +1,58 @@
1
+ import { type AccountAuth, type AccountEntry } from './provider-accounts';
2
+ import type { ProviderAuthState } from './provider-state';
3
+ /**
4
+ * `looply provider login --name <n>`, `looply provider accounts`, `looply provider remove --name <n>`.
5
+ *
6
+ * Several AI accounts on one machine, each in its own profile directory. The
7
+ * login is the provider's own flow, run in the person's terminal; Looply keeps
8
+ * the directory's path and reads back only "logged in", the auth method and
9
+ * the plan name.
10
+ *
11
+ * ⚠️ A PERSONAL CLAUDE PRO OR MAX SUBSCRIPTION IS FOR ITS OWNER'S OWN USE. Only
12
+ * an API-key or a Team/Enterprise account may be shared with a workspace; the
13
+ * machine refuses the rest (see core `policyProblemFor`).
14
+ */
15
+ export declare const ACCOUNTS_USAGE: string;
16
+ export interface AccountsCmdDeps {
17
+ readonly home: string;
18
+ readonly platform: NodeJS.Platform;
19
+ readonly interactive: boolean;
20
+ now(): number;
21
+ /** The Claude Code executable Looply runs, or null when it is not installed. */
22
+ claudeExecutable(): string | null;
23
+ checkClaude(executable: string, profileDir: string): ProviderAuthState;
24
+ checkCodex(profileDir: string): AccountAuth;
25
+ codexExecutable(): string | null;
26
+ /** Run a login in the person's terminal with `env` added; its exit code. */
27
+ login(executable: string, args: readonly string[], env: Record<string, string>): Promise<number>;
28
+ out(line: string): void;
29
+ err(line: string): void;
30
+ }
31
+ interface Flags {
32
+ name?: string;
33
+ provider?: string;
34
+ label?: string;
35
+ bad?: string;
36
+ }
37
+ export declare function parseAccountFlags(args: readonly string[]): Flags;
38
+ /** Whether `looply provider <verb> <args>` is an accounts command (and not the original single-profile one). */
39
+ export declare function isAccountsCommand(verb: string, args: readonly string[]): boolean;
40
+ /** Ask one account whether it is logged in, and remember the answer for the choosing and the heartbeat. */
41
+ export declare function checkAccount(entry: AccountEntry, deps: AccountsCmdDeps): AccountAuth;
42
+ export declare function accountsCommand(verb: string, args: readonly string[], deps: AccountsCmdDeps): Promise<number>;
43
+ export declare function nodeAccountsDeps(base: {
44
+ claudeExecutable(): string | null;
45
+ checkClaude(executable: string, profileDir: string): ProviderAuthState;
46
+ codexExecutable(): string | null;
47
+ login(executable: string, args: readonly string[], env: Record<string, string>): Promise<number>;
48
+ }): AccountsCmdDeps;
49
+ /** How long one account's readiness answer is trusted, machine-wide, before a daemon asks again. */
50
+ export declare const ACCOUNT_READINESS_TTL_MS: number;
51
+ /**
52
+ * Ask each account whose last answer is older than the TTL whether it is
53
+ * logged in. Machine-wide: with many daemons on one machine, the first to find
54
+ * a stale answer refreshes it and the others read it.
55
+ */
56
+ export declare function refreshAccountReadiness(deps: AccountsCmdDeps): number;
57
+ export {};
58
+ //# sourceMappingURL=provider-accounts-cmd.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider-accounts-cmd.d.ts","sourceRoot":"","sources":["../src/provider-accounts-cmd.ts"],"names":[],"mappings":"AAEA,OAAO,EAUL,KAAK,WAAW,EAChB,KAAK,YAAY,EAClB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAE1D;;;;;;;;;;;GAWG;AAEH,eAAO,MAAM,cAAc,QAKf,CAAC;AAEb,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;IACnC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,GAAG,IAAI,MAAM,CAAC;IACd,gFAAgF;IAChF,gBAAgB,IAAI,MAAM,GAAG,IAAI,CAAC;IAClC,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,iBAAiB,CAAC;IACvE,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,WAAW,CAAC;IAC5C,eAAe,IAAI,MAAM,GAAG,IAAI,CAAC;IACjC,4EAA4E;IAC5E,KAAK,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACjG,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED,UAAU,KAAK;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,KAAK,CAmBhE;AAED,gHAAgH;AAChH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAGhF;AAYD,2GAA2G;AAC3G,wBAAgB,YAAY,CAAC,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,eAAe,GAAG,WAAW,CA4BpF;AAMD,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CA0GnH;AAGD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE;IACrC,gBAAgB,IAAI,MAAM,GAAG,IAAI,CAAC;IAClC,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,iBAAiB,CAAC;IACvE,eAAe,IAAI,MAAM,GAAG,IAAI,CAAC;IACjC,KAAK,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAClG,GAAG,eAAe,CAclB;AAED,oGAAoG;AACpG,eAAO,MAAM,wBAAwB,QAAa,CAAC;AAEnD;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,CAcrE"}