audit-tools 0.32.23 → 0.32.28

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 (148) hide show
  1. package/dist/audit/cli/conceptualDispatch.d.ts +11 -0
  2. package/dist/audit/cli/conceptualDispatch.d.ts.map +1 -1
  3. package/dist/audit/cli/conceptualDispatch.js +31 -1
  4. package/dist/audit/cli/conceptualDispatch.js.map +1 -1
  5. package/dist/audit/cli/dispatch/quotaPool.d.ts.map +1 -1
  6. package/dist/audit/cli/dispatch/quotaPool.js +7 -1
  7. package/dist/audit/cli/dispatch/quotaPool.js.map +1 -1
  8. package/dist/audit/cli/nextStepHelpers.d.ts +27 -0
  9. package/dist/audit/cli/nextStepHelpers.d.ts.map +1 -1
  10. package/dist/audit/cli/nextStepHelpers.js +55 -17
  11. package/dist/audit/cli/nextStepHelpers.js.map +1 -1
  12. package/dist/audit/contracts/workerSchemas.d.ts +4 -4
  13. package/dist/audit/contracts/wrapperResponse.d.ts +6 -6
  14. package/dist/audit/orchestrator/advance.d.ts +18 -19
  15. package/dist/audit/orchestrator/advance.d.ts.map +1 -1
  16. package/dist/audit/orchestrator/advance.js +32 -40
  17. package/dist/audit/orchestrator/advance.js.map +1 -1
  18. package/dist/audit/orchestrator/advanceTypes.d.ts +0 -17
  19. package/dist/audit/orchestrator/advanceTypes.d.ts.map +1 -1
  20. package/dist/audit/orchestrator/hostInputPause.d.ts +69 -0
  21. package/dist/audit/orchestrator/hostInputPause.d.ts.map +1 -0
  22. package/dist/audit/orchestrator/hostInputPause.js +90 -0
  23. package/dist/audit/orchestrator/hostInputPause.js.map +1 -0
  24. package/dist/audit/quota/index.d.ts +29 -24
  25. package/dist/audit/quota/index.d.ts.map +1 -1
  26. package/dist/audit/types.d.ts +2 -2
  27. package/dist/remediate/contractPipeline/artifactStore.d.ts +27 -0
  28. package/dist/remediate/contractPipeline/artifactStore.d.ts.map +1 -1
  29. package/dist/remediate/contractPipeline/artifactStore.js +34 -0
  30. package/dist/remediate/contractPipeline/artifactStore.js.map +1 -1
  31. package/dist/remediate/contractPipeline/changeClassification.d.ts +9 -3
  32. package/dist/remediate/contractPipeline/changeClassification.d.ts.map +1 -1
  33. package/dist/remediate/contractPipeline/changeClassification.js +25 -6
  34. package/dist/remediate/contractPipeline/changeClassification.js.map +1 -1
  35. package/dist/remediate/contractPipeline/derive.d.ts +42 -0
  36. package/dist/remediate/contractPipeline/derive.d.ts.map +1 -1
  37. package/dist/remediate/contractPipeline/derive.js +108 -0
  38. package/dist/remediate/contractPipeline/derive.js.map +1 -1
  39. package/dist/remediate/index.d.ts.map +1 -1
  40. package/dist/remediate/index.js +9 -1
  41. package/dist/remediate/index.js.map +1 -1
  42. package/dist/remediate/intake.d.ts +10 -0
  43. package/dist/remediate/intake.d.ts.map +1 -1
  44. package/dist/remediate/intake.js +20 -1
  45. package/dist/remediate/intake.js.map +1 -1
  46. package/dist/remediate/phases/grounding.d.ts +7 -4
  47. package/dist/remediate/phases/grounding.d.ts.map +1 -1
  48. package/dist/remediate/phases/grounding.js +52 -8
  49. package/dist/remediate/phases/grounding.js.map +1 -1
  50. package/dist/remediate/steps/contractPipelinePrompts.d.ts +1 -0
  51. package/dist/remediate/steps/contractPipelinePrompts.d.ts.map +1 -1
  52. package/dist/remediate/steps/contractPipelinePrompts.js +2 -2
  53. package/dist/remediate/steps/contractPipelinePrompts.js.map +1 -1
  54. package/dist/remediate/steps/dispatch/acceptNode.d.ts +25 -0
  55. package/dist/remediate/steps/dispatch/acceptNode.d.ts.map +1 -1
  56. package/dist/remediate/steps/dispatch/acceptNode.js +65 -7
  57. package/dist/remediate/steps/dispatch/acceptNode.js.map +1 -1
  58. package/dist/remediate/steps/dispatch/common.d.ts +11 -0
  59. package/dist/remediate/steps/dispatch/common.d.ts.map +1 -1
  60. package/dist/remediate/steps/dispatch/common.js +16 -0
  61. package/dist/remediate/steps/dispatch/common.js.map +1 -1
  62. package/dist/remediate/steps/dispatch/implementPrompt.d.ts +13 -0
  63. package/dist/remediate/steps/dispatch/implementPrompt.d.ts.map +1 -1
  64. package/dist/remediate/steps/dispatch/implementPrompt.js +33 -7
  65. package/dist/remediate/steps/dispatch/implementPrompt.js.map +1 -1
  66. package/dist/remediate/steps/dispatch/marshal.d.ts.map +1 -1
  67. package/dist/remediate/steps/dispatch/marshal.js +77 -9
  68. package/dist/remediate/steps/dispatch/marshal.js.map +1 -1
  69. package/dist/remediate/steps/dispatch/waveScheduling.d.ts.map +1 -1
  70. package/dist/remediate/steps/dispatch/waveScheduling.js +3 -1
  71. package/dist/remediate/steps/dispatch/waveScheduling.js.map +1 -1
  72. package/dist/remediate/steps/dispatch/worktreeLifecycle.d.ts +55 -16
  73. package/dist/remediate/steps/dispatch/worktreeLifecycle.d.ts.map +1 -1
  74. package/dist/remediate/steps/dispatch/worktreeLifecycle.js +119 -16
  75. package/dist/remediate/steps/dispatch/worktreeLifecycle.js.map +1 -1
  76. package/dist/remediate/steps/dispatch.d.ts +2 -2
  77. package/dist/remediate/steps/dispatch.d.ts.map +1 -1
  78. package/dist/remediate/steps/dispatch.js +2 -2
  79. package/dist/remediate/steps/dispatch.js.map +1 -1
  80. package/dist/remediate/steps/nextStep.d.ts.map +1 -1
  81. package/dist/remediate/steps/nextStep.js +12 -1
  82. package/dist/remediate/steps/nextStep.js.map +1 -1
  83. package/dist/remediate/validation/artifacts.d.ts.map +1 -1
  84. package/dist/remediate/validation/artifacts.js +38 -1
  85. package/dist/remediate/validation/artifacts.js.map +1 -1
  86. package/dist/remediate/validation/contractPipeline.d.ts +1 -1
  87. package/dist/remediate/validation/contractPipeline.d.ts.map +1 -1
  88. package/dist/remediate/validation/contractPipeline.js +1 -1
  89. package/dist/remediate/validation/contractPipeline.js.map +1 -1
  90. package/dist/remediate/validation/contractPipelineGates.d.ts +15 -0
  91. package/dist/remediate/validation/contractPipelineGates.d.ts.map +1 -1
  92. package/dist/remediate/validation/contractPipelineGates.js +168 -2
  93. package/dist/remediate/validation/contractPipelineGates.js.map +1 -1
  94. package/dist/shared/dispatch/admissionLoop.d.ts +12 -12
  95. package/dist/shared/dispatch/costRank.d.ts +17 -1
  96. package/dist/shared/dispatch/costRank.d.ts.map +1 -1
  97. package/dist/shared/dispatch/costRank.js +8 -4
  98. package/dist/shared/dispatch/costRank.js.map +1 -1
  99. package/dist/shared/dispatch/rollingDispatch.d.ts.map +1 -1
  100. package/dist/shared/dispatch/rollingDispatch.js +16 -3
  101. package/dist/shared/dispatch/rollingDispatch.js.map +1 -1
  102. package/dist/shared/friction/captureFrictionEvent.d.ts +13 -0
  103. package/dist/shared/friction/captureFrictionEvent.d.ts.map +1 -1
  104. package/dist/shared/friction/captureFrictionEvent.js.map +1 -1
  105. package/dist/shared/friction/frictionRecord.d.ts +55 -1
  106. package/dist/shared/friction/frictionRecord.d.ts.map +1 -1
  107. package/dist/shared/friction/frictionRecord.js +40 -0
  108. package/dist/shared/friction/frictionRecord.js.map +1 -1
  109. package/dist/shared/friction/stepBoundaryCapture.d.ts +14 -0
  110. package/dist/shared/friction/stepBoundaryCapture.d.ts.map +1 -1
  111. package/dist/shared/friction/stepBoundaryCapture.js +47 -0
  112. package/dist/shared/friction/stepBoundaryCapture.js.map +1 -1
  113. package/dist/shared/friction/triage.d.ts +94 -14
  114. package/dist/shared/friction/triage.d.ts.map +1 -1
  115. package/dist/shared/friction/triage.js +0 -0
  116. package/dist/shared/friction/triage.js.map +1 -1
  117. package/dist/shared/index.d.ts +1 -1
  118. package/dist/shared/index.d.ts.map +1 -1
  119. package/dist/shared/index.js +1 -1
  120. package/dist/shared/index.js.map +1 -1
  121. package/dist/shared/providers/openAiCompatibleProvider.d.ts +8 -0
  122. package/dist/shared/providers/openAiCompatibleProvider.d.ts.map +1 -1
  123. package/dist/shared/providers/openAiCompatibleProvider.js +100 -28
  124. package/dist/shared/providers/openAiCompatibleProvider.js.map +1 -1
  125. package/dist/shared/quota/apiPool.d.ts.map +1 -1
  126. package/dist/shared/quota/apiPool.js +19 -0
  127. package/dist/shared/quota/apiPool.js.map +1 -1
  128. package/dist/shared/quota/capacity.d.ts +31 -4
  129. package/dist/shared/quota/capacity.d.ts.map +1 -1
  130. package/dist/shared/quota/capacity.js +8 -0
  131. package/dist/shared/quota/capacity.js.map +1 -1
  132. package/dist/shared/quota/modelStatics.d.ts +15 -7
  133. package/dist/shared/quota/modelStatics.d.ts.map +1 -1
  134. package/dist/shared/quota/modelStatics.js +60 -13
  135. package/dist/shared/quota/modelStatics.js.map +1 -1
  136. package/dist/shared/quota/quotaSource.d.ts +2 -2
  137. package/dist/shared/types/sessionConfig.d.ts +10 -0
  138. package/dist/shared/types/sessionConfig.d.ts.map +1 -1
  139. package/dist/shared/types/sessionConfig.js.map +1 -1
  140. package/dist/shared/validation/designFindingGrounding.d.ts.map +1 -1
  141. package/dist/shared/validation/designFindingGrounding.js +9 -3
  142. package/dist/shared/validation/designFindingGrounding.js.map +1 -1
  143. package/dist/shared/validation/findingGrounding.d.ts +40 -0
  144. package/dist/shared/validation/findingGrounding.d.ts.map +1 -1
  145. package/dist/shared/validation/findingGrounding.js +83 -0
  146. package/dist/shared/validation/findingGrounding.js.map +1 -1
  147. package/opencode.json +34 -22
  148. package/package.json +2 -2
@@ -39,14 +39,14 @@ export declare const AdmissionGrantSchema: z.ZodObject<{
39
39
  lease_id: z.ZodString;
40
40
  cost: z.ZodNumber;
41
41
  }, "strict", z.ZodTypeAny, {
42
- packet_id: string;
43
42
  cost: number;
43
+ packet_id: string;
44
44
  pool_id: string;
45
45
  resource_key: string;
46
46
  lease_id: string;
47
47
  }, {
48
- packet_id: string;
49
48
  cost: number;
49
+ packet_id: string;
50
50
  pool_id: string;
51
51
  resource_key: string;
52
52
  lease_id: string;
@@ -65,18 +65,18 @@ export declare const AdmissionExplainSchema: z.ZodObject<{
65
65
  cost: z.ZodNumber;
66
66
  }, "strict", z.ZodTypeAny, {
67
67
  reason: "admitted" | "no_capable_pool" | "budget_exhausted" | "cap_reached";
68
+ cost: number;
68
69
  admitted: boolean;
69
70
  packet_id: string;
70
- cost: number;
71
71
  pool_id: string | null;
72
72
  resource_key: string | null;
73
73
  headroom_before?: number | undefined;
74
74
  outstanding_before?: number | undefined;
75
75
  }, {
76
76
  reason: "admitted" | "no_capable_pool" | "budget_exhausted" | "cap_reached";
77
+ cost: number;
77
78
  admitted: boolean;
78
79
  packet_id: string;
79
- cost: number;
80
80
  pool_id: string | null;
81
81
  resource_key: string | null;
82
82
  headroom_before?: number | undefined;
@@ -101,14 +101,14 @@ export declare const DispatchAdmissionSchema: z.ZodObject<{
101
101
  lease_id: z.ZodString;
102
102
  cost: z.ZodNumber;
103
103
  }, "strict", z.ZodTypeAny, {
104
- packet_id: string;
105
104
  cost: number;
105
+ packet_id: string;
106
106
  pool_id: string;
107
107
  resource_key: string;
108
108
  lease_id: string;
109
109
  }, {
110
- packet_id: string;
111
110
  cost: number;
111
+ packet_id: string;
112
112
  pool_id: string;
113
113
  resource_key: string;
114
114
  lease_id: string;
@@ -126,18 +126,18 @@ export declare const DispatchAdmissionSchema: z.ZodObject<{
126
126
  cost: z.ZodNumber;
127
127
  }, "strict", z.ZodTypeAny, {
128
128
  reason: "admitted" | "no_capable_pool" | "budget_exhausted" | "cap_reached";
129
+ cost: number;
129
130
  admitted: boolean;
130
131
  packet_id: string;
131
- cost: number;
132
132
  pool_id: string | null;
133
133
  resource_key: string | null;
134
134
  headroom_before?: number | undefined;
135
135
  outstanding_before?: number | undefined;
136
136
  }, {
137
137
  reason: "admitted" | "no_capable_pool" | "budget_exhausted" | "cap_reached";
138
+ cost: number;
138
139
  admitted: boolean;
139
140
  packet_id: string;
140
- cost: number;
141
141
  pool_id: string | null;
142
142
  resource_key: string | null;
143
143
  headroom_before?: number | undefined;
@@ -145,8 +145,8 @@ export declare const DispatchAdmissionSchema: z.ZodObject<{
145
145
  }>, "many">;
146
146
  }, "strict", z.ZodTypeAny, {
147
147
  leases: {
148
- packet_id: string;
149
148
  cost: number;
149
+ packet_id: string;
150
150
  pool_id: string;
151
151
  resource_key: string;
152
152
  lease_id: string;
@@ -155,9 +155,9 @@ export declare const DispatchAdmissionSchema: z.ZodObject<{
155
155
  declared_cap: number | null;
156
156
  explains: {
157
157
  reason: "admitted" | "no_capable_pool" | "budget_exhausted" | "cap_reached";
158
+ cost: number;
158
159
  admitted: boolean;
159
160
  packet_id: string;
160
- cost: number;
161
161
  pool_id: string | null;
162
162
  resource_key: string | null;
163
163
  headroom_before?: number | undefined;
@@ -165,8 +165,8 @@ export declare const DispatchAdmissionSchema: z.ZodObject<{
165
165
  }[];
166
166
  }, {
167
167
  leases: {
168
- packet_id: string;
169
168
  cost: number;
169
+ packet_id: string;
170
170
  pool_id: string;
171
171
  resource_key: string;
172
172
  lease_id: string;
@@ -175,9 +175,9 @@ export declare const DispatchAdmissionSchema: z.ZodObject<{
175
175
  declared_cap: number | null;
176
176
  explains: {
177
177
  reason: "admitted" | "no_capable_pool" | "budget_exhausted" | "cap_reached";
178
+ cost: number;
178
179
  admitted: boolean;
179
180
  packet_id: string;
180
- cost: number;
181
181
  pool_id: string | null;
182
182
  resource_key: string | null;
183
183
  headroom_before?: number | undefined;
@@ -50,11 +50,22 @@ export declare function blendedPrice(price: ModelStatics["price"] | undefined):
50
50
  /**
51
51
  * Resolve a model id to its blended $/Mtok price via the vendored models.dev
52
52
  * snapshot, or `undefined` when the model is unknown / the dataset is empty.
53
+ *
54
+ * Optional `provider` pins the native (per-provider) price; omitting it takes the
55
+ * cheapest-collision default. Single-provider snapshots resolve identically
56
+ * either way.
53
57
  */
54
- export declare function resolveModelPrice(model: string | null | undefined): number | undefined;
58
+ export declare function resolveModelPrice(model: string | null | undefined, provider?: string | null): number | undefined;
55
59
  export interface CostRankInput {
56
60
  /** Model id for the price lookup (rung 2). `null`/unknown ⇒ falls through. */
57
61
  model: string | null | undefined;
62
+ /**
63
+ * Optional provider that owns this pool's model. When set, the price lookup
64
+ * pins that provider's native price on a cross-provider model-id collision;
65
+ * omitting it takes the cheapest-collision default. No effect on a
66
+ * single-provider snapshot.
67
+ */
68
+ provider?: string | null;
58
69
  /** Pool tier for the fallback ordinal (rung 3). */
59
70
  tier: DispatchModelTier | null | undefined;
60
71
  /**
@@ -75,6 +86,11 @@ export interface CostCandidate {
75
86
  /** Stable identifier for the candidate (provider name, or `provider/model`). */
76
87
  key: string;
77
88
  model?: string | null;
89
+ /**
90
+ * Optional owning provider; pins the native price on a cross-provider model-id
91
+ * collision. Omit for the cheapest-collision default.
92
+ */
93
+ provider?: string | null;
78
94
  tier?: DispatchModelTier | null;
79
95
  }
80
96
  /** A candidate with its resolved price + the tool's suggested position. */
@@ -1 +1 @@
1
- {"version":3,"file":"costRank.d.ts","sourceRoot":"","sources":["../../../src/shared/dispatch/costRank.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAElE,OAAO,EAAuB,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAElF;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,OAAO,CAAC;AAC5C,eAAO,MAAM,wBAAwB,OAAO,CAAC;AAE7C;;;;;;;GAOG;AACH,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAC3C,eAAO,MAAM,eAAe,UAAY,CAAC;AACzC,eAAO,MAAM,uBAAuB,UAAY,CAAC;AAEjD;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAUzF;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAEtF;AAED,MAAM,WAAW,aAAa;IAC5B,8EAA8E;IAC9E,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACjC,mDAAmD;IACnD,IAAI,EAAE,iBAAiB,GAAG,IAAI,GAAG,SAAS,CAAC;IAC3C;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAc3D;AAED,8EAA8E;AAC9E,MAAM,WAAW,aAAa;IAC5B,gFAAgF;IAChF,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAC;CACjC;AAED,2EAA2E;AAC3E,MAAM,WAAW,oBAAqB,SAAQ,aAAa;IACzD,sEAAsE;IACtE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,OAAO,CAAC;IACrB,mDAAmD;IACnD,eAAe,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,aAAa,EAAE,GAAG,oBAAoB,EAAE,CAsBvF;AAMD;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,GAAG,SAAS,EACjD,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAC/B,MAAM,GAAG,IAAI,CAIf;AAED;;;;;;GAMG;AACH,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,aAAa,CAAC;IAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,GAAG,IAAI,GAAG,SAAS,GAClG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAcrB"}
1
+ {"version":3,"file":"costRank.d.ts","sourceRoot":"","sources":["../../../src/shared/dispatch/costRank.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAElE,OAAO,EAAuB,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAElF;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,OAAO,CAAC;AAC5C,eAAO,MAAM,wBAAwB,OAAO,CAAC;AAE7C;;;;;;;GAOG;AACH,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAC3C,eAAO,MAAM,eAAe,UAAY,CAAC;AACzC,eAAO,MAAM,uBAAuB,UAAY,CAAC;AAEjD;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAUzF;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAChC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,GACvB,MAAM,GAAG,SAAS,CAEpB;AAED,MAAM,WAAW,aAAa;IAC5B,8EAA8E;IAC9E,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACjC;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,mDAAmD;IACnD,IAAI,EAAE,iBAAiB,GAAG,IAAI,GAAG,SAAS,CAAC;IAC3C;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAc3D;AAED,8EAA8E;AAC9E,MAAM,WAAW,aAAa;IAC5B,gFAAgF;IAChF,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,IAAI,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAC;CACjC;AAED,2EAA2E;AAC3E,MAAM,WAAW,oBAAqB,SAAQ,aAAa;IACzD,sEAAsE;IACtE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,OAAO,CAAC;IACrB,mDAAmD;IACnD,eAAe,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,aAAa,EAAE,GAAG,oBAAoB,EAAE,CAsBvF;AAMD;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,GAAG,SAAS,EACjD,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAC/B,MAAM,GAAG,IAAI,CAIf;AAED;;;;;;GAMG;AACH,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,aAAa,CAAC;IAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,GAAG,IAAI,GAAG,SAAS,GAClG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAcrB"}
@@ -63,9 +63,13 @@ export function blendedPrice(price) {
63
63
  /**
64
64
  * Resolve a model id to its blended $/Mtok price via the vendored models.dev
65
65
  * snapshot, or `undefined` when the model is unknown / the dataset is empty.
66
+ *
67
+ * Optional `provider` pins the native (per-provider) price; omitting it takes the
68
+ * cheapest-collision default. Single-provider snapshots resolve identically
69
+ * either way.
66
70
  */
67
- export function resolveModelPrice(model) {
68
- return blendedPrice(resolveModelStatics(model)?.price);
71
+ export function resolveModelPrice(model, provider) {
72
+ return blendedPrice(resolveModelStatics(model, provider)?.price);
69
73
  }
70
74
  /**
71
75
  * Derive a pool's `costRank` (LOWER = cheaper). Total order across all pools in a
@@ -79,7 +83,7 @@ export function deriveCostRank(input) {
79
83
  return CONFIRMED_ORDER_BAND_BASE + input.confirmedPosition;
80
84
  }
81
85
  // Rung 2 — real blended price when the dataset knows the model.
82
- const price = resolveModelPrice(input.model);
86
+ const price = resolveModelPrice(input.model, input.provider);
83
87
  if (price !== undefined)
84
88
  return PRICE_BAND_BASE + price;
85
89
  // Rung 3 — tier ordinal, offset above every priced pool (unknown = overflow).
@@ -94,7 +98,7 @@ export function deriveCostRank(input) {
94
98
  */
95
99
  export function suggestCostOrdering(candidates) {
96
100
  const priced = candidates.map((c) => {
97
- const price = resolveModelPrice(c.model);
101
+ const price = resolveModelPrice(c.model, c.provider);
98
102
  return { candidate: c, price };
99
103
  });
100
104
  const sorted = [...priced].sort((a, b) => {
@@ -1 +1 @@
1
- {"version":3,"file":"costRank.js","sourceRoot":"","sources":["../../../src/shared/dispatch/costRank.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAqB,MAAM,0BAA0B,CAAC;AAElF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,CAAC;AAC5C,MAAM,CAAC,MAAM,wBAAwB,GAAG,IAAI,CAAC;AAE7C;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC;AAC3C,MAAM,CAAC,MAAM,eAAe,GAAG,SAAS,CAAC;AACzC,MAAM,CAAC,MAAM,uBAAuB,GAAG,SAAS,CAAC;AAEjD;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,KAAwC;IACnE,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAC7B,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IACxG,MAAM,MAAM,GAAG,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5G,IAAI,KAAK,KAAK,SAAS,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QAChD,OAAO,KAAK,GAAG,uBAAuB,GAAG,MAAM,GAAG,wBAAwB,CAAC;IAC7E,CAAC;IACD,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACtC,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC;IACxC,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAgC;IAChE,OAAO,YAAY,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;AACzD,CAAC;AAgBD;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,KAAoB;IACjD,yDAAyD;IACzD,IACE,OAAO,KAAK,CAAC,iBAAiB,KAAK,QAAQ;QAC3C,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC;QACxC,KAAK,CAAC,iBAAiB,IAAI,CAAC,EAC5B,CAAC;QACD,OAAO,yBAAyB,GAAG,KAAK,CAAC,iBAAiB,CAAC;IAC7D,CAAC;IACD,gEAAgE;IAChE,MAAM,KAAK,GAAG,iBAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC7C,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,eAAe,GAAG,KAAK,CAAC;IACxD,8EAA8E;IAC9E,OAAO,uBAAuB,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AACxD,CAAC;AAmBD;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAAC,UAA2B;IAC7D,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QAClC,MAAM,KAAK,GAAG,iBAAiB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACzC,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC;IACjC,CAAC,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACvC,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC;QACrC,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC;QACrC,IAAI,MAAM,IAAI,MAAM,EAAE,CAAC;YACrB,OAAO,CAAC,CAAC,KAAM,GAAG,CAAC,CAAC,KAAM,IAAI,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAC7E,CAAC;QACD,IAAI,MAAM,KAAK,MAAM;YAAE,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,uBAAuB;QACtE,oDAAoD;QACpD,OAAO,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC;YAC5D,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;IACH,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QACnC,GAAG,KAAK,CAAC,SAAS;QAClB,aAAa,EAAE,KAAK,CAAC,KAAK;QAC1B,WAAW,EAAE,KAAK,CAAC,KAAK,KAAK,SAAS;QACtC,eAAe,EAAE,KAAK;KACvB,CAAC,CAAC,CAAC;AACN,CAAC;AAED,SAAS,UAAU,CAAC,CAAS,EAAE,CAAS;IACtC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACpC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,uBAAuB,CACrC,SAAiD,EACjD,KAAgC;IAEhC,IAAI,CAAC,SAAS,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACtC,MAAM,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACjC,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AACtE,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,6BAA6B,CAC3C,OAAmG;IAEnG,MAAM,GAAG,GAAG,IAAI,GAAG,EAAkB,CAAC;IACtC,IAAI,CAAC,OAAO;QAAE,OAAO,GAAG,CAAC;IACzB,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,IACE,KAAK,CAAC,QAAQ;YACd,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ;YACpC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC;YACjC,KAAK,CAAC,UAAU,IAAI,CAAC,EACrB,CAAC;YACD,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"costRank.js","sourceRoot":"","sources":["../../../src/shared/dispatch/costRank.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"rollingDispatch.d.ts","sourceRoot":"","sources":["../../../src/shared/dispatch/rollingDispatch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,YAAY,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACpF,OAAO,KAAK,EAAE,eAAe,EAA4B,MAAM,mBAAmB,CAAC;AAanF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAEpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAOvE,oEAAoE;AACpE,MAAM,WAAW,qBAAqB,CAAC,OAAO;IAC5C,8DAA8D;IAC9D,EAAE,EAAE,MAAM,CAAC;IACX,gEAAgE;IAChE,OAAO,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,eAAe,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,8CAA8C;AAC9C,MAAM,WAAW,qBAAqB,CAAC,OAAO;IAC5C,MAAM,EAAE,qBAAqB,CAAC,OAAO,CAAC,CAAC;IACvC,OAAO,EAAE,SAAS,GAAG,cAAc,GAAG,SAAS,GAAG,OAAO,CAAC;IAC1D,0DAA0D;IAC1D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE;QACV,OAAO,EAAE,mBAAmB,CAAC;QAC7B,IAAI,EAAE,MAAM,CAAC;QACb;;;;;;;;;WASG;QACH,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAED,mEAAmE;AACnE,MAAM,WAAW,YAAY;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wDAAwD;AACxD,MAAM,WAAW,aAAa,CAAC,OAAO;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,qBAAqB,CAAC,OAAO,CAAC,CAAC;IACvC,YAAY,EAAE,YAAY,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,OAAO,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC;IACjD;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,+CAA+C;AAC/C,MAAM,WAAW,oBAAoB,CAAC,OAAO;IAC3C,YAAY,EAAE,qBAAqB,CAAC,OAAO,CAAC,EAAE,CAAC;IAC/C,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;IAC9C,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC1B;;;;;OAKG;IACH,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9B;;;;;;;;OAQG;IACH,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC;;;;OAIG;IACH,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAC1B;AAED,kEAAkE;AAClE,MAAM,WAAW,qBAAqB,CAAC,OAAO;IAC5C,qDAAqD;IACrD,cAAc,EAAE,YAAY,EAAE,CAAC;IAC/B,aAAa,EAAE,aAAa,CAAC;IAC7B;;;OAGG;IACH,cAAc,EAAE,CACd,MAAM,EAAE,qBAAqB,CAAC,OAAO,CAAC,EACtC,IAAI,EAAE,YAAY,KACf,OAAO,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC;IAC7C,uFAAuF;IACvF,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,qBAAqB,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;IAC5D;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;;;;;OAUG;IACH,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC;IAClD;;;;;;;;;OASG;IACH,eAAe,CAAC,EAAE,CAChB,MAAM,EAAE,qBAAqB,CAAC,OAAO,CAAC,EACtC,MAAM,EAAE,qBAAqB,CAAC,OAAO,CAAC,KACnC,IAAI,CAAC;IACV;;;;;;;;;;;OAWG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC;;;;;;OAMG;IACH,iBAAiB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;IAC/C;;;;;OAKG;IACH,wBAAwB,CAAC,EAAE,CACzB,MAAM,EAAE,qBAAqB,CAAC,OAAO,CAAC,EACtC,MAAM,EAAE,MAAM,KACX,MAAM,CAAC;CACb;AAED,6EAA6E;AAC7E,MAAM,WAAW,sBAAsB;IACrC;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,4DAA4D;AAC5D,MAAM,WAAW,iBAAiB,CAAC,OAAO;IACxC;;;;OAIG;IACH,OAAO,CAAC,OAAO,EAAE,qBAAqB,CAAC,OAAO,CAAC,EAAE,GAAG,IAAI,CAAC;IACzD;;;;OAIG;IACH,GAAG,IAAI,OAAO,CAAC,qBAAqB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACjD,sDAAsD;IACtD,QAAQ,IAAI,QAAQ,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC;IACpD;;;;;OAKG;IACH,WAAW,IAAI,yBAAyB,GAAG,IAAI,CAAC;CACjD;AAMD;;;GAGG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkC;IAE1D,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAKtD,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAKrD,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;CAG1C;AAMD,6EAA6E;AAC7E,wBAAgB,qBAAqB,CAAC,OAAO,EAC3C,MAAM,EAAE,qBAAqB,CAAC,OAAO,CAAC,GACrC,MAAM,CAER;AA+CD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,cAAc,CAAC,OAAO,EACpC,MAAM,EAAE,qBAAqB,CAAC,OAAO,CAAC,EACtC,cAAc,EAAE,YAAY,EAAE,EAC9B,eAAe,EAAE,oBAAoB,EACrC,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,EAClD,aAAa,EAAE,aAAa,EAC5B,gBAAgB,GAAE,WAAW,CAAC,MAAM,CAAa,EACjD,iBAAiB,GAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAa,EAC1D,GAAG,GAAE,MAAmB,GACvB,YAAY,GAAG,IAAI,CA4ErB;AAMD;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAC7C,MAAM,EAAE,qBAAqB,CAAC,OAAO,CAAC,EACtC,OAAO,GAAE,sBAA2B,GACnC,iBAAiB,CAAC,OAAO,CAAC,CA8iB5B"}
1
+ {"version":3,"file":"rollingDispatch.d.ts","sourceRoot":"","sources":["../../../src/shared/dispatch/rollingDispatch.ts"],"names":[],"mappings":"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"}
@@ -573,9 +573,22 @@ export function createRollingDispatcher(config, options = {}) {
573
573
  const slot = selectProvider(packet, confirmedPools, inFlightTracker, quotaStateCache.entries, sessionConfig, state.exhaustedPoolIds, state.pausedPoolResetAt, Date.now());
574
574
  if (slot === null)
575
575
  continue;
576
- // Apply optional maxConcurrentPerPool cap.
577
- if (options.maxConcurrentPerPool !== undefined &&
578
- (inFlightPerPool.get(slot.poolId) ?? 0) >= options.maxConcurrentPerPool) {
576
+ // Per-pool in-flight COUNT cap. The pool's own endpoint-declared cap
577
+ // (`concurrencyCap`, e.g. a NIM worker's max-concurrency) and the global
578
+ // `maxConcurrentPerPool` option are BOTH honoured — the effective ceiling is
579
+ // the min of whichever are set. This is the throttle an optimistic (unmetered)
580
+ // source needs: with no token budget to gate on, without it the pass would
581
+ // dispatch every ready packet at once and overrun the endpoint (the NIM
582
+ // `33/32` incident). A packet skipped here stays pending and a later pass
583
+ // dispatches it once an in-flight slot frees.
584
+ const poolConcurrencyCap = confirmedPools.find((p) => p.id === slot.poolId)?.concurrencyCap ?? null;
585
+ const optionCap = options.maxConcurrentPerPool ?? null;
586
+ const effectiveCap = poolConcurrencyCap != null && optionCap != null
587
+ ? Math.min(poolConcurrencyCap, optionCap)
588
+ : (poolConcurrencyCap ?? optionCap);
589
+ // A cap of ≥1 gates; a non-positive cap is treated as NO cap (never zero-admit),
590
+ // so a stray 0 can't wedge the engine into an infinite skip/no-progress spin.
591
+ if (effectiveCap != null && effectiveCap >= 1 && (inFlightPerPool.get(slot.poolId) ?? 0) >= effectiveCap) {
579
592
  continue;
580
593
  }
581
594
  // Reservation-ledger admission (proactive layer).
@@ -1 +1 @@
1
- {"version":3,"file":"rollingDispatch.js","sourceRoot":"","sources":["../../../src/shared/dispatch/rollingDispatch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rollingDispatch.js","sourceRoot":"","sources":["../../../src/shared/dispatch/rollingDispatch.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { type FrictionCaptureArtifact, type FrictionItem } from "../io/frictionCapture.js";
2
+ import { type FrictionCategory } from "./frictionRecord.js";
2
3
  export type { CapturedFrictionItem } from "./frictionRecord.js";
3
4
  /**
4
5
  * The single mechanical-friction sink (FC-005). Mechanical seams (O3
@@ -40,6 +41,18 @@ export interface FrictionEvent extends FrictionItem {
40
41
  * already present in the run record is a no-op (per-event de-dup, INV-O1-6).
41
42
  */
42
43
  id: string;
44
+ /**
45
+ * The REAL close-out category (one of `FRICTION_CATEGORIES`) this event feeds.
46
+ * Carried through onto the persisted `CapturedFrictionItem` so the per-category
47
+ * friction walk keys on a real category, not the coarse `bug|trap|suggestion`
48
+ * origin hint. Optional so a bare `captureFrictionEvent` caller need not supply it.
49
+ */
50
+ frictionCategory?: FrictionCategory;
51
+ /**
52
+ * Optional artifact/subject key — the aggregation axis that collapses N
53
+ * same-artifact events into ONE derived observation.
54
+ */
55
+ artifact?: string;
43
56
  }
44
57
  /**
45
58
  * Append one mechanical friction event to the per-run record, best-effort.
@@ -1 +1 @@
1
- {"version":3,"file":"captureFrictionEvent.d.ts","sourceRoot":"","sources":["../../../src/shared/friction/captureFrictionEvent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,uBAAuB,EAAE,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAM3F,YAAY,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAEhE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,oEAAoE;AACpE,MAAM,WAAW,aAAc,SAAQ,YAAY;IACjD;;;OAGG;IACH,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;;;;;;;;GAQG;AACH,wBAAsB,oBAAoB,CACxC,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,aAAa,EACpB,IAAI,GAAE,uBAAuB,CAAC,MAAM,CAAoB,GACvD,OAAO,CAAC,IAAI,CAAC,CA0Bf"}
1
+ {"version":3,"file":"captureFrictionEvent.d.ts","sourceRoot":"","sources":["../../../src/shared/friction/captureFrictionEvent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,uBAAuB,EAAE,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC3F,OAAO,EAEL,KAAK,gBAAgB,EAEtB,MAAM,qBAAqB,CAAC;AAE7B,YAAY,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAEhE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,oEAAoE;AACpE,MAAM,WAAW,aAAc,SAAQ,YAAY;IACjD;;;OAGG;IACH,EAAE,EAAE,MAAM,CAAC;IACX;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;GAQG;AACH,wBAAsB,oBAAoB,CACxC,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,aAAa,EACpB,IAAI,GAAE,uBAAuB,CAAC,MAAM,CAAoB,GACvD,OAAO,CAAC,IAAI,CAAC,CA0Bf"}
@@ -1 +1 @@
1
- {"version":3,"file":"captureFrictionEvent.js","sourceRoot":"","sources":["../../../src/shared/friction/captureFrictionEvent.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,uBAAuB,GACxB,MAAM,qBAAqB,CAAC;AA+C7B;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,YAAoB,EACpB,KAAa,EACb,KAAoB,EACpB,OAAwC,gBAAgB;IAExD,IAAI,CAAC;QACH,MAAM,uBAAuB,CAC3B,YAAY,EACZ,KAAK,EACL,CAAC,MAAM,EAAE,EAAE;YACT,MAAM,SAAS,GAA2B,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC;gBACvE,CAAC,CAAC,MAAM,CAAC,SAAS;gBAClB,CAAC,CAAC,EAAE,CAAC;YACP,oEAAoE;YACpE,mEAAmE;YACnE,gEAAgE;YAChE,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;gBACnD,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,OAAO;gBACL,GAAG,MAAM;gBACT,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,IAAI;gBACzB,SAAS,EAAE,CAAC,GAAG,SAAS,EAAE,EAAE,GAAG,KAAK,EAAE,CAAC;aACxC,CAAC;QACJ,CAAC,EACD,IAAI,CACL,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,6EAA6E;IAC/E,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"captureFrictionEvent.js","sourceRoot":"","sources":["../../../src/shared/friction/captureFrictionEvent.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,uBAAuB,GACxB,MAAM,qBAAqB,CAAC;AA2D7B;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,YAAoB,EACpB,KAAa,EACb,KAAoB,EACpB,OAAwC,gBAAgB;IAExD,IAAI,CAAC;QACH,MAAM,uBAAuB,CAC3B,YAAY,EACZ,KAAK,EACL,CAAC,MAAM,EAAE,EAAE;YACT,MAAM,SAAS,GAA2B,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC;gBACvE,CAAC,CAAC,MAAM,CAAC,SAAS;gBAClB,CAAC,CAAC,EAAE,CAAC;YACP,oEAAoE;YACpE,mEAAmE;YACnE,gEAAgE;YAChE,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;gBACnD,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,OAAO;gBACL,GAAG,MAAM;gBACT,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,IAAI;gBACzB,SAAS,EAAE,CAAC,GAAG,SAAS,EAAE,EAAE,GAAG,KAAK,EAAE,CAAC;aACxC,CAAC;QACJ,CAAC,EACD,IAAI,CACL,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,6EAA6E;IAC/E,CAAC;AACH,CAAC"}
@@ -17,10 +17,49 @@ import { type FrictionCaptureArtifact, type FrictionItem } from "../io/frictionC
17
17
  * (via `frictionCapturePath` / `sanitizeRunId`) — no platform-baked literal, so
18
18
  * the substrate is OS/path-agnostic (INV-O1-7).
19
19
  */
20
- /** A single captured mechanical friction event: a `FrictionItem` plus a stable id. */
20
+ /**
21
+ * The REQUIRED friction CATEGORIES — the coverage axis the blocking close-out
22
+ * enforces EVERY run. The host must, for EACH category, either record ≥1
23
+ * `open_observations[]` entry tagged with it OR an explicit
24
+ * `category_attestations[]` "nothing to report". A category can never be skipped
25
+ * by silence — that omission is exactly the failure the gate prevents.
26
+ *
27
+ * Single-sourced HERE in the substrate (not in `triage.ts`) so the mechanical
28
+ * capture layer (`stepBoundaryCapture.ts`) can stamp a captured event with a REAL
29
+ * category without importing the triage module — there is exactly ONE category
30
+ * vocabulary shared by capture, triage, and the render, and it can never drift.
31
+ */
32
+ export declare const FRICTION_CATEGORIES: readonly ["ambiguous_direction", "tool_should_decide", "inefficient_feeding"];
33
+ export type FrictionCategory = (typeof FRICTION_CATEGORIES)[number];
34
+ /** Whether a value is one of the required friction categories (contract check). */
35
+ export declare function isFrictionCategory(value: unknown): value is FrictionCategory;
36
+ /**
37
+ * A single captured mechanical friction event: a `FrictionItem` plus a stable id
38
+ * and the REAL friction category it belongs to (one of `FRICTION_CATEGORIES`).
39
+ */
21
40
  export interface CapturedFrictionItem extends FrictionItem {
22
41
  /** Stable distinct id; re-recording an event with this id is a no-op de-dup. */
23
42
  id: string;
43
+ /**
44
+ * The REAL close-out category (one of `FRICTION_CATEGORIES`) this mechanical
45
+ * event belongs to — what the per-category friction walk keys on. Distinct
46
+ * from the inherited `FrictionItem.category` (`bug|trap|suggestion`), which is
47
+ * only a coarse origin hint and is NEVER a close-out category. Optional only
48
+ * for back-compat with older records; a stamped event always carries it.
49
+ */
50
+ frictionCategory?: FrictionCategory;
51
+ /**
52
+ * Optional artifact/subject key this event concerns (e.g. the node id, the
53
+ * contract id) — the aggregation axis that collapses N same-artifact events
54
+ * into ONE derived observation. Falls back to `area` when unset.
55
+ */
56
+ artifact?: string;
57
+ /**
58
+ * Optional measured token cost this event incurred (best-effort — supplied only
59
+ * when the seam has a real measure). Summed into the aggregate's `tokens` cost
60
+ * signal; never fabricated when absent.
61
+ */
62
+ tokens?: number;
24
63
  }
25
64
  /** The host disposition vocabulary over a captured subject. */
26
65
  export type FrictionDisposition = "keep" | "discard" | "annotate";
@@ -46,6 +85,21 @@ export interface FrictionOpenObservation {
46
85
  dimension?: string;
47
86
  /** The host's observation note. */
48
87
  note: string;
88
+ /**
89
+ * When set, the aggregation subject (artifact/node/contract key) this
90
+ * observation summarizes. Present on TOOL-DERIVED observations (see `derived`)
91
+ * so a re-run can idempotently replace the derived set keyed on
92
+ * `(category, artifact)`; absent on host-authored observations.
93
+ */
94
+ artifact?: string;
95
+ /**
96
+ * True when the tool DERIVED this observation by aggregating mechanical
97
+ * step-boundary events (pre-populating the host's category walk), vs. a
98
+ * host-authored observation. The close-out counts a derived observation toward
99
+ * category coverage exactly like a host one; the flag only lets the derive step
100
+ * replace its own prior output without ever touching host-authored entries.
101
+ */
102
+ derived?: boolean;
49
103
  }
50
104
  /**
51
105
  * An explicit affirmation that a friction CATEGORY had nothing to report this
@@ -1 +1 @@
1
- {"version":3,"file":"frictionRecord.d.ts","sourceRoot":"","sources":["../../../src/shared/friction/frictionRecord.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,YAAY,EAKlB,MAAM,0BAA0B,CAAC;AAIlC;;;;;;;;;;;;;;;;;GAiBG;AAEH,sFAAsF;AACtF,MAAM,WAAW,oBAAqB,SAAQ,YAAY;IACxD,gFAAgF;IAChF,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,+DAA+D;AAC/D,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,SAAS,GAAG,UAAU,CAAC;AAElE,mFAAmF;AACnF,MAAM,WAAW,yBAAyB;IACxC,sEAAsE;IACtE,SAAS,EAAE,MAAM,CAAC;IAClB,yCAAyC;IACzC,WAAW,EAAE,mBAAmB,CAAC;IACjC,6EAA6E;IAC7E,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,oFAAoF;AACpF,MAAM,WAAW,uBAAuB;IACtC;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gFAAgF;IAChF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mCAAmC;IACnC,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;;GAKG;AACH,MAAM,WAAW,2BAA2B;IAC1C,iFAAiF;IACjF,QAAQ,EAAE,MAAM,CAAC;IACjB,sEAAsE;IACtE,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;;;GAMG;AACH,MAAM,WAAW,uBAAwB,SAAQ,uBAAuB;IACtE,SAAS,EAAE,oBAAoB,EAAE,CAAC;IAClC,qEAAqE;IACrE,YAAY,CAAC,EAAE,yBAAyB,EAAE,CAAC;IAC3C;yFACqF;IACrF,iBAAiB,CAAC,EAAE,uBAAuB,EAAE,CAAC;IAC9C,kFAAkF;IAClF,qBAAqB,CAAC,EAAE,2BAA2B,EAAE,CAAC;IACtD,6EAA6E;IAC7E,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAE5E;AAgBD;;;;;;;;;;;GAWG;AACH,wBAAsB,uBAAuB,CAC3C,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,CAAC,MAAM,EAAE,uBAAuB,KAAK,uBAAuB,EACpE,IAAI,GAAE,uBAAuB,CAAC,MAAM,CAAoB,GACvD,OAAO,CAAC,uBAAuB,CAAC,CAUlC"}
1
+ {"version":3,"file":"frictionRecord.d.ts","sourceRoot":"","sources":["../../../src/shared/friction/frictionRecord.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,YAAY,EAKlB,MAAM,0BAA0B,CAAC;AAIlC;;;;;;;;;;;;;;;;;GAiBG;AAEH;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,mBAAmB,+EAItB,CAAC;AACX,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEpE,mFAAmF;AACnF,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,gBAAgB,CAK5E;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAqB,SAAQ,YAAY;IACxD,gFAAgF;IAChF,EAAE,EAAE,MAAM,CAAC;IACX;;;;;;OAMG;IACH,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,+DAA+D;AAC/D,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,SAAS,GAAG,UAAU,CAAC;AAElE,mFAAmF;AACnF,MAAM,WAAW,yBAAyB;IACxC,sEAAsE;IACtE,SAAS,EAAE,MAAM,CAAC;IAClB,yCAAyC;IACzC,WAAW,EAAE,mBAAmB,CAAC;IACjC,6EAA6E;IAC7E,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,oFAAoF;AACpF,MAAM,WAAW,uBAAuB;IACtC;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gFAAgF;IAChF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mCAAmC;IACnC,IAAI,EAAE,MAAM,CAAC;IACb;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;;;GAKG;AACH,MAAM,WAAW,2BAA2B;IAC1C,iFAAiF;IACjF,QAAQ,EAAE,MAAM,CAAC;IACjB,sEAAsE;IACtE,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;;;GAMG;AACH,MAAM,WAAW,uBAAwB,SAAQ,uBAAuB;IACtE,SAAS,EAAE,oBAAoB,EAAE,CAAC;IAClC,qEAAqE;IACrE,YAAY,CAAC,EAAE,yBAAyB,EAAE,CAAC;IAC3C;yFACqF;IACrF,iBAAiB,CAAC,EAAE,uBAAuB,EAAE,CAAC;IAC9C,kFAAkF;IAClF,qBAAqB,CAAC,EAAE,2BAA2B,EAAE,CAAC;IACtD,6EAA6E;IAC7E,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAE5E;AAgBD;;;;;;;;;;;GAWG;AACH,wBAAsB,uBAAuB,CAC3C,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,CAAC,MAAM,EAAE,uBAAuB,KAAK,uBAAuB,EACpE,IAAI,GAAE,uBAAuB,CAAC,MAAM,CAAoB,GACvD,OAAO,CAAC,uBAAuB,CAAC,CAUlC"}
@@ -2,6 +2,46 @@ import { join } from "node:path";
2
2
  import { FRICTION_CAPTURE_SCHEMA_VERSION, frictionCaptureDir, frictionCapturePath, sanitizeRunId, } from "../io/frictionCapture.js";
3
3
  import { readOptionalJsonFile, writeJsonFile } from "../io/json.js";
4
4
  import { withFileLock } from "../quota/fileLock.js";
5
+ /**
6
+ * The shared per-run friction RECORD substrate (CE-004 / CE-010, the O1
7
+ * FRICTION-FOUNDATION layer). Single-sourced for BOTH orchestrators so the
8
+ * record shape, the lock path, and the locked read-merge-write append cannot
9
+ * drift between the two halves of the pipeline.
10
+ *
11
+ * `captureFrictionEvent` (the mechanical sink) and `recordFrictionDisposition` /
12
+ * `decideFrictionTriage` (the host triage path) BOTH route their record
13
+ * mutations through `appendFrictionUnderLock`, which rides ONE
14
+ * `withFileLock(frictionLockPath)` and reads-then-MERGEs the existing record —
15
+ * so a late mechanical emit never clobbers host `dispositions[]` /
16
+ * `open_observations[]` already written, and a host disposition never drops a
17
+ * concurrently-appended mechanical `frictions[]` entry (CE-010).
18
+ *
19
+ * Every path derives from `node:path` joins off the supplied artifacts dir
20
+ * (via `frictionCapturePath` / `sanitizeRunId`) — no platform-baked literal, so
21
+ * the substrate is OS/path-agnostic (INV-O1-7).
22
+ */
23
+ /**
24
+ * The REQUIRED friction CATEGORIES — the coverage axis the blocking close-out
25
+ * enforces EVERY run. The host must, for EACH category, either record ≥1
26
+ * `open_observations[]` entry tagged with it OR an explicit
27
+ * `category_attestations[]` "nothing to report". A category can never be skipped
28
+ * by silence — that omission is exactly the failure the gate prevents.
29
+ *
30
+ * Single-sourced HERE in the substrate (not in `triage.ts`) so the mechanical
31
+ * capture layer (`stepBoundaryCapture.ts`) can stamp a captured event with a REAL
32
+ * category without importing the triage module — there is exactly ONE category
33
+ * vocabulary shared by capture, triage, and the render, and it can never drift.
34
+ */
35
+ export const FRICTION_CATEGORIES = [
36
+ "ambiguous_direction", // direction/decision the tool or prompt left to the host that it should have resolved
37
+ "tool_should_decide", // the host had to remember / notice / enforce something the tool should guarantee
38
+ "inefficient_feeding", // redundant or wasteful work, poor context feeding, or a tool inefficiency
39
+ ];
40
+ /** Whether a value is one of the required friction categories (contract check). */
41
+ export function isFrictionCategory(value) {
42
+ return (typeof value === "string" &&
43
+ FRICTION_CATEGORIES.includes(value));
44
+ }
5
45
  /**
6
46
  * `<artifactsDir>/friction/<run_id>.lock` — the lock path guarding the per-run
7
47
  * record. Single-sourced so every record mutator (mechanical sink + host triage)
@@ -1 +1 @@
1
- {"version":3,"file":"frictionRecord.js","sourceRoot":"","sources":["../../../src/shared/friction/frictionRecord.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAGL,+BAA+B,EAC/B,kBAAkB,EAClB,mBAAmB,EACnB,aAAa,GACd,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAwFpD;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,YAAoB,EAAE,KAAa;IAClE,OAAO,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,EAAE,GAAG,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AAChF,CAAC;AAED,iFAAiF;AACjF,SAAS,WAAW,CAClB,KAAa,EACb,IAAqC;IAErC,OAAO;QACL,cAAc,EAAE,+BAA+B;QAC/C,IAAI;QACJ,MAAM,EAAE,KAAK;QACb,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACrC,SAAS,EAAE,EAAE;KACd,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,YAAoB,EACpB,KAAa,EACb,MAAoE,EACpE,OAAwC,gBAAgB;IAExD,OAAO,YAAY,CAAC,gBAAgB,CAAC,YAAY,EAAE,KAAK,CAAC,EAAE,KAAK,IAAI,EAAE;QACpE,MAAM,QAAQ,GAAG,MAAM,oBAAoB,CACzC,mBAAmB,CAAC,YAAY,EAAE,KAAK,CAAC,CACzC,CAAC;QACF,MAAM,IAAI,GAAG,QAAQ,IAAI,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAClD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;QAC1B,MAAM,aAAa,CAAC,mBAAmB,CAAC,YAAY,EAAE,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC;QACpE,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"frictionRecord.js","sourceRoot":"","sources":["../../../src/shared/friction/frictionRecord.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAGL,+BAA+B,EAC/B,kBAAkB,EAClB,mBAAmB,EACnB,aAAa,GACd,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD;;;;;;;;;;;;;;;;;GAiBG;AAEH;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,qBAAqB,EAAE,sFAAsF;IAC7G,oBAAoB,EAAE,kFAAkF;IACxG,qBAAqB,EAAE,2EAA2E;CAC1F,CAAC;AAGX,mFAAmF;AACnF,MAAM,UAAU,kBAAkB,CAAC,KAAc;IAC/C,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACxB,mBAAyC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAC3D,CAAC;AACJ,CAAC;AA2GD;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,YAAoB,EAAE,KAAa;IAClE,OAAO,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,EAAE,GAAG,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AAChF,CAAC;AAED,iFAAiF;AACjF,SAAS,WAAW,CAClB,KAAa,EACb,IAAqC;IAErC,OAAO;QACL,cAAc,EAAE,+BAA+B;QAC/C,IAAI;QACJ,MAAM,EAAE,KAAK;QACb,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACrC,SAAS,EAAE,EAAE;KACd,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,YAAoB,EACpB,KAAa,EACb,MAAoE,EACpE,OAAwC,gBAAgB;IAExD,OAAO,YAAY,CAAC,gBAAgB,CAAC,YAAY,EAAE,KAAK,CAAC,EAAE,KAAK,IAAI,EAAE;QACpE,MAAM,QAAQ,GAAG,MAAM,oBAAoB,CACzC,mBAAmB,CAAC,YAAY,EAAE,KAAK,CAAC,CACzC,CAAC;QACF,MAAM,IAAI,GAAG,QAAQ,IAAI,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAClD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;QAC1B,MAAM,aAAa,CAAC,mBAAmB,CAAC,YAAY,EAAE,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC;QACpE,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import type { FrictionItem } from "../io/frictionCapture.js";
2
2
  import type { FrictionCaptureArtifact } from "../io/frictionCapture.js";
3
+ import type { FrictionCategory } from "./frictionRecord.js";
3
4
  /**
4
5
  * CE-005 — the SINGLE shared backend-observed step-boundary chokepoint.
5
6
  *
@@ -48,6 +49,12 @@ import type { FrictionCaptureArtifact } from "../io/frictionCapture.js";
48
49
  * quarantine ref, NOT landed (discriminator: the node id).
49
50
  */
50
51
  export type StepBoundaryEventType = "phase_reemit" | "artifact_rejected" | "repair_round" | "post_repair_rederive" | "no_change_merge" | "intent_gate_fallback" | "quota_escalation" | "coverage_total_lines_mismatch" | "node_quarantine" | (string & {});
52
+ /**
53
+ * The REAL close-out friction category for a step-boundary fact kind. Total: an
54
+ * unknown event type degrades to `inefficient_feeding` so the mapping is never
55
+ * undefined and a captured event is ALWAYS tagged with a real category.
56
+ */
57
+ export declare function stepBoundaryFrictionCategory(eventType: StepBoundaryEventType): FrictionCategory;
51
58
  /**
52
59
  * Build the STRUCTURED, collision-free de-dup id for a step-boundary fact.
53
60
  * Components are individually percent-encoded then joined with `:` — a delimiter
@@ -70,6 +77,13 @@ export interface StepBoundaryFriction {
70
77
  severity?: FrictionItem["severity"];
71
78
  category?: FrictionItem["category"];
72
79
  area?: string;
80
+ /**
81
+ * Optional artifact/subject key this fact concerns (e.g. the node id, the
82
+ * contract id). The aggregation axis for the derived per-category observation:
83
+ * N facts on the SAME artifact collapse to one `inefficient_feeding` line.
84
+ * Falls back to `area`, then the discriminator, when unset.
85
+ */
86
+ artifact?: string;
73
87
  }
74
88
  /**
75
89
  * Route ONE backend-observed step-boundary fact through the single chokepoint.
@@ -1 +1 @@
1
- {"version":3,"file":"stepBoundaryCapture.d.ts","sourceRoot":"","sources":["../../../src/shared/friction/stepBoundaryCapture.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAGxE;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,MAAM,qBAAqB,GAC7B,cAAc,GACd,mBAAmB,GACnB,cAAc,GACd,sBAAsB,GACtB,iBAAiB,GACjB,sBAAsB,GACtB,kBAAkB,GAClB,+BAA+B,GAC/B,iBAAiB,GACjB,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAgBlB;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,qBAAqB,EAChC,KAAK,EAAE,MAAM,EACb,aAAa,EAAE,MAAM,GACpB,MAAM,CAIR;AAED,kEAAkE;AAClE,MAAM,WAAW,oBAAoB;IACnC,8EAA8E;IAC9E,SAAS,EAAE,qBAAqB,CAAC;IACjC;;;;OAIG;IACH,aAAa,EAAE,MAAM,CAAC;IACtB,oDAAoD;IACpD,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,YAAY,CAAC,UAAU,CAAC,CAAC;IACpC,QAAQ,CAAC,EAAE,YAAY,CAAC,UAAU,CAAC,CAAC;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;GAOG;AACH,wBAAsB,2BAA2B,CAC/C,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,oBAAoB,EAC1B,IAAI,EAAE,uBAAuB,CAAC,MAAM,CAAC,GACpC,OAAO,CAAC,IAAI,CAAC,CASf"}
1
+ {"version":3,"file":"stepBoundaryCapture.d.ts","sourceRoot":"","sources":["../../../src/shared/friction/stepBoundaryCapture.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAExE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAE5D;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,MAAM,qBAAqB,GAC7B,cAAc,GACd,mBAAmB,GACnB,cAAc,GACd,sBAAsB,GACtB,iBAAiB,GACjB,sBAAsB,GACtB,kBAAkB,GAClB,+BAA+B,GAC/B,iBAAiB,GACjB,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAgClB;;;;GAIG;AACH,wBAAgB,4BAA4B,CAC1C,SAAS,EAAE,qBAAqB,GAC/B,gBAAgB,CAElB;AAgBD;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,qBAAqB,EAChC,KAAK,EAAE,MAAM,EACb,aAAa,EAAE,MAAM,GACpB,MAAM,CAIR;AAED,kEAAkE;AAClE,MAAM,WAAW,oBAAoB;IACnC,8EAA8E;IAC9E,SAAS,EAAE,qBAAqB,CAAC;IACjC;;;;OAIG;IACH,aAAa,EAAE,MAAM,CAAC;IACtB,oDAAoD;IACpD,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,YAAY,CAAC,UAAU,CAAC,CAAC;IACpC,QAAQ,CAAC,EAAE,YAAY,CAAC,UAAU,CAAC,CAAC;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;GAOG;AACH,wBAAsB,2BAA2B,CAC/C,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,oBAAoB,EAC1B,IAAI,EAAE,uBAAuB,CAAC,MAAM,CAAC,GACpC,OAAO,CAAC,IAAI,CAAC,CAmBf"}