@agent-relay/factory 0.1.56 → 0.1.58

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/README.md +148 -2
  2. package/dist/cli/fleet.d.ts +13 -0
  3. package/dist/cli/fleet.d.ts.map +1 -1
  4. package/dist/cli/fleet.js +431 -103
  5. package/dist/cli/fleet.js.map +1 -1
  6. package/dist/config/schema.d.ts +1107 -348
  7. package/dist/config/schema.d.ts.map +1 -1
  8. package/dist/config/schema.js +67 -6
  9. package/dist/config/schema.js.map +1 -1
  10. package/dist/cost/index.d.ts +3 -0
  11. package/dist/cost/index.d.ts.map +1 -0
  12. package/dist/cost/index.js +3 -0
  13. package/dist/cost/index.js.map +1 -0
  14. package/dist/cost/ledger.d.ts +69 -0
  15. package/dist/cost/ledger.d.ts.map +1 -0
  16. package/dist/cost/ledger.js +162 -0
  17. package/dist/cost/ledger.js.map +1 -0
  18. package/dist/cost/pricing.d.ts +18 -0
  19. package/dist/cost/pricing.d.ts.map +1 -0
  20. package/dist/cost/pricing.js +54 -0
  21. package/dist/cost/pricing.js.map +1 -0
  22. package/dist/feature-guardian/conversation.d.ts +251 -0
  23. package/dist/feature-guardian/conversation.d.ts.map +1 -0
  24. package/dist/feature-guardian/conversation.js +1893 -0
  25. package/dist/feature-guardian/conversation.js.map +1 -0
  26. package/dist/feature-guardian/index.d.ts +2 -0
  27. package/dist/feature-guardian/index.d.ts.map +1 -0
  28. package/dist/feature-guardian/index.js +2 -0
  29. package/dist/feature-guardian/index.js.map +1 -0
  30. package/dist/fleet/internal-fleet-client.d.ts +3 -1
  31. package/dist/fleet/internal-fleet-client.d.ts.map +1 -1
  32. package/dist/fleet/internal-fleet-client.js +81 -0
  33. package/dist/fleet/internal-fleet-client.js.map +1 -1
  34. package/dist/fleet/relay-fleet-client.d.ts +3 -1
  35. package/dist/fleet/relay-fleet-client.d.ts.map +1 -1
  36. package/dist/fleet/relay-fleet-client.js +48 -0
  37. package/dist/fleet/relay-fleet-client.js.map +1 -1
  38. package/dist/github/index.d.ts +2 -0
  39. package/dist/github/index.d.ts.map +1 -1
  40. package/dist/github/index.js +1 -0
  41. package/dist/github/index.js.map +1 -1
  42. package/dist/github/routed-pr-babysitter.d.ts +48 -0
  43. package/dist/github/routed-pr-babysitter.d.ts.map +1 -0
  44. package/dist/github/routed-pr-babysitter.js +197 -0
  45. package/dist/github/routed-pr-babysitter.js.map +1 -0
  46. package/dist/hosted/index.d.ts +1 -1
  47. package/dist/hosted/index.d.ts.map +1 -1
  48. package/dist/hosted/index.js +1 -1
  49. package/dist/hosted/index.js.map +1 -1
  50. package/dist/hosted/orchestrator.d.ts +1 -0
  51. package/dist/hosted/orchestrator.d.ts.map +1 -1
  52. package/dist/hosted/orchestrator.js +190 -1
  53. package/dist/hosted/orchestrator.js.map +1 -1
  54. package/dist/hosted/types.d.ts +4 -0
  55. package/dist/hosted/types.d.ts.map +1 -1
  56. package/dist/index.d.ts +8 -4
  57. package/dist/index.d.ts.map +1 -1
  58. package/dist/index.js +5 -1
  59. package/dist/index.js.map +1 -1
  60. package/dist/intake/index.d.ts +4 -0
  61. package/dist/intake/index.d.ts.map +1 -0
  62. package/dist/intake/index.js +4 -0
  63. package/dist/intake/index.js.map +1 -0
  64. package/dist/intake/notion-relay-claim.d.ts +32 -0
  65. package/dist/intake/notion-relay-claim.d.ts.map +1 -0
  66. package/dist/intake/notion-relay-claim.js +173 -0
  67. package/dist/intake/notion-relay-claim.js.map +1 -0
  68. package/dist/intake/notion-relay-contract.d.ts +33 -0
  69. package/dist/intake/notion-relay-contract.d.ts.map +1 -0
  70. package/dist/intake/notion-relay-contract.js +163 -0
  71. package/dist/intake/notion-relay-contract.js.map +1 -0
  72. package/dist/intake/notion.d.ts +375 -0
  73. package/dist/intake/notion.d.ts.map +1 -0
  74. package/dist/intake/notion.js +773 -0
  75. package/dist/intake/notion.js.map +1 -0
  76. package/dist/mount/github-api-issue-read.d.ts +28 -0
  77. package/dist/mount/github-api-issue-read.d.ts.map +1 -0
  78. package/dist/mount/github-api-issue-read.js +163 -0
  79. package/dist/mount/github-api-issue-read.js.map +1 -0
  80. package/dist/mount/local-mount-preflight.d.ts +2 -0
  81. package/dist/mount/local-mount-preflight.d.ts.map +1 -1
  82. package/dist/mount/local-mount-preflight.js +59 -9
  83. package/dist/mount/local-mount-preflight.js.map +1 -1
  84. package/dist/mount/mount-auth-error.d.ts +41 -0
  85. package/dist/mount/mount-auth-error.d.ts.map +1 -0
  86. package/dist/mount/mount-auth-error.js +94 -0
  87. package/dist/mount/mount-auth-error.js.map +1 -0
  88. package/dist/mount/relayfile-binary.d.ts +5 -0
  89. package/dist/mount/relayfile-binary.d.ts.map +1 -1
  90. package/dist/mount/relayfile-binary.js +16 -2
  91. package/dist/mount/relayfile-binary.js.map +1 -1
  92. package/dist/mount/relayfile-cloud-mount-client.d.ts +18 -3
  93. package/dist/mount/relayfile-cloud-mount-client.d.ts.map +1 -1
  94. package/dist/mount/relayfile-cloud-mount-client.js +157 -13
  95. package/dist/mount/relayfile-cloud-mount-client.js.map +1 -1
  96. package/dist/mount/workspace-mirror.d.ts +13 -0
  97. package/dist/mount/workspace-mirror.d.ts.map +1 -0
  98. package/dist/mount/workspace-mirror.js +94 -0
  99. package/dist/mount/workspace-mirror.js.map +1 -0
  100. package/dist/observability/events.d.ts +715 -47
  101. package/dist/observability/events.d.ts.map +1 -1
  102. package/dist/observability/events.js +41 -0
  103. package/dist/observability/events.js.map +1 -1
  104. package/dist/orchestrator/factory.d.ts +51 -0
  105. package/dist/orchestrator/factory.d.ts.map +1 -1
  106. package/dist/orchestrator/factory.js +574 -50
  107. package/dist/orchestrator/factory.js.map +1 -1
  108. package/dist/ports/fleet.d.ts +11 -0
  109. package/dist/ports/fleet.d.ts.map +1 -1
  110. package/dist/ports/index.d.ts +2 -2
  111. package/dist/ports/index.d.ts.map +1 -1
  112. package/dist/ports/mount.d.ts +58 -1
  113. package/dist/ports/mount.d.ts.map +1 -1
  114. package/dist/ports/state.d.ts +42 -5
  115. package/dist/ports/state.d.ts.map +1 -1
  116. package/dist/state/file-state-store.d.ts +10 -1
  117. package/dist/state/file-state-store.d.ts.map +1 -1
  118. package/dist/state/file-state-store.js +91 -0
  119. package/dist/state/file-state-store.js.map +1 -1
  120. package/dist/state/in-memory-state-store.d.ts +10 -1
  121. package/dist/state/in-memory-state-store.d.ts.map +1 -1
  122. package/dist/state/in-memory-state-store.js +43 -0
  123. package/dist/state/in-memory-state-store.js.map +1 -1
  124. package/dist/telemetry.d.ts +9 -0
  125. package/dist/telemetry.d.ts.map +1 -0
  126. package/dist/telemetry.js +8 -0
  127. package/dist/telemetry.js.map +1 -0
  128. package/dist/testing/fakes.d.ts +8 -1
  129. package/dist/testing/fakes.d.ts.map +1 -1
  130. package/dist/testing/fakes.js +18 -0
  131. package/dist/testing/fakes.js.map +1 -1
  132. package/dist/triage/schema.d.ts +175 -42
  133. package/dist/triage/schema.d.ts.map +1 -1
  134. package/dist/triage/schema.js +19 -0
  135. package/dist/triage/schema.js.map +1 -1
  136. package/dist/types.d.ts +33 -0
  137. package/dist/types.d.ts.map +1 -1
  138. package/dist/writeback/github.d.ts.map +1 -1
  139. package/dist/writeback/github.js +39 -0
  140. package/dist/writeback/github.js.map +1 -1
  141. package/package.json +15 -2
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAnDnF,sEAAsE;;YAEtE,+EAA+E;;YAE/E,2EAA2E;;YAE3E,4EAA4E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmK8B,CAAA;AAsI5G,+EAA+E;AAC/E,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,SAAS,GAAG,MAAM,CAOxE;AAMD,MAAM,WAAW,mBAAmB;IAClC,eAAe,EAAE,eAAe,CAAA;IAChC,UAAU,EAAE,UAAU,CAAA;IACtB,aAAa,EAAE,aAAa,CAAA;CAC7B;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,mBAAmB,CAgBrE;AA6FD,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AACnE,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAA;AACzD,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAC/D,MAAM,MAAM,aAAa,GAAG,WAAW,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAA;AACjE,MAAM,MAAM,oBAAoB,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAA"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { homedir } from 'node:os';
2
- import { join } from 'node:path';
2
+ import { isAbsolute, join } from 'node:path';
3
3
  import { z } from 'zod';
4
4
  import { KubernetesEnvironmentConfigSchema } from '../environments/connection-registry.js';
5
5
  // The five workflow-state roles the factory drives an issue through. Each is
@@ -106,6 +106,15 @@ const slackSchema = z.object({
106
106
  }).optional();
107
107
  const babysitterSchema = z.object({
108
108
  enabled: z.boolean().default(false),
109
+ // Select the declarative intake/discovery surface. Routed activation is
110
+ // deliberately disabled in src/github/routed-pr-babysitter.ts until the
111
+ // lifecycle design lands, so this value cannot spawn a routed worker yet.
112
+ mode: z.enum(['factory-created', 'routed-open-prs']).default('factory-created'),
113
+ // Discovery excludes candidates carrying an author-controlled stop label.
114
+ excludeLabels: z.array(z.string().trim().min(1)).default(['factory:skip-babysitter']),
115
+ excludePullRequests: z.array(z.string().regex(/^[A-Za-z0-9](?:[A-Za-z0-9_.-]{0,99})\/[A-Za-z0-9](?:[A-Za-z0-9_.-]{0,99})#[1-9]\d*$/u, 'expected owner/repo#number')).default([]),
116
+ // Reserved for the activation design; discovery itself never notifies.
117
+ notifyHumans: z.boolean().default(false),
109
118
  }).default({});
110
119
  const reportingSchema = z.object({
111
120
  enabled: z.boolean().default(true),
@@ -208,6 +217,14 @@ const WorkspaceConfigObjectSchema = z.object({
208
217
  // falling back to the SDK's built-in default. Set it only to pin a non-active
209
218
  // workspace. See resolveFactoryWorkspace() in relayfile-cloud-mount-client.ts.
210
219
  workspaceId: z.string().optional(),
220
+ // Optional exact root of this workspace's single Relayfile mirror. When
221
+ // omitted Factory reads Relayfile's existing registration. This is a
222
+ // workspace-scoped escape hatch, never a request to re-home per checkout.
223
+ localMountRoot: z.string()
224
+ .trim()
225
+ .min(1)
226
+ .refine(isAbsolute, 'localMountRoot must be an absolute path')
227
+ .optional(),
211
228
  subscription: subscriptionSchema,
212
229
  liveSubscription: liveSubscriptionSchema,
213
230
  dispatch: dispatchSchema,
@@ -218,9 +235,12 @@ const WorkspaceConfigObjectSchema = z.object({
218
235
  models: modelsSchema,
219
236
  agentCapabilities: agentCapabilitiesSchema,
220
237
  slack: slackSchema,
221
- // Linear remains the default whenever its issue sub-root is connected. When
222
- // omitted, the orchestrator probes that sub-root once and falls back to
223
- // GitHub-native issue lifecycle handling only when Linear is absent.
238
+ // This selects the discovery + lifecycle-writeback adapter, not every intake
239
+ // surface. Notion deliberately remains a separate intake command that
240
+ // normalizes repository work into GitHub lifecycle issues. Linear remains
241
+ // the default whenever its issue sub-root is connected. When omitted, the
242
+ // orchestrator probes that sub-root once and falls back to GitHub-native
243
+ // issue lifecycle handling only when Linear is absent.
224
244
  issueSource: z.enum(['linear', 'github']).optional(),
225
245
  mergePolicy: z.enum(['never', 'on-green-with-review']).default('never'),
226
246
  // Opt-in PR babysitter. When enabled, a sonnet agent is spawned once the
@@ -270,9 +290,50 @@ const NodeConfigObjectSchema = z.object({
270
290
  preview: previewSchema,
271
291
  });
272
292
  const FactoryConfigObjectSchema = WorkspaceConfigObjectSchema.merge(NodeConfigObjectSchema);
273
- export const WorkspaceConfigSchema = WorkspaceConfigObjectSchema.transform((cfg) => normalizeWorkspaceConfig(cfg));
293
+ // Shared with routedPrRepos (src/github/routed-pr-babysitter.ts): the last
294
+ // step in resolving a repos.names entry to a routable owner/repo slug. A
295
+ // resolved value that already has a slash is used as-is; one that doesn't
296
+ // gets `org` prefixed as a rescue, regardless of whether it came from an
297
+ // explicit byLabel entry, overrides, or the bare name itself -- that rescue
298
+ // used to live only in routedPrRepos, so a validator that ran before
299
+ // normalizeFactoryConfig's transform (and so never saw org get applied)
300
+ // could reject a config routedPrRepos would resolve fine at runtime.
301
+ export const resolveRoutedRepo = (configured, org) => {
302
+ const repo = configured.includes('/') ? configured : (org ? `${org}/${configured}` : undefined);
303
+ return repo && /^[^/]+\/[^/]+$/u.test(repo) ? repo : undefined;
304
+ };
305
+ const requireRoutedBabysitterRepos = (cfg, ctx) => {
306
+ if (cfg.babysitter.mode === 'routed-open-prs' && (cfg.repos.names?.length ?? 0) === 0) {
307
+ ctx.addIssue({
308
+ code: z.ZodIssueCode.custom,
309
+ path: ['repos', 'names'],
310
+ message: 'repos.names must contain at least one repository when babysitter.mode is routed-open-prs',
311
+ });
312
+ return;
313
+ }
314
+ if (cfg.babysitter.mode === 'routed-open-prs') {
315
+ // Mirror resolveRepos' own derivation (overrides win over a bare
316
+ // org/name, explicit byLabel wins over that) instead of a second,
317
+ // hand-rolled copy of that fallback chain that can drift from it.
318
+ const { byLabel } = resolveRepos(cfg.repos, cfg.repos.cloneRoot);
319
+ const routedRepos = (cfg.repos.names ?? [])
320
+ .map((name) => resolveRoutedRepo(byLabel[name] ?? name, cfg.repos.org));
321
+ if (!routedRepos.some(Boolean)) {
322
+ ctx.addIssue({
323
+ code: z.ZodIssueCode.custom,
324
+ path: ['repos', 'names'],
325
+ message: 'repos.names must resolve at least one owner/repository route when babysitter.mode is routed-open-prs',
326
+ });
327
+ }
328
+ }
329
+ };
330
+ export const WorkspaceConfigSchema = WorkspaceConfigObjectSchema
331
+ .superRefine(requireRoutedBabysitterRepos)
332
+ .transform((cfg) => normalizeWorkspaceConfig(cfg));
274
333
  export const NodeConfigSchema = NodeConfigObjectSchema.transform((cfg) => normalizeNodeConfig(cfg));
275
- export const FactoryConfigSchema = FactoryConfigObjectSchema.transform((cfg) => normalizeFactoryConfig(cfg));
334
+ export const FactoryConfigSchema = FactoryConfigObjectSchema
335
+ .superRefine(requireRoutedBabysitterRepos)
336
+ .transform((cfg) => normalizeFactoryConfig(cfg));
276
337
  function normalizeWorkspaceConfig(cfg) {
277
338
  const resolved = resolveRepos(cfg.repos, cfg.repos.cloneRoot);
278
339
  const labels = resolveSubscriptionLabels(cfg.subscription.labels, cfg.repos.names ?? []);
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export * from './ledger.js';
2
+ export * from './pricing.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cost/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA"}
@@ -0,0 +1,3 @@
1
+ export * from './ledger.js';
2
+ export * from './pricing.js';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cost/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA"}
@@ -0,0 +1,69 @@
1
+ export declare const COST_LEDGER_ROLES: readonly ["implementer", "reviewer", "babysitter", "triage", "workflow"];
2
+ export type CostLedgerRole = (typeof COST_LEDGER_ROLES)[number];
3
+ /** Matches the closed cloud-event bound for one role's model breakdown. */
4
+ export declare const MAX_RUN_COST_MODELS_PER_ROLE = 32;
5
+ export declare const RUN_COST_OTHER_MODELS_ID = "factory/other-models";
6
+ export interface CostLedgerRecord {
7
+ runId: string;
8
+ role: CostLedgerRole;
9
+ model: string;
10
+ inputTokens: number | null;
11
+ outputTokens: number | null;
12
+ usd: number | null;
13
+ }
14
+ export type CostLedgerRecordInput = Omit<CostLedgerRecord, 'usd'>;
15
+ export interface CostModelBreakdown {
16
+ model: string;
17
+ inputTokens: number | null;
18
+ outputTokens: number | null;
19
+ usd: number | null;
20
+ }
21
+ export interface CostRoleBreakdown {
22
+ role: CostLedgerRole;
23
+ inputTokens: number | null;
24
+ outputTokens: number | null;
25
+ usd: number | null;
26
+ byModel: CostModelBreakdown[];
27
+ }
28
+ export interface RunCostTotal {
29
+ runId: string;
30
+ inputTokens: number | null;
31
+ outputTokens: number | null;
32
+ usd: number | null;
33
+ byRole: CostRoleBreakdown[];
34
+ }
35
+ export interface UnpricedModelCostRecord extends CostLedgerRecord {
36
+ usd: null;
37
+ }
38
+ export type UnpricedModelListener = (record: UnpricedModelCostRecord) => void;
39
+ export interface CostLedgerRecordOptions {
40
+ /**
41
+ * Deterministic logical identity for cumulative runtime updates. Factory uses
42
+ * run id + agent name, so a later usage report replaces rather than doubles
43
+ * the same spawned agent.
44
+ */
45
+ entryId?: string;
46
+ /** Rehydrating durable usage must not emit a duplicate unpriced-model notice. */
47
+ notifyUnpriced?: boolean;
48
+ }
49
+ /**
50
+ * In-memory accounting seam for one Factory process. Durable run records retain
51
+ * the completion aggregate; this ledger keeps the detailed live attribution.
52
+ */
53
+ export declare class CostLedger {
54
+ #private;
55
+ record(input: CostLedgerRecordInput, options?: CostLedgerRecordOptions): CostLedgerRecord;
56
+ hasEntry(entryId: string): boolean;
57
+ getRunRecords(runId: string): CostLedgerRecord[];
58
+ getRunTotal(runId: string): RunCostTotal;
59
+ getRunByRole(runId: string): CostRoleBreakdown[];
60
+ onUnpricedModel(listener: UnpricedModelListener): () => void;
61
+ }
62
+ /**
63
+ * Produces the deterministic, privacy-safe shape persisted and emitted when a
64
+ * run completes. The detailed ledger remains available through
65
+ * getRunRecords(); excess model buckets are folded into one aggregate instead
66
+ * of making the bounded observability event invalid.
67
+ */
68
+ export declare const boundedRunCostTotal: (total: RunCostTotal) => RunCostTotal;
69
+ //# sourceMappingURL=ledger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ledger.d.ts","sourceRoot":"","sources":["../../src/cost/ledger.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,iBAAiB,0EAMpB,CAAA;AAEV,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAA;AAE/D,2EAA2E;AAC3E,eAAO,MAAM,4BAA4B,KAAK,CAAA;AAC9C,eAAO,MAAM,wBAAwB,yBAAyB,CAAA;AAE9D,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,cAAc,CAAA;IACpB,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;CACnB;AAED,MAAM,MAAM,qBAAqB,GAAG,IAAI,CAAC,gBAAgB,EAAE,KAAK,CAAC,CAAA;AAEjE,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,cAAc,CAAA;IACpB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;IAClB,OAAO,EAAE,kBAAkB,EAAE,CAAA;CAC9B;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;IAClB,MAAM,EAAE,iBAAiB,EAAE,CAAA;CAC5B;AAED,MAAM,WAAW,uBAAwB,SAAQ,gBAAgB;IAC/D,GAAG,EAAE,IAAI,CAAA;CACV;AAED,MAAM,MAAM,qBAAqB,GAAG,CAAC,MAAM,EAAE,uBAAuB,KAAK,IAAI,CAAA;AAE7E,MAAM,WAAW,uBAAuB;IACtC;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,iFAAiF;IACjF,cAAc,CAAC,EAAE,OAAO,CAAA;CACzB;AAED;;;GAGG;AACH,qBAAa,UAAU;;IAMrB,MAAM,CAAC,KAAK,EAAE,qBAAqB,EAAE,OAAO,GAAE,uBAA4B,GAAG,gBAAgB;IAc7F,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAIlC,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,gBAAgB,EAAE;IAMhD,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY;IAWxC,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,iBAAiB,EAAE;IAkBhD,eAAe,CAAC,QAAQ,EAAE,qBAAqB,GAAG,MAAM,IAAI;CAiB7D;AAiBD;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,GAAI,OAAO,YAAY,KAAG,YAKxD,CAAA"}
@@ -0,0 +1,162 @@
1
+ import { estimateCostUsd, hasModelPricing, roundUsd } from './pricing.js';
2
+ export const COST_LEDGER_ROLES = [
3
+ 'implementer',
4
+ 'reviewer',
5
+ 'babysitter',
6
+ 'triage',
7
+ 'workflow',
8
+ ];
9
+ /** Matches the closed cloud-event bound for one role's model breakdown. */
10
+ export const MAX_RUN_COST_MODELS_PER_ROLE = 32;
11
+ export const RUN_COST_OTHER_MODELS_ID = 'factory/other-models';
12
+ /**
13
+ * In-memory accounting seam for one Factory process. Durable run records retain
14
+ * the completion aggregate; this ledger keeps the detailed live attribution.
15
+ */
16
+ export class CostLedger {
17
+ #records = new Map();
18
+ #unpricedListeners = new Set();
19
+ #reportedUnpricedModels = new Set();
20
+ #nextEntry = 0;
21
+ record(input, options = {}) {
22
+ const normalized = normalizeRecordInput(input);
23
+ const unpriced = !hasModelPricing(normalized.model);
24
+ const usd = normalized.inputTokens === null || normalized.outputTokens === null
25
+ ? null
26
+ : estimateCostUsd(normalized.model, normalized.inputTokens, normalized.outputTokens);
27
+ const record = { ...normalized, usd };
28
+ const entryId = options.entryId ?? `entry:${this.#nextEntry++}`;
29
+ this.#records.set(entryId, record);
30
+ if (unpriced && options.notifyUnpriced !== false)
31
+ this.#emitUnpriced(record);
32
+ return structuredClone(record);
33
+ }
34
+ hasEntry(entryId) {
35
+ return this.#records.has(entryId);
36
+ }
37
+ getRunRecords(runId) {
38
+ return [...this.#records.values()]
39
+ .filter((record) => record.runId === runId)
40
+ .map((record) => structuredClone(record));
41
+ }
42
+ getRunTotal(runId) {
43
+ const byRole = this.getRunByRole(runId);
44
+ return {
45
+ runId,
46
+ inputTokens: nullableSum(byRole.map((entry) => entry.inputTokens)),
47
+ outputTokens: nullableSum(byRole.map((entry) => entry.outputTokens)),
48
+ usd: nullableUsdSum(byRole.map((entry) => entry.usd)),
49
+ byRole,
50
+ };
51
+ }
52
+ getRunByRole(runId) {
53
+ const records = this.getRunRecords(runId);
54
+ const roles = new Map();
55
+ for (const record of records) {
56
+ const current = roles.get(record.role) ?? [];
57
+ current.push(record);
58
+ roles.set(record.role, current);
59
+ }
60
+ return [...roles].map(([role, roleRecords]) => ({
61
+ role,
62
+ inputTokens: nullableSum(roleRecords.map((record) => record.inputTokens)),
63
+ outputTokens: nullableSum(roleRecords.map((record) => record.outputTokens)),
64
+ usd: nullableUsdSum(roleRecords.map((record) => record.usd)),
65
+ byModel: modelBreakdowns(roleRecords),
66
+ })).sort((left, right) => roleIndex(left.role) - roleIndex(right.role));
67
+ }
68
+ onUnpricedModel(listener) {
69
+ this.#unpricedListeners.add(listener);
70
+ return () => this.#unpricedListeners.delete(listener);
71
+ }
72
+ #emitUnpriced(record) {
73
+ const key = `${record.runId}\0${record.model}`;
74
+ if (this.#reportedUnpricedModels.has(key))
75
+ return;
76
+ this.#reportedUnpricedModels.add(key);
77
+ for (const listener of this.#unpricedListeners) {
78
+ try {
79
+ listener(structuredClone(record));
80
+ }
81
+ catch {
82
+ // Cost accounting is an observability aid, never a run dependency.
83
+ }
84
+ }
85
+ }
86
+ }
87
+ const modelBreakdowns = (records) => {
88
+ const models = new Map();
89
+ for (const record of records) {
90
+ const current = models.get(record.model) ?? [];
91
+ current.push(record);
92
+ models.set(record.model, current);
93
+ }
94
+ return [...models].map(([model, modelRecords]) => ({
95
+ model,
96
+ inputTokens: nullableSum(modelRecords.map((record) => record.inputTokens)),
97
+ outputTokens: nullableSum(modelRecords.map((record) => record.outputTokens)),
98
+ usd: nullableUsdSum(modelRecords.map((record) => record.usd)),
99
+ })).sort((left, right) => compareModelIds(left.model, right.model));
100
+ };
101
+ /**
102
+ * Produces the deterministic, privacy-safe shape persisted and emitted when a
103
+ * run completes. The detailed ledger remains available through
104
+ * getRunRecords(); excess model buckets are folded into one aggregate instead
105
+ * of making the bounded observability event invalid.
106
+ */
107
+ export const boundedRunCostTotal = (total) => ({
108
+ ...structuredClone(total),
109
+ byRole: total.byRole
110
+ .map((role) => ({ ...structuredClone(role), byModel: boundedModels(role.byModel) }))
111
+ .sort((left, right) => roleIndex(left.role) - roleIndex(right.role)),
112
+ });
113
+ const boundedModels = (models) => {
114
+ const sorted = structuredClone(models).sort((left, right) => compareModelIds(left.model, right.model));
115
+ if (sorted.length <= MAX_RUN_COST_MODELS_PER_ROLE)
116
+ return sorted;
117
+ const candidates = sorted.filter((entry) => entry.model !== RUN_COST_OTHER_MODELS_ID);
118
+ const overflow = [
119
+ ...sorted.filter((entry) => entry.model === RUN_COST_OTHER_MODELS_ID),
120
+ ...candidates.slice(MAX_RUN_COST_MODELS_PER_ROLE - 1),
121
+ ];
122
+ return [
123
+ ...candidates.slice(0, MAX_RUN_COST_MODELS_PER_ROLE - 1),
124
+ {
125
+ model: RUN_COST_OTHER_MODELS_ID,
126
+ inputTokens: nullableSum(overflow.map((entry) => entry.inputTokens)),
127
+ outputTokens: nullableSum(overflow.map((entry) => entry.outputTokens)),
128
+ usd: nullableUsdSum(overflow.map((entry) => entry.usd)),
129
+ },
130
+ ];
131
+ };
132
+ const roleIndex = (role) => COST_LEDGER_ROLES.indexOf(role);
133
+ const compareModelIds = (left, right) => left < right ? -1 : left > right ? 1 : 0;
134
+ const normalizeRecordInput = (input) => ({
135
+ runId: boundedIdentifier(input.runId, 'unknown-run'),
136
+ role: COST_LEDGER_ROLES.includes(input.role) ? input.role : 'triage',
137
+ model: boundedModelId(input.model),
138
+ inputTokens: tokenCount(input.inputTokens),
139
+ outputTokens: tokenCount(input.outputTokens),
140
+ });
141
+ const boundedIdentifier = (value, fallback) => {
142
+ const normalized = typeof value === 'string' ? value.trim() : '';
143
+ return (normalized || fallback).slice(0, 256);
144
+ };
145
+ const boundedModelId = (value) => {
146
+ const normalized = boundedIdentifier(value, 'unknown');
147
+ return /^[a-zA-Z0-9][a-zA-Z0-9._:/-]{0,119}$/u.test(normalized)
148
+ ? normalized
149
+ : 'unknown';
150
+ };
151
+ const tokenCount = (value) => value !== null && Number.isSafeInteger(value) && value >= 0 ? value : null;
152
+ const nullableSum = (values) => {
153
+ const known = values.filter((value) => value !== null);
154
+ if (known.length === 0)
155
+ return null;
156
+ return known.reduce((sum, value) => sum >= Number.MAX_SAFE_INTEGER - value ? Number.MAX_SAFE_INTEGER : sum + value, 0);
157
+ };
158
+ const nullableUsdSum = (values) => {
159
+ const total = nullableSum(values);
160
+ return total === null ? null : roundUsd(total);
161
+ };
162
+ //# sourceMappingURL=ledger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ledger.js","sourceRoot":"","sources":["../../src/cost/ledger.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ export interface ModelPricing {
2
+ costPer1MInput: number;
3
+ costPer1MOutput: number;
4
+ }
5
+ /**
6
+ * Factory's metered model catalog. Keep the shape aligned with NightCTO's
7
+ * openrouter-client model ladder so model-routing work can share prices later.
8
+ */
9
+ export declare const MODEL_PRICING: Readonly<Record<string, ModelPricing>>;
10
+ export interface EstimateCostUsdOptions {
11
+ /** A bounded accounting notice; callback failures are deliberately ignored. */
12
+ onUnpricedModel?: (model: string) => void;
13
+ }
14
+ export declare function hasModelPricing(model: string): boolean;
15
+ /** Estimate a metered model cost without ever making accounting control flow fatal. */
16
+ export declare function estimateCostUsd(model: string, inputTokens: number, outputTokens: number, options?: EstimateCostUsdOptions): number | null;
17
+ export declare const roundUsd: (value: number) => number;
18
+ //# sourceMappingURL=pricing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pricing.d.ts","sourceRoot":"","sources":["../../src/cost/pricing.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY;IAC3B,cAAc,EAAE,MAAM,CAAA;IACtB,eAAe,EAAE,MAAM,CAAA;CACxB;AAED;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAyB/D,CAAA;AAEF,MAAM,WAAW,sBAAsB;IACrC,+EAA+E;IAC/E,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CAC1C;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEtD;AAED,uFAAuF;AACvF,wBAAgB,eAAe,CAC7B,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,EACpB,OAAO,GAAE,sBAA2B,GACnC,MAAM,GAAG,IAAI,CAef;AAED,eAAO,MAAM,QAAQ,GAAI,OAAO,MAAM,KAAG,MAAkC,CAAA"}
@@ -0,0 +1,54 @@
1
+ /**
2
+ * Factory's metered model catalog. Keep the shape aligned with NightCTO's
3
+ * openrouter-client model ladder so model-routing work can share prices later.
4
+ */
5
+ export const MODEL_PRICING = Object.freeze({
6
+ 'deepseek/deepseek-chat-v3-0324': {
7
+ costPer1MInput: 0.27,
8
+ costPer1MOutput: 1.1,
9
+ },
10
+ 'openai/gpt-4o-mini': {
11
+ costPer1MInput: 0.15,
12
+ costPer1MOutput: 0.6,
13
+ },
14
+ 'anthropic/claude-haiku-4.5': {
15
+ costPer1MInput: 1,
16
+ costPer1MOutput: 5,
17
+ },
18
+ 'anthropic/claude-sonnet-4.5': {
19
+ costPer1MInput: 3,
20
+ costPer1MOutput: 15,
21
+ },
22
+ 'openai/gpt-5.4': {
23
+ costPer1MInput: 5,
24
+ costPer1MOutput: 15,
25
+ },
26
+ 'openai/gpt-5.4-pro': {
27
+ costPer1MInput: 15,
28
+ costPer1MOutput: 60,
29
+ },
30
+ });
31
+ export function hasModelPricing(model) {
32
+ return Object.prototype.hasOwnProperty.call(MODEL_PRICING, model);
33
+ }
34
+ /** Estimate a metered model cost without ever making accounting control flow fatal. */
35
+ export function estimateCostUsd(model, inputTokens, outputTokens, options = {}) {
36
+ if (!hasModelPricing(model)) {
37
+ try {
38
+ options.onUnpricedModel?.(model);
39
+ }
40
+ catch {
41
+ // Observability and accounting callbacks must never affect a run.
42
+ }
43
+ return null;
44
+ }
45
+ const pricing = MODEL_PRICING[model];
46
+ if (!validTokenCount(inputTokens) || !validTokenCount(outputTokens))
47
+ return null;
48
+ const inputCost = (inputTokens / 1_000_000) * pricing.costPer1MInput;
49
+ const outputCost = (outputTokens / 1_000_000) * pricing.costPer1MOutput;
50
+ return roundUsd(inputCost + outputCost);
51
+ }
52
+ export const roundUsd = (value) => Number(value.toFixed(6));
53
+ const validTokenCount = (value) => Number.isSafeInteger(value) && value >= 0;
54
+ //# sourceMappingURL=pricing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pricing.js","sourceRoot":"","sources":["../../src/cost/pricing.ts"],"names":[],"mappings":"AAKA;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GAA2C,MAAM,CAAC,MAAM,CAAC;IACjF,gCAAgC,EAAE;QAChC,cAAc,EAAE,IAAI;QACpB,eAAe,EAAE,GAAG;KACrB;IACD,oBAAoB,EAAE;QACpB,cAAc,EAAE,IAAI;QACpB,eAAe,EAAE,GAAG;KACrB;IACD,4BAA4B,EAAE;QAC5B,cAAc,EAAE,CAAC;QACjB,eAAe,EAAE,CAAC;KACnB;IACD,6BAA6B,EAAE;QAC7B,cAAc,EAAE,CAAC;QACjB,eAAe,EAAE,EAAE;KACpB;IACD,gBAAgB,EAAE;QAChB,cAAc,EAAE,CAAC;QACjB,eAAe,EAAE,EAAE;KACpB;IACD,oBAAoB,EAAE;QACpB,cAAc,EAAE,EAAE;QAClB,eAAe,EAAE,EAAE;KACpB;CACF,CAAC,CAAA;AAOF,MAAM,UAAU,eAAe,CAAC,KAAa;IAC3C,OAAO,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,aAAa,EAAE,KAAK,CAAC,CAAA;AACnE,CAAC;AAED,uFAAuF;AACvF,MAAM,UAAU,eAAe,CAC7B,KAAa,EACb,WAAmB,EACnB,YAAoB,EACpB,UAAkC,EAAE;IAEpC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5B,IAAI,CAAC;YACH,OAAO,CAAC,eAAe,EAAE,CAAC,KAAK,CAAC,CAAA;QAClC,CAAC;QAAC,MAAM,CAAC;YACP,kEAAkE;QACpE,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IACD,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,CAAE,CAAA;IACrC,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC;QAAE,OAAO,IAAI,CAAA;IAEhF,MAAM,SAAS,GAAG,CAAC,WAAW,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC,cAAc,CAAA;IACpE,MAAM,UAAU,GAAG,CAAC,YAAY,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC,eAAe,CAAA;IACvE,OAAO,QAAQ,CAAC,SAAS,GAAG,UAAU,CAAC,CAAA;AACzC,CAAC;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;AAE3E,MAAM,eAAe,GAAG,CAAC,KAAa,EAAW,EAAE,CACjD,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAA"}