paracosm 0.4.240 → 0.4.248
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/runtime/cost-tracker.d.ts +5 -43
- package/dist/src/runtime/cost-tracker.d.ts.map +1 -1
- package/dist/src/runtime/cost-tracker.js +15 -63
- package/dist/src/runtime/cost-tracker.js.map +1 -1
- package/dist/src/runtime/emergent-setup.d.ts +12 -41
- package/dist/src/runtime/emergent-setup.d.ts.map +1 -1
- package/dist/src/runtime/emergent-setup.js +50 -303
- package/dist/src/runtime/emergent-setup.js.map +1 -1
- package/package.json +2 -2
- package/dist/src/runtime/forge-rejection-classifier.d.ts +0 -48
- package/dist/src/runtime/forge-rejection-classifier.d.ts.map +0 -1
- package/dist/src/runtime/forge-rejection-classifier.js +0 -120
- package/dist/src/runtime/forge-rejection-classifier.js.map +0 -1
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
*/
|
|
15
15
|
import type { SimulationModelConfig } from '../engine/types.js';
|
|
16
16
|
import { type CostSite } from './pricing.js';
|
|
17
|
+
import { type ForgeStats as AgentOSForgeStats } from '@framers/agentos';
|
|
17
18
|
/** Token + cost rollup for a single pipeline stage across a run. */
|
|
18
19
|
export interface CostBucket {
|
|
19
20
|
totalTokens: number;
|
|
@@ -48,50 +49,11 @@ export interface CostBreakdownEntry {
|
|
|
48
49
|
* the same SSE payload that ships cost data also ships "how is the
|
|
49
50
|
* judge treating this run's forges". Persists across the run (never
|
|
50
51
|
* decrements, matching the schemaRetries pattern).
|
|
52
|
+
*
|
|
53
|
+
* Identical in shape to AgentOS's {@link AgentOSForgeStats}; aliased so
|
|
54
|
+
* any future drift in the canonical definition propagates automatically.
|
|
51
55
|
*/
|
|
52
|
-
export
|
|
53
|
-
/** Total forge attempts (approved + rejected combined). */
|
|
54
|
-
attempts: number;
|
|
55
|
-
/** Attempts the judge approved. */
|
|
56
|
-
approved: number;
|
|
57
|
-
/** Attempts the judge rejected (shape check OR judge verdict). */
|
|
58
|
-
rejected: number;
|
|
59
|
-
/** Sum of confidence across APPROVED forges. Divide by `approved` for avg. */
|
|
60
|
-
approvedConfidenceSum: number;
|
|
61
|
-
/**
|
|
62
|
-
* Count of UNIQUE tool names seen this run. A forge that got rejected
|
|
63
|
-
* and re-forged under the same name counts once. Provides the
|
|
64
|
-
* "how many distinct tools did this run attempt" signal.
|
|
65
|
-
*/
|
|
66
|
-
uniqueNames: number;
|
|
67
|
-
/**
|
|
68
|
-
* Count of unique tool names that got approved at least once this
|
|
69
|
-
* run. Raw `approved` counts every approval attempt (re-forges add);
|
|
70
|
-
* `uniqueApproved` counts tools that landed in the toolbox.
|
|
71
|
-
*/
|
|
72
|
-
uniqueApproved: number;
|
|
73
|
-
/**
|
|
74
|
-
* Count of unique tool names that were ONLY rejected (never
|
|
75
|
-
* approved) this run. Non-zero means some forge ideas failed
|
|
76
|
-
* terminally; the retry loop did not recover. This is the
|
|
77
|
-
* actionable quality signal — small even when raw `rejected` is
|
|
78
|
-
* large because most rejections recover on subsequent attempts.
|
|
79
|
-
*/
|
|
80
|
-
uniqueTerminalRejections: number;
|
|
81
|
-
/**
|
|
82
|
-
* Histogram of rejection reasons this run, classified by
|
|
83
|
-
* classifyForgeRejection. Turns "why did forges fail" from a
|
|
84
|
-
* log-grep question into a live dashboard signal. Keys match
|
|
85
|
-
* ForgeRejectionCategory.
|
|
86
|
-
*/
|
|
87
|
-
rejectionReasons: {
|
|
88
|
-
schema_extra_field: number;
|
|
89
|
-
shape_check: number;
|
|
90
|
-
parse_error: number;
|
|
91
|
-
judge_correctness: number;
|
|
92
|
-
other: number;
|
|
93
|
-
};
|
|
94
|
-
}
|
|
56
|
+
export type ForgeStats = AgentOSForgeStats;
|
|
95
57
|
/**
|
|
96
58
|
* Per-run prompt-cache rollup. Ships alongside forgeStats on every
|
|
97
59
|
* _cost SSE payload so the dashboard can render live cache health.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cost-tracker.d.ts","sourceRoot":"","sources":["../../../src/runtime/cost-tracker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAGL,KAAK,QAAQ,EACd,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"cost-tracker.d.ts","sourceRoot":"","sources":["../../../src/runtime/cost-tracker.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
* @module paracosm/runtime/cost-tracker
|
|
14
14
|
*/
|
|
15
15
|
import { buildPriceForSite, getDefaultPricing, } from './pricing.js';
|
|
16
|
-
import {
|
|
16
|
+
import { ForgeStatsAggregator, } from '@framers/agentos';
|
|
17
17
|
/**
|
|
18
18
|
* Create a per-run cost tracker bound to a specific model config.
|
|
19
19
|
*
|
|
@@ -42,47 +42,14 @@ export function createCostTracker(modelConfig) {
|
|
|
42
42
|
*/
|
|
43
43
|
const schemaRetries = new Map();
|
|
44
44
|
/**
|
|
45
|
-
* Running forge stats.
|
|
46
|
-
*
|
|
45
|
+
* Running forge stats aggregator. Every wrapForgeTool capture feeds
|
|
46
|
+
* through recordForgeAttempt, which delegates to the AgentOS
|
|
47
|
+
* aggregator so SSE consumers see a live approval-rate indicator as
|
|
48
|
+
* the run goes. The aggregator owns the unique-name set bookkeeping,
|
|
49
|
+
* the rejection-reason histogram, and the `uniqueTerminalRejections =
|
|
50
|
+
* |rejectedNames − approvedNames|` math.
|
|
47
51
|
*/
|
|
48
|
-
const
|
|
49
|
-
attempts: 0,
|
|
50
|
-
approved: 0,
|
|
51
|
-
rejected: 0,
|
|
52
|
-
approvedConfidenceSum: 0,
|
|
53
|
-
uniqueNames: 0,
|
|
54
|
-
uniqueApproved: 0,
|
|
55
|
-
uniqueTerminalRejections: 0,
|
|
56
|
-
rejectionReasons: {
|
|
57
|
-
schema_extra_field: 0,
|
|
58
|
-
shape_check: 0,
|
|
59
|
-
parse_error: 0,
|
|
60
|
-
judge_correctness: 0,
|
|
61
|
-
other: 0,
|
|
62
|
-
},
|
|
63
|
-
};
|
|
64
|
-
// Per-name sets so the rollup can report unique-tool metrics. A tool
|
|
65
|
-
// rejected twice then approved contributes to `rejectedNames` and
|
|
66
|
-
// `approvedNames` both — at snapshot time, uniqueTerminalRejections =
|
|
67
|
-
// |rejectedNames - approvedNames|.
|
|
68
|
-
const approvedNames = new Set();
|
|
69
|
-
const rejectedNames = new Set();
|
|
70
|
-
const refreshUniqueForgeCounts = () => {
|
|
71
|
-
forgeStats.uniqueApproved = approvedNames.size;
|
|
72
|
-
// Names that were rejected but never approved = terminal failures.
|
|
73
|
-
let terminal = 0;
|
|
74
|
-
for (const n of rejectedNames)
|
|
75
|
-
if (!approvedNames.has(n))
|
|
76
|
-
terminal += 1;
|
|
77
|
-
forgeStats.uniqueTerminalRejections = terminal;
|
|
78
|
-
// Total unique = union of both sets.
|
|
79
|
-
const union = new Set();
|
|
80
|
-
for (const n of approvedNames)
|
|
81
|
-
union.add(n);
|
|
82
|
-
for (const n of rejectedNames)
|
|
83
|
-
union.add(n);
|
|
84
|
-
forgeStats.uniqueNames = union.size;
|
|
85
|
-
};
|
|
52
|
+
const forgeAggregator = new ForgeStatsAggregator();
|
|
86
53
|
/**
|
|
87
54
|
* Provider-error counters keyed by classifier kind. Incremented on
|
|
88
55
|
* every classified error, not just terminal ones, so rate-limit
|
|
@@ -179,8 +146,9 @@ export function createCostTracker(modelConfig) {
|
|
|
179
146
|
if (schemaRetries.size > 0) {
|
|
180
147
|
payload.schemaRetries = Object.fromEntries(schemaRetries.entries());
|
|
181
148
|
}
|
|
182
|
-
|
|
183
|
-
|
|
149
|
+
const forgeSnapshot = forgeAggregator.snapshot();
|
|
150
|
+
if (forgeSnapshot.attempts > 0) {
|
|
151
|
+
payload.forgeStats = forgeSnapshot;
|
|
184
152
|
}
|
|
185
153
|
if (cacheReadTokens > 0 || cacheCreationTokens > 0) {
|
|
186
154
|
payload.cacheStats = {
|
|
@@ -205,24 +173,7 @@ export function createCostTracker(modelConfig) {
|
|
|
205
173
|
});
|
|
206
174
|
};
|
|
207
175
|
const recordForgeAttempt = (approved, confidence, toolName, errorReason) => {
|
|
208
|
-
|
|
209
|
-
if (approved) {
|
|
210
|
-
forgeStats.approved += 1;
|
|
211
|
-
forgeStats.approvedConfidenceSum += confidence;
|
|
212
|
-
if (toolName)
|
|
213
|
-
approvedNames.add(toolName);
|
|
214
|
-
}
|
|
215
|
-
else {
|
|
216
|
-
forgeStats.rejected += 1;
|
|
217
|
-
if (toolName)
|
|
218
|
-
rejectedNames.add(toolName);
|
|
219
|
-
// Bucket the rejection reason so /retry-stats and the dashboard
|
|
220
|
-
// can show the failure-mode distribution without log-grep. Only
|
|
221
|
-
// meaningful on rejections; approvals never carry errorReason.
|
|
222
|
-
const category = classifyForgeRejection(errorReason);
|
|
223
|
-
forgeStats.rejectionReasons[category] += 1;
|
|
224
|
-
}
|
|
225
|
-
refreshUniqueForgeCounts();
|
|
176
|
+
forgeAggregator.recordAttempt(approved, confidence, toolName, errorReason);
|
|
226
177
|
};
|
|
227
178
|
const recordProviderError = (kind) => {
|
|
228
179
|
providerErrors[kind] += 1;
|
|
@@ -237,8 +188,9 @@ export function createCostTracker(modelConfig) {
|
|
|
237
188
|
if (schemaRetries.size > 0) {
|
|
238
189
|
out.schemaRetries = Object.fromEntries(schemaRetries.entries());
|
|
239
190
|
}
|
|
240
|
-
|
|
241
|
-
|
|
191
|
+
const forgeSnapshot = forgeAggregator.snapshot();
|
|
192
|
+
if (forgeSnapshot.attempts > 0) {
|
|
193
|
+
out.forgeStats = forgeSnapshot;
|
|
242
194
|
}
|
|
243
195
|
// Emit cacheStats only when the provider reported at least one
|
|
244
196
|
// cache-related token count. OpenAI runs (which auto-cache but
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cost-tracker.js","sourceRoot":"","sources":["../../../src/runtime/cost-tracker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,EACL,iBAAiB,EACjB,iBAAiB,GAElB,MAAM,cAAc,CAAC;AACtB,OAAO,
|
|
1
|
+
{"version":3,"file":"cost-tracker.js","sourceRoot":"","sources":["../../../src/runtime/cost-tracker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,EACL,iBAAiB,EACjB,iBAAiB,GAElB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,oBAAoB,GAErB,MAAM,kBAAkB,CAAC;AAsK1B;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,iBAAiB,CAAC,WAAkC;IAClE,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,IAAI,eAAe,GAAG,CAAC,CAAC;IACxB,IAAI,mBAAmB,GAAG,CAAC,CAAC;IAC5B;;;;;OAKG;IACH,MAAM,aAAa,GAAG,IAAI,GAAG,EAAkE,CAAC;IAChG;;;;;;;OAOG;IACH,MAAM,eAAe,GAAG,IAAI,oBAAoB,EAAE,CAAC;IACnD;;;;OAIG;IACH,MAAM,cAAc,GAAuB;QACzC,IAAI,EAAE,CAAC;QACP,KAAK,EAAE,CAAC;QACR,UAAU,EAAE,CAAC;QACb,OAAO,EAAE,CAAC;QACV,OAAO,EAAE,CAAC;QACV,KAAK,EAAE,CAAC;KACT,CAAC;IAEF,MAAM,cAAc,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;IACtD,MAAM,YAAY,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAEpD,MAAM,SAAS,GAAG,GAAe,EAAE,CAAC,CAAC;QACnC,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC;QACzC,eAAe,EAAE,CAAC,EAAE,mBAAmB,EAAE,CAAC;KAC3C,CAAC,CAAC;IACH,MAAM,UAAU,GAAiC;QAC/C,QAAQ,EAAE,SAAS,EAAE;QACrB,SAAS,EAAE,SAAS,EAAE;QACtB,WAAW,EAAE,SAAS,EAAE;QACxB,KAAK,EAAE,SAAS,EAAE;QAClB,SAAS,EAAE,SAAS,EAAE;QACtB,KAAK,EAAE,SAAS,EAAE;KACnB,CAAC;IAEF,MAAM,UAAU,GAA8B,CAAC,MAAM,EAAE,IAAI,GAAG,OAAO,EAAE,EAAE;QACvE,IAAI,CAAC,MAAM,EAAE,KAAK;YAAE,OAAO;QAC3B,MAAM,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,CAAC;QACrD,MAAM,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC,eAAe,IAAI,CAAC,CAAC;QACxD,MAAM,eAAe,GAAG,MAAM,CAAC,KAAK,CAAC,mBAAmB,IAAI,CAAC,CAAC;QAC9D,IAAI,YAAoB,CAAC;QACzB,IAAI,OAAO,MAAM,CAAC,KAAK,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC7C,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC;QACtC,CAAC;aAAM,CAAC;YACN,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,YAAY,IAAI,CAAC,CAAC;YAC7C,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,gBAAgB,IAAI,CAAC,CAAC;YAClD,gEAAgE;YAChE,iEAAiE;YACjE,6DAA6D;YAC7D,mEAAmE;YACnE,MAAM,WAAW,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;YACvC,YAAY;gBACV,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,GAAG,SAAS,CAAC;sBACrC,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,GAAG,SAAS,CAAC;sBACzC,CAAC,aAAa,GAAG,WAAW,CAAC,KAAK,GAAG,IAAI,GAAG,SAAS,CAAC;sBACtD,CAAC,eAAe,GAAG,WAAW,CAAC,KAAK,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;QAC/D,CAAC;QACD,WAAW,IAAI,cAAc,CAAC;QAC9B,YAAY,IAAI,YAAY,CAAC;QAC7B,QAAQ,EAAE,CAAC;QACX,eAAe,IAAI,aAAa,CAAC;QACjC,mBAAmB,IAAI,eAAe,CAAC;QACvC,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;QAChC,MAAM,CAAC,WAAW,IAAI,cAAc,CAAC;QACrC,MAAM,CAAC,YAAY,IAAI,YAAY,CAAC;QACpC,MAAM,CAAC,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,eAAe,IAAI,aAAa,CAAC;QACxC,MAAM,CAAC,mBAAmB,IAAI,eAAe,CAAC;IAChD,CAAC,CAAC;IAEF,MAAM,gBAAgB,GAAoC,GAAG,EAAE;QAC7D,IAAI,kBAAkB,GAAG,CAAC,CAAC;QAC3B,MAAM,SAAS,GAAuC,EAAE,CAAC;QACzD,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YAChD,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;gBAChB,MAAM,WAAW,GAAG,YAAY,CAAC,CAAa,CAAC,CAAC;gBAChD,MAAM,WAAW,GACf,CAAC,CAAC,CAAC,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAAC;sBAC3D,WAAW,CAAC,KAAK,GAAG,SAAS,CAAC;gBAClC,kBAAkB,IAAI,WAAW,CAAC;gBAClC,SAAS,CAAC,CAAC,CAAC,GAAG;oBACb,WAAW,EAAE,CAAC,CAAC,WAAW;oBAC1B,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,GAAG,KAAK,CAAC,GAAG,KAAK;oBACxD,KAAK,EAAE,CAAC,CAAC,KAAK;oBACd,GAAG,CAAC,CAAC,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACxE,GAAG,CAAC,CAAC,CAAC,mBAAmB,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,CAAC,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACpF,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,MAAM;wBACjC,CAAC,CAAC,EAAE,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,GAAG,KAAK,EAAE;wBAC9D,CAAC,CAAC,EAAE,CAAC;iBACR,CAAC;YACJ,CAAC;QACH,CAAC;QACD,MAAM,OAAO,GAAgB;YAC3B,WAAW;YACX,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,KAAK,CAAC,GAAG,KAAK;YACtD,QAAQ;YACR,eAAe;YACf,mBAAmB;YACnB,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC,kBAAkB,GAAG,KAAK,CAAC,GAAG,KAAK;YAC/D,SAAS;SACV,CAAC;QACF,IAAI,aAAa,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAC3B,OAAO,CAAC,aAAa,GAAG,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC;QACtE,CAAC;QACD,MAAM,aAAa,GAAG,eAAe,CAAC,QAAQ,EAAE,CAAC;QACjD,IAAI,aAAa,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,UAAU,GAAG,aAAa,CAAC;QACrC,CAAC;QACD,IAAI,eAAe,GAAG,CAAC,IAAI,mBAAmB,GAAG,CAAC,EAAE,CAAC;YACnD,OAAO,CAAC,UAAU,GAAG;gBACnB,UAAU,EAAE,eAAe;gBAC3B,cAAc,EAAE,mBAAmB;gBACnC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,kBAAkB,GAAG,KAAK,CAAC,GAAG,KAAK;aAC3D,CAAC;QACJ,CAAC;QACD,IAAI,cAAc,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;YAC7B,OAAO,CAAC,cAAc,GAAG,EAAE,GAAG,cAAc,EAAE,CAAC;QACjD,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC;IAEF,MAAM,mBAAmB,GAAuC,CAAC,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE;QACjG,IAAI,CAAC,UAAU;YAAE,OAAO;QACxB,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;QAC1F,aAAa,CAAC,GAAG,CAAC,UAAU,EAAE;YAC5B,QAAQ,EAAE,QAAQ,CAAC,QAAQ,GAAG,QAAQ;YACtC,KAAK,EAAE,QAAQ,CAAC,KAAK,GAAG,CAAC;YACzB,SAAS,EAAE,QAAQ,CAAC,SAAS,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACnD,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,kBAAkB,GAAsC,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAE,EAAE;QAC5G,eAAe,CAAC,aAAa,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IAC7E,CAAC,CAAC;IAEF,MAAM,mBAAmB,GAAuC,CAAC,IAAI,EAAE,EAAE;QACvE,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1B,cAAc,CAAC,KAAK,IAAI,CAAC,CAAC;IAC5B,CAAC,CAAC;IAEF,MAAM,SAAS,GAA6B,GAAG,EAAE;QAC/C,MAAM,GAAG,GAAyC;YAChD,WAAW;YACX,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,KAAK,CAAC,GAAG,KAAK;YACtD,QAAQ;SACT,CAAC;QACF,IAAI,aAAa,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAC3B,GAAG,CAAC,aAAa,GAAG,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC;QAClE,CAAC;QACD,MAAM,aAAa,GAAG,eAAe,CAAC,QAAQ,EAAE,CAAC;QACjD,IAAI,aAAa,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC;YAC/B,GAAG,CAAC,UAAU,GAAG,aAAa,CAAC;QACjC,CAAC;QACD,+DAA+D;QAC/D,+DAA+D;QAC/D,+DAA+D;QAC/D,sCAAsC;QACtC,IAAI,eAAe,GAAG,CAAC,IAAI,mBAAmB,GAAG,CAAC,EAAE,CAAC;YACnD,6DAA6D;YAC7D,gEAAgE;YAChE,IAAI,UAAU,GAAG,CAAC,CAAC;YACnB,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;gBAChD,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;oBAChB,MAAM,WAAW,GAAG,YAAY,CAAC,CAAa,CAAC,CAAC;oBAChD,UAAU;wBACR,CAAC,CAAC,CAAC,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAAC;8BAC3D,WAAW,CAAC,KAAK,GAAG,SAAS,CAAC;gBACpC,CAAC;YACH,CAAC;YACD,GAAG,CAAC,UAAU,GAAG;gBACf,UAAU,EAAE,eAAe;gBAC3B,cAAc,EAAE,mBAAmB;gBACnC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,GAAG,KAAK;aACnD,CAAC;QACJ,CAAC;QACD,IAAI,cAAc,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;YAC7B,GAAG,CAAC,cAAc,GAAG,EAAE,GAAG,cAAc,EAAE,CAAC;QAC7C,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;IAEF,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,SAAS,EAAE,CAAC;AACnH,CAAC"}
|
|
@@ -17,7 +17,8 @@
|
|
|
17
17
|
* @module paracosm/runtime/emergent-setup
|
|
18
18
|
*/
|
|
19
19
|
import type { ITool } from '@framers/agentos';
|
|
20
|
-
import { EmergentCapabilityEngine, ForgeToolMetaTool } from '@framers/agentos';
|
|
20
|
+
import { EmergentCapabilityEngine, ForgeToolMetaTool, validateForgeShape, inferSchemaFromTestCases } from '@framers/agentos';
|
|
21
|
+
export { validateForgeShape, inferSchemaFromTestCases };
|
|
21
22
|
import { type SimulationExecutionConfig } from '../cli/sim-config.js';
|
|
22
23
|
import type { LlmProvider } from '../engine/types.js';
|
|
23
24
|
/**
|
|
@@ -102,48 +103,18 @@ export interface CapturedForge {
|
|
|
102
103
|
/** Wall-clock ms timestamp so we can attribute forges to the surrounding event. */
|
|
103
104
|
timestamp: number;
|
|
104
105
|
}
|
|
105
|
-
/**
|
|
106
|
-
* When inputSchema / outputSchema lack declared properties but the
|
|
107
|
-
* testCases carry real field values, synthesize properties from the
|
|
108
|
-
* testCase data so the shape validator passes.
|
|
109
|
-
*
|
|
110
|
-
* The LLM regularly emits concrete test cases without formalizing the
|
|
111
|
-
* schema shape. Before this helper, every such forge was rejected by
|
|
112
|
-
* validateForgeShape even though the intent was clearly legitimate.
|
|
113
|
-
*
|
|
114
|
-
* Mutates `req.inputSchema` / `req.outputSchema` in place. A scanned
|
|
115
|
-
* union of fields across ALL testCases is used so a single incomplete
|
|
116
|
-
* case doesn't narrow the schema.
|
|
117
|
-
*
|
|
118
|
-
* Exported for unit testing.
|
|
119
|
-
*/
|
|
120
|
-
export declare function inferSchemaFromTestCases(req: {
|
|
121
|
-
inputSchema?: unknown;
|
|
122
|
-
outputSchema?: unknown;
|
|
123
|
-
testCases?: unknown;
|
|
124
|
-
}): void;
|
|
125
|
-
/**
|
|
126
|
-
* Shape check run against a normalized forge request before it hits
|
|
127
|
-
* the judge. Catches the failure modes that cause almost all cheap-
|
|
128
|
-
* tier forge rejections (empty schemas + empty-input testCases) and
|
|
129
|
-
* returns a list of reasons. Empty array means the forge is well-
|
|
130
|
-
* formed enough to warrant the judge's attention.
|
|
131
|
-
*
|
|
132
|
-
* Exported for direct unit testing so the rule surface is pinned
|
|
133
|
-
* without having to mock the forge engine.
|
|
134
|
-
*/
|
|
135
|
-
export declare function validateForgeShape(req: {
|
|
136
|
-
inputSchema?: unknown;
|
|
137
|
-
outputSchema?: unknown;
|
|
138
|
-
testCases?: unknown;
|
|
139
|
-
}): string[];
|
|
140
106
|
/**
|
|
141
107
|
* Wrap the raw forge_tool meta-tool so each department's forge attempts
|
|
142
|
-
* get captured + logged + normalized before they reach the engine.
|
|
143
|
-
*
|
|
144
|
-
*
|
|
145
|
-
*
|
|
146
|
-
*
|
|
108
|
+
* get captured + logged + normalized before they reach the engine.
|
|
109
|
+
*
|
|
110
|
+
* Thin adapter over AgentOS's `wrapForgeTool`. Preserves paracosm's
|
|
111
|
+
* legacy positional signature (dept, capture) and wire shape
|
|
112
|
+
* (CapturedForge.department) so every downstream consumer — orchestrator
|
|
113
|
+
* buckets, SSE payloads, the dashboard's forge viz — keeps working
|
|
114
|
+
* without a schema-level migration. Internally the AgentOS version does
|
|
115
|
+
* all the normalization, shape validation, schema inference, and capture
|
|
116
|
+
* — paracosm contributes the pm2-format console logging and the
|
|
117
|
+
* department-shaped capture record.
|
|
147
118
|
*/
|
|
148
119
|
export declare function wrapForgeTool(raw: ForgeToolMetaTool, agentId: string, sessionId: string, dept: string, capture: (record: CapturedForge) => void): ITool;
|
|
149
120
|
//# sourceMappingURL=emergent-setup.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emergent-setup.d.ts","sourceRoot":"","sources":["../../../src/runtime/emergent-setup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EACL,wBAAwB,EACmB,iBAAiB,
|
|
1
|
+
{"version":3,"file":"emergent-setup.d.ts","sourceRoot":"","sources":["../../../src/runtime/emergent-setup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EACL,wBAAwB,EACmB,iBAAiB,EAG5D,kBAAkB,EAClB,wBAAwB,EAGzB,MAAM,kBAAkB,CAAC;AAI1B,OAAO,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,CAAC;AACxD,OAAO,EAAqB,KAAK,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACzF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAMtD;;;;;;;GAOG;AACH,eAAO,MAAM,aAAa,EAAE,KA6C3B,CAAC;AAMF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,EAC3B,QAAQ,EAAE,WAAW,EACrB,UAAU,EAAE,MAAM,EAClB,SAAS,GAAE,OAAO,CAAC,yBAAyB,CAAM,EAClD,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE;IAAE,KAAK,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAC;QAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,KAAK,IAAI,EACpI,eAAe,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI;AACxC;;;;;;GAMG;AACH,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC;;;EA0FvC;AAMD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,oBAAoB,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,KAAK,CAkCjF;AAMD;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,mFAAmF;IACnF,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,aAAa,CAC3B,GAAG,EAAE,iBAAiB,EACtB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,GACvC,KAAK,CAyCP"}
|
|
@@ -16,7 +16,10 @@
|
|
|
16
16
|
*
|
|
17
17
|
* @module paracosm/runtime/emergent-setup
|
|
18
18
|
*/
|
|
19
|
-
import { EmergentCapabilityEngine, EmergentJudge, EmergentToolRegistry, ComposableToolBuilder, SandboxedToolForge, ForgeToolMetaTool, generateText, } from '@framers/agentos';
|
|
19
|
+
import { EmergentCapabilityEngine, EmergentJudge, EmergentToolRegistry, ComposableToolBuilder, SandboxedToolForge, ForgeToolMetaTool, generateText, wrapForgeTool as wrapForgeToolAgentOS, validateForgeShape, inferSchemaFromTestCases, } from '@framers/agentos';
|
|
20
|
+
// Re-export the generalized forge utilities so existing paracosm call
|
|
21
|
+
// sites continue to import from this module without churn.
|
|
22
|
+
export { validateForgeShape, inferSchemaFromTestCases };
|
|
20
23
|
import { DEFAULT_EXECUTION } from '../cli/sim-config.js';
|
|
21
24
|
// ---------------------------------------------------------------------------
|
|
22
25
|
// Web search tool
|
|
@@ -261,313 +264,57 @@ export function createCallForgedTool(forgedExecutables) {
|
|
|
261
264
|
},
|
|
262
265
|
};
|
|
263
266
|
}
|
|
264
|
-
/**
|
|
265
|
-
* Derive a JSON-Schema primitive type from a concrete testCase value.
|
|
266
|
-
* Handles the types the sandbox forge actually returns: number, string,
|
|
267
|
-
* boolean, object, array. Falls back to `string` for anything else so
|
|
268
|
-
* the schema stays well-formed.
|
|
269
|
-
*/
|
|
270
|
-
function inferTypeFromValue(v) {
|
|
271
|
-
if (typeof v === 'number')
|
|
272
|
-
return 'number';
|
|
273
|
-
if (typeof v === 'boolean')
|
|
274
|
-
return 'boolean';
|
|
275
|
-
if (typeof v === 'string')
|
|
276
|
-
return 'string';
|
|
277
|
-
if (Array.isArray(v))
|
|
278
|
-
return 'array';
|
|
279
|
-
if (v !== null && typeof v === 'object')
|
|
280
|
-
return 'object';
|
|
281
|
-
return 'string';
|
|
282
|
-
}
|
|
283
|
-
/**
|
|
284
|
-
* When inputSchema / outputSchema lack declared properties but the
|
|
285
|
-
* testCases carry real field values, synthesize properties from the
|
|
286
|
-
* testCase data so the shape validator passes.
|
|
287
|
-
*
|
|
288
|
-
* The LLM regularly emits concrete test cases without formalizing the
|
|
289
|
-
* schema shape. Before this helper, every such forge was rejected by
|
|
290
|
-
* validateForgeShape even though the intent was clearly legitimate.
|
|
291
|
-
*
|
|
292
|
-
* Mutates `req.inputSchema` / `req.outputSchema` in place. A scanned
|
|
293
|
-
* union of fields across ALL testCases is used so a single incomplete
|
|
294
|
-
* case doesn't narrow the schema.
|
|
295
|
-
*
|
|
296
|
-
* Exported for unit testing.
|
|
297
|
-
*/
|
|
298
|
-
export function inferSchemaFromTestCases(req) {
|
|
299
|
-
const tcArr = Array.isArray(req.testCases)
|
|
300
|
-
? req.testCases
|
|
301
|
-
: [];
|
|
302
|
-
if (tcArr.length === 0)
|
|
303
|
-
return;
|
|
304
|
-
const inferProperties = (key) => {
|
|
305
|
-
const props = {};
|
|
306
|
-
for (const tc of tcArr) {
|
|
307
|
-
const data = tc?.[key];
|
|
308
|
-
if (!data || typeof data !== 'object' || Array.isArray(data))
|
|
309
|
-
continue;
|
|
310
|
-
for (const [field, value] of Object.entries(data)) {
|
|
311
|
-
if (props[field])
|
|
312
|
-
continue;
|
|
313
|
-
props[field] = { type: inferTypeFromValue(value) };
|
|
314
|
-
}
|
|
315
|
-
}
|
|
316
|
-
return props;
|
|
317
|
-
};
|
|
318
|
-
const maybeUpgrade = (schemaKey, testCaseKey) => {
|
|
319
|
-
const schema = req[schemaKey];
|
|
320
|
-
const current = (schema && typeof schema === 'object' ? schema : {});
|
|
321
|
-
const hasProps = current.properties &&
|
|
322
|
-
typeof current.properties === 'object' &&
|
|
323
|
-
Object.keys(current.properties).length > 0;
|
|
324
|
-
if (hasProps)
|
|
325
|
-
return;
|
|
326
|
-
const inferred = inferProperties(testCaseKey);
|
|
327
|
-
if (Object.keys(inferred).length === 0)
|
|
328
|
-
return;
|
|
329
|
-
req[schemaKey] = {
|
|
330
|
-
type: 'object',
|
|
331
|
-
properties: inferred,
|
|
332
|
-
required: Object.keys(inferred),
|
|
333
|
-
additionalProperties: false,
|
|
334
|
-
};
|
|
335
|
-
};
|
|
336
|
-
maybeUpgrade('inputSchema', 'input');
|
|
337
|
-
maybeUpgrade('outputSchema', 'expectedOutput');
|
|
338
|
-
}
|
|
339
|
-
/**
|
|
340
|
-
* Shape check run against a normalized forge request before it hits
|
|
341
|
-
* the judge. Catches the failure modes that cause almost all cheap-
|
|
342
|
-
* tier forge rejections (empty schemas + empty-input testCases) and
|
|
343
|
-
* returns a list of reasons. Empty array means the forge is well-
|
|
344
|
-
* formed enough to warrant the judge's attention.
|
|
345
|
-
*
|
|
346
|
-
* Exported for direct unit testing so the rule surface is pinned
|
|
347
|
-
* without having to mock the forge engine.
|
|
348
|
-
*/
|
|
349
|
-
export function validateForgeShape(req) {
|
|
350
|
-
const errors = [];
|
|
351
|
-
const inputSchema = req.inputSchema;
|
|
352
|
-
const outputSchema = req.outputSchema;
|
|
353
|
-
const inputProps = inputSchema && typeof inputSchema.properties === 'object' ? inputSchema.properties : null;
|
|
354
|
-
const outputProps = outputSchema && typeof outputSchema.properties === 'object' ? outputSchema.properties : null;
|
|
355
|
-
if (!inputProps || Object.keys(inputProps).length === 0) {
|
|
356
|
-
errors.push('inputSchema has no declared properties; add at least two typed fields');
|
|
357
|
-
}
|
|
358
|
-
if (!outputProps || Object.keys(outputProps).length === 0) {
|
|
359
|
-
errors.push('outputSchema has no declared properties; add at least one typed output field');
|
|
360
|
-
}
|
|
361
|
-
const tcArr = Array.isArray(req.testCases)
|
|
362
|
-
? req.testCases
|
|
363
|
-
: [];
|
|
364
|
-
if (tcArr.length < 2) {
|
|
365
|
-
errors.push(`need at least 2 testCases, got ${tcArr.length}`);
|
|
366
|
-
}
|
|
367
|
-
const emptyInputs = tcArr.filter(tc => {
|
|
368
|
-
const inp = tc?.input;
|
|
369
|
-
return !inp || typeof inp !== 'object' || Object.keys(inp).length === 0;
|
|
370
|
-
}).length;
|
|
371
|
-
if (emptyInputs > 0) {
|
|
372
|
-
errors.push(`${emptyInputs} testCase${emptyInputs === 1 ? '' : 's'} use empty input; every test needs real field values`);
|
|
373
|
-
}
|
|
374
|
-
return errors;
|
|
375
|
-
}
|
|
376
267
|
/**
|
|
377
268
|
* Wrap the raw forge_tool meta-tool so each department's forge attempts
|
|
378
|
-
* get captured + logged + normalized before they reach the engine.
|
|
379
|
-
*
|
|
380
|
-
*
|
|
381
|
-
*
|
|
382
|
-
*
|
|
269
|
+
* get captured + logged + normalized before they reach the engine.
|
|
270
|
+
*
|
|
271
|
+
* Thin adapter over AgentOS's `wrapForgeTool`. Preserves paracosm's
|
|
272
|
+
* legacy positional signature (dept, capture) and wire shape
|
|
273
|
+
* (CapturedForge.department) so every downstream consumer — orchestrator
|
|
274
|
+
* buckets, SSE payloads, the dashboard's forge viz — keeps working
|
|
275
|
+
* without a schema-level migration. Internally the AgentOS version does
|
|
276
|
+
* all the normalization, shape validation, schema inference, and capture
|
|
277
|
+
* — paracosm contributes the pm2-format console logging and the
|
|
278
|
+
* department-shaped capture record.
|
|
383
279
|
*/
|
|
384
280
|
export function wrapForgeTool(raw, agentId, sessionId, dept, capture) {
|
|
385
|
-
return {
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
impl.mode = 'compose';
|
|
421
|
-
}
|
|
422
|
-
if (impl.mode !== 'sandbox' && impl.mode !== 'compose') {
|
|
423
|
-
if (Array.isArray(impl.steps))
|
|
424
|
-
impl.mode = 'compose';
|
|
425
|
-
else if (typeof impl.code === 'string')
|
|
426
|
-
impl.mode = 'sandbox';
|
|
427
|
-
else
|
|
428
|
-
impl.mode = 'sandbox';
|
|
429
|
-
}
|
|
430
|
-
if (impl.mode === 'sandbox') {
|
|
431
|
-
if (!Array.isArray(impl.allowlist))
|
|
432
|
-
impl.allowlist = [];
|
|
433
|
-
if (impl.code != null && typeof impl.code !== 'string')
|
|
434
|
-
impl.code = String(impl.code);
|
|
435
|
-
if (!impl.code || typeof impl.code !== 'string') {
|
|
436
|
-
impl.code = 'function execute(input) { return { error: "No code provided in forge request" }; }';
|
|
437
|
-
}
|
|
438
|
-
if (!impl.code.includes('function execute')) {
|
|
439
|
-
impl.code = `function execute(input) {\n${impl.code}\n}`;
|
|
440
|
-
}
|
|
441
|
-
}
|
|
442
|
-
else if (impl.mode === 'compose') {
|
|
443
|
-
if (!Array.isArray(impl.steps))
|
|
444
|
-
impl.steps = [];
|
|
445
|
-
for (const step of impl.steps) {
|
|
446
|
-
if (step && typeof step === 'object') {
|
|
447
|
-
if (typeof step.tool !== 'string')
|
|
448
|
-
step.tool = '';
|
|
449
|
-
if (typeof step.name !== 'string')
|
|
450
|
-
step.name = step.tool || 'step';
|
|
451
|
-
if (!step.inputMapping || typeof step.inputMapping !== 'object') {
|
|
452
|
-
step.inputMapping = {};
|
|
453
|
-
}
|
|
454
|
-
}
|
|
455
|
-
}
|
|
456
|
-
}
|
|
457
|
-
}
|
|
458
|
-
if (!fixed.inputSchema || typeof fixed.inputSchema !== 'object') {
|
|
459
|
-
fixed.inputSchema = { type: 'object', additionalProperties: true };
|
|
460
|
-
}
|
|
461
|
-
if (!fixed.outputSchema || typeof fixed.outputSchema !== 'object') {
|
|
462
|
-
fixed.outputSchema = { type: 'object', additionalProperties: true };
|
|
463
|
-
}
|
|
464
|
-
if (!Array.isArray(fixed.testCases) || fixed.testCases.length === 0) {
|
|
465
|
-
fixed.testCases = [{ input: {}, expectedOutput: {} }];
|
|
466
|
-
}
|
|
467
|
-
for (const tc of fixed.testCases) {
|
|
468
|
-
if (!tc.input || typeof tc.input !== 'object')
|
|
469
|
-
tc.input = {};
|
|
470
|
-
if (tc.expectedOutput === undefined)
|
|
471
|
-
tc.expectedOutput = {};
|
|
472
|
-
}
|
|
473
|
-
// Schema inference from testCases.
|
|
474
|
-
//
|
|
475
|
-
// The LLM often provides concrete testCases with real field values
|
|
476
|
-
// but forgets to declare `inputSchema.properties` / `outputSchema.
|
|
477
|
-
// properties`. The shape validator then rejects every forge before
|
|
478
|
-
// the judge sees it. Since the testCases already witness the fields
|
|
479
|
-
// the tool actually consumes, we can synthesize the missing schema
|
|
480
|
-
// properties from them and pass the shape check deterministically.
|
|
481
|
-
//
|
|
482
|
-
// This is NOT a relaxation of the schema discipline — the tool code
|
|
483
|
-
// still has to handle whatever inputs come in. It's a correction of
|
|
484
|
-
// a common LLM oversight (examples without formalization) that was
|
|
485
|
-
// the dominant cause of turn-1 forge failures in the demo.
|
|
486
|
-
inferSchemaFromTestCases(fixed);
|
|
487
|
-
const mode = fixed.implementation?.mode || '?';
|
|
488
|
-
const toolName = String(fixed.name || 'unnamed');
|
|
489
|
-
const toolDescription = String(fixed.description || toolName);
|
|
490
|
-
// Pre-judge validation via the extracted helper so the rule
|
|
491
|
-
// surface stays testable without mocking the whole forge engine.
|
|
492
|
-
const shapeErrors = validateForgeShape(fixed);
|
|
493
|
-
if (shapeErrors.length > 0) {
|
|
494
|
-
const reason = `Shape check failed: ${shapeErrors.join('; ')}`;
|
|
495
|
-
console.log(` 🔧 [${dept}] ✗ "${toolName}" — ${reason}`);
|
|
496
|
-
capture({
|
|
497
|
-
name: toolName,
|
|
498
|
-
description: toolDescription,
|
|
499
|
-
mode: String(mode),
|
|
500
|
-
inputSchema: fixed.inputSchema,
|
|
501
|
-
outputSchema: fixed.outputSchema,
|
|
502
|
-
approved: false,
|
|
503
|
-
confidence: 0,
|
|
504
|
-
output: null,
|
|
505
|
-
errorReason: reason.slice(0, 240),
|
|
506
|
-
department: dept,
|
|
507
|
-
timestamp: Date.now(),
|
|
508
|
-
});
|
|
509
|
-
return {
|
|
510
|
-
success: false,
|
|
511
|
-
error: reason,
|
|
512
|
-
output: { success: false, verdict: { approved: false, confidence: 0, reasoning: reason } },
|
|
513
|
-
};
|
|
514
|
-
}
|
|
515
|
-
console.log(` 🔧 [${dept}] Forging "${toolName}" (${mode})...`);
|
|
516
|
-
const patched = { ...ctx, gmiId: agentId, sessionData: { ...(ctx?.sessionData ?? {}), sessionId } };
|
|
517
|
-
try {
|
|
518
|
-
const r = await raw.execute(fixed, patched);
|
|
519
|
-
const out = r.output;
|
|
520
|
-
const verdict = out?.verdict || {};
|
|
521
|
-
// Judge confidence is the judge's score for whether the tool
|
|
522
|
-
// is safe + correct. When the judge fails the forge, its
|
|
523
|
-
// confidence is in REJECTING the tool; surfacing that as the
|
|
524
|
-
// tool's own quality score is misleading. So:
|
|
525
|
-
// approved → use judge confidence if provided, else 0.85
|
|
526
|
-
// rejected → confidence is 0 (not accepted at all)
|
|
527
|
-
const judgeConfidence = typeof verdict.confidence === 'number' ? verdict.confidence : null;
|
|
528
|
-
const confidence = r.success ? (judgeConfidence ?? 0.85) : 0;
|
|
529
|
-
const errorReason = !r.success
|
|
530
|
-
? String(r.error || verdict.reasoning || out?.error || '').slice(0, 240)
|
|
531
|
-
: undefined;
|
|
532
|
-
if (r.success) {
|
|
533
|
-
console.log(` 🔧 [${dept}] ✓ "${toolName}" approved (conf ${confidence.toFixed(2)})`);
|
|
534
|
-
}
|
|
535
|
-
else {
|
|
536
|
-
console.log(` 🔧 [${dept}] ✗ "${toolName}" — ${errorReason}`);
|
|
537
|
-
}
|
|
538
|
-
capture({
|
|
539
|
-
name: toolName,
|
|
540
|
-
description: toolDescription,
|
|
541
|
-
mode: String(mode),
|
|
542
|
-
inputSchema: fixed.inputSchema,
|
|
543
|
-
outputSchema: fixed.outputSchema,
|
|
544
|
-
approved: !!r.success,
|
|
545
|
-
confidence,
|
|
546
|
-
output: out?.testResults ?? out?.result ?? out ?? null,
|
|
547
|
-
errorReason,
|
|
548
|
-
department: dept,
|
|
549
|
-
timestamp: Date.now(),
|
|
550
|
-
});
|
|
551
|
-
return r;
|
|
552
|
-
}
|
|
553
|
-
catch (err) {
|
|
554
|
-
console.log(` 🔧 [${dept}] ERR: ${err}`);
|
|
555
|
-
capture({
|
|
556
|
-
name: toolName,
|
|
557
|
-
description: toolDescription,
|
|
558
|
-
mode: String(mode),
|
|
559
|
-
inputSchema: fixed.inputSchema,
|
|
560
|
-
outputSchema: fixed.outputSchema,
|
|
561
|
-
approved: false,
|
|
562
|
-
confidence: 0,
|
|
563
|
-
output: null,
|
|
564
|
-
errorReason: String(err).slice(0, 240),
|
|
565
|
-
department: dept,
|
|
566
|
-
timestamp: Date.now(),
|
|
567
|
-
});
|
|
568
|
-
return { success: false, error: String(err) };
|
|
281
|
+
return wrapForgeToolAgentOS({
|
|
282
|
+
raw,
|
|
283
|
+
agentId,
|
|
284
|
+
sessionId,
|
|
285
|
+
scope: dept,
|
|
286
|
+
capture: (record) => {
|
|
287
|
+
capture({
|
|
288
|
+
name: record.name,
|
|
289
|
+
description: record.description,
|
|
290
|
+
mode: record.mode,
|
|
291
|
+
inputSchema: record.inputSchema,
|
|
292
|
+
outputSchema: record.outputSchema,
|
|
293
|
+
approved: record.approved,
|
|
294
|
+
confidence: record.confidence,
|
|
295
|
+
output: record.output,
|
|
296
|
+
errorReason: record.errorReason,
|
|
297
|
+
department: record.scope ?? dept,
|
|
298
|
+
timestamp: record.timestamp,
|
|
299
|
+
});
|
|
300
|
+
},
|
|
301
|
+
log: (event) => {
|
|
302
|
+
const scopeLabel = event.scope ?? dept;
|
|
303
|
+
switch (event.kind) {
|
|
304
|
+
case 'start':
|
|
305
|
+
console.log(` 🔧 [${scopeLabel}] Forging "${event.toolName}" (${event.mode})...`);
|
|
306
|
+
break;
|
|
307
|
+
case 'approved':
|
|
308
|
+
console.log(` 🔧 [${scopeLabel}] ✓ "${event.toolName}" approved (conf ${event.confidence.toFixed(2)})`);
|
|
309
|
+
break;
|
|
310
|
+
case 'rejected':
|
|
311
|
+
console.log(` 🔧 [${scopeLabel}] ✗ "${event.toolName}" — ${event.reason}`);
|
|
312
|
+
break;
|
|
313
|
+
case 'error':
|
|
314
|
+
console.log(` 🔧 [${scopeLabel}] ERR: ${event.error}`);
|
|
315
|
+
break;
|
|
569
316
|
}
|
|
570
317
|
},
|
|
571
|
-
};
|
|
318
|
+
});
|
|
572
319
|
}
|
|
573
320
|
//# sourceMappingURL=emergent-setup.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emergent-setup.js","sourceRoot":"","sources":["../../../src/runtime/emergent-setup.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"emergent-setup.js","sourceRoot":"","sources":["../../../src/runtime/emergent-setup.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "paracosm",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.248",
|
|
4
4
|
"description": "AI agent swarm simulation engine with emergent crises, runtime tool forging, HEXACO personality drift, and deterministic kernels. Built on AgentOS.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/engine/index.js",
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
"leader:b": "npx tsx src/cli/run-b.ts"
|
|
57
57
|
},
|
|
58
58
|
"dependencies": {
|
|
59
|
-
"@framers/agentos": "^0.1.
|
|
59
|
+
"@framers/agentos": "^0.1.232",
|
|
60
60
|
"@framers/sql-storage-adapter": "^0.6.2",
|
|
61
61
|
"zod": "^4.3.6"
|
|
62
62
|
},
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Classify a forge rejection's `errorReason` string into one of five
|
|
3
|
-
* categories. Pure string matching against observed AgentOS judge
|
|
4
|
-
* verdict text + paracosm's local shape-check messages.
|
|
5
|
-
*
|
|
6
|
-
* Why this exists: sub-project C exposed a `forges.rejected` counter
|
|
7
|
-
* but the reason text was only visible via SSH'ing pm2 logs. Aggregating
|
|
8
|
-
* by category lets the dashboard and /retry-stats answer
|
|
9
|
-
* "is the LLM's output-schema discipline improving after the forge
|
|
10
|
-
* guidance prompt fix" without a human reading error messages.
|
|
11
|
-
*
|
|
12
|
-
* Categories are deliberately narrow — we only split out patterns that
|
|
13
|
-
* appeared clearly in the 2026-04-18 production log sample (where
|
|
14
|
-
* ~92% of rejections were schema-extra-field) and leave anything
|
|
15
|
-
* unrecognized in the `other` bucket.
|
|
16
|
-
*
|
|
17
|
-
* @module paracosm/runtime/forge-rejection-classifier
|
|
18
|
-
*/
|
|
19
|
-
/** Rejection-reason category. */
|
|
20
|
-
export type ForgeRejectionCategory =
|
|
21
|
-
/** Implementation returned output fields not declared in outputSchema
|
|
22
|
-
* (violates additionalProperties:false). #1 production failure; the
|
|
23
|
-
* target the 2026-04-18 forge-guidance prompt fix is trying to cut. */
|
|
24
|
-
'schema_extra_field'
|
|
25
|
-
/** Paracosm's pre-judge shape check caught a malformed request
|
|
26
|
-
* (empty testCases, empty schema properties, empty-input testCases). */
|
|
27
|
-
| 'shape_check'
|
|
28
|
-
/** Judge LLM returned malformed JSON the engine could not parse. */
|
|
29
|
-
| 'parse_error'
|
|
30
|
-
/** Judge flagged logic / correctness / safety concerns in the code
|
|
31
|
-
* itself (division bugs, threshold inversions, unbounded outputs). */
|
|
32
|
-
| 'judge_correctness'
|
|
33
|
-
/** Everything else. A non-zero `other` bucket is a signal to read
|
|
34
|
-
* the raw text and consider adding a new category. */
|
|
35
|
-
| 'other';
|
|
36
|
-
/**
|
|
37
|
-
* Classify a rejection reason string. Case-insensitive substring match
|
|
38
|
-
* against pattern lists, evaluated in order: schema_extra_field first
|
|
39
|
-
* (most common), then shape_check (local pre-validator), then
|
|
40
|
-
* parse_error, then judge_correctness, then `other`.
|
|
41
|
-
*
|
|
42
|
-
* Order matters: "violates the declared output schema by returning an
|
|
43
|
-
* additional field due to a logic error" matches BOTH schema_extra_field
|
|
44
|
-
* and judge_correctness; the former wins because it is the more specific
|
|
45
|
-
* and more actionable signal.
|
|
46
|
-
*/
|
|
47
|
-
export declare function classifyForgeRejection(errorReason: string | undefined): ForgeRejectionCategory;
|
|
48
|
-
//# sourceMappingURL=forge-rejection-classifier.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"forge-rejection-classifier.d.ts","sourceRoot":"","sources":["../../../src/runtime/forge-rejection-classifier.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,iCAAiC;AACjC,MAAM,MAAM,sBAAsB;AAChC;;wEAEwE;AACtE,oBAAoB;AACtB;yEACyE;GACvE,aAAa;AACf,oEAAoE;GAClE,aAAa;AACf;uEACuE;GACrE,mBAAmB;AACrB;uDACuD;GACrD,OAAO,CAAC;AAuEZ;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,sBAAsB,CAoB9F"}
|
|
@@ -1,120 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Classify a forge rejection's `errorReason` string into one of five
|
|
3
|
-
* categories. Pure string matching against observed AgentOS judge
|
|
4
|
-
* verdict text + paracosm's local shape-check messages.
|
|
5
|
-
*
|
|
6
|
-
* Why this exists: sub-project C exposed a `forges.rejected` counter
|
|
7
|
-
* but the reason text was only visible via SSH'ing pm2 logs. Aggregating
|
|
8
|
-
* by category lets the dashboard and /retry-stats answer
|
|
9
|
-
* "is the LLM's output-schema discipline improving after the forge
|
|
10
|
-
* guidance prompt fix" without a human reading error messages.
|
|
11
|
-
*
|
|
12
|
-
* Categories are deliberately narrow — we only split out patterns that
|
|
13
|
-
* appeared clearly in the 2026-04-18 production log sample (where
|
|
14
|
-
* ~92% of rejections were schema-extra-field) and leave anything
|
|
15
|
-
* unrecognized in the `other` bucket.
|
|
16
|
-
*
|
|
17
|
-
* @module paracosm/runtime/forge-rejection-classifier
|
|
18
|
-
*/
|
|
19
|
-
const SCHEMA_EXTRA_FIELD_PATTERNS = [
|
|
20
|
-
'additional properties',
|
|
21
|
-
'additional property',
|
|
22
|
-
'additionalproperties',
|
|
23
|
-
'extra field',
|
|
24
|
-
'extra fields',
|
|
25
|
-
'extra property',
|
|
26
|
-
'extra properties',
|
|
27
|
-
'undeclared extra field',
|
|
28
|
-
'undeclared field',
|
|
29
|
-
'emits an additional',
|
|
30
|
-
'emits extra',
|
|
31
|
-
'returning an additional',
|
|
32
|
-
'returning extra',
|
|
33
|
-
'returns an additional',
|
|
34
|
-
'returns extra',
|
|
35
|
-
'returns additional',
|
|
36
|
-
'returning an undeclared',
|
|
37
|
-
];
|
|
38
|
-
/**
|
|
39
|
-
* Regex-based patterns for "extra <modifier> field" phrasings that
|
|
40
|
-
* substring matching misses. Example: "extra recommendations field"
|
|
41
|
-
* is clearly a schema-extra-field rejection but the string "extra field"
|
|
42
|
-
* is not contiguous. This regex catches the general form.
|
|
43
|
-
*/
|
|
44
|
-
const SCHEMA_EXTRA_FIELD_REGEXES = [
|
|
45
|
-
/\bextra\s+\w+\s+field\b/,
|
|
46
|
-
/\badditional\s+\w+\s+field\b/,
|
|
47
|
-
/\bextra\s+\w+\s+property\b/,
|
|
48
|
-
/\badditional\s+\w+\s+property\b/,
|
|
49
|
-
];
|
|
50
|
-
const SHAPE_CHECK_PATTERNS = [
|
|
51
|
-
'shape check failed',
|
|
52
|
-
'inputschema has no declared properties',
|
|
53
|
-
'outputschema has no declared properties',
|
|
54
|
-
'testcases use empty input',
|
|
55
|
-
'testcase use empty input',
|
|
56
|
-
'need at least 2 testcases',
|
|
57
|
-
'every test needs real field values',
|
|
58
|
-
];
|
|
59
|
-
const PARSE_ERROR_PATTERNS = [
|
|
60
|
-
'failed to parse llm response',
|
|
61
|
-
'could not parse judge response',
|
|
62
|
-
'judge response was not valid json',
|
|
63
|
-
];
|
|
64
|
-
const JUDGE_CORRECTNESS_PATTERNS = [
|
|
65
|
-
'logic error',
|
|
66
|
-
'threshold ordering',
|
|
67
|
-
'clamped',
|
|
68
|
-
'unclamped',
|
|
69
|
-
'inconsistent risk grading',
|
|
70
|
-
'division by zero',
|
|
71
|
-
'unbounded output',
|
|
72
|
-
'unbounded',
|
|
73
|
-
'returns nan',
|
|
74
|
-
'returns infinity',
|
|
75
|
-
'infinite loop',
|
|
76
|
-
'not deterministic',
|
|
77
|
-
'nondeterministic',
|
|
78
|
-
'correctness is questionable',
|
|
79
|
-
'correctness concern',
|
|
80
|
-
'fails safety',
|
|
81
|
-
'safety concern',
|
|
82
|
-
];
|
|
83
|
-
/**
|
|
84
|
-
* Classify a rejection reason string. Case-insensitive substring match
|
|
85
|
-
* against pattern lists, evaluated in order: schema_extra_field first
|
|
86
|
-
* (most common), then shape_check (local pre-validator), then
|
|
87
|
-
* parse_error, then judge_correctness, then `other`.
|
|
88
|
-
*
|
|
89
|
-
* Order matters: "violates the declared output schema by returning an
|
|
90
|
-
* additional field due to a logic error" matches BOTH schema_extra_field
|
|
91
|
-
* and judge_correctness; the former wins because it is the more specific
|
|
92
|
-
* and more actionable signal.
|
|
93
|
-
*/
|
|
94
|
-
export function classifyForgeRejection(errorReason) {
|
|
95
|
-
if (!errorReason)
|
|
96
|
-
return 'other';
|
|
97
|
-
const lower = errorReason.toLowerCase();
|
|
98
|
-
for (const p of SCHEMA_EXTRA_FIELD_PATTERNS) {
|
|
99
|
-
if (lower.includes(p))
|
|
100
|
-
return 'schema_extra_field';
|
|
101
|
-
}
|
|
102
|
-
for (const rx of SCHEMA_EXTRA_FIELD_REGEXES) {
|
|
103
|
-
if (rx.test(lower))
|
|
104
|
-
return 'schema_extra_field';
|
|
105
|
-
}
|
|
106
|
-
for (const p of SHAPE_CHECK_PATTERNS) {
|
|
107
|
-
if (lower.includes(p))
|
|
108
|
-
return 'shape_check';
|
|
109
|
-
}
|
|
110
|
-
for (const p of PARSE_ERROR_PATTERNS) {
|
|
111
|
-
if (lower.includes(p))
|
|
112
|
-
return 'parse_error';
|
|
113
|
-
}
|
|
114
|
-
for (const p of JUDGE_CORRECTNESS_PATTERNS) {
|
|
115
|
-
if (lower.includes(p))
|
|
116
|
-
return 'judge_correctness';
|
|
117
|
-
}
|
|
118
|
-
return 'other';
|
|
119
|
-
}
|
|
120
|
-
//# sourceMappingURL=forge-rejection-classifier.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"forge-rejection-classifier.js","sourceRoot":"","sources":["../../../src/runtime/forge-rejection-classifier.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAoBH,MAAM,2BAA2B,GAAG;IAClC,uBAAuB;IACvB,qBAAqB;IACrB,sBAAsB;IACtB,aAAa;IACb,cAAc;IACd,gBAAgB;IAChB,kBAAkB;IAClB,wBAAwB;IACxB,kBAAkB;IAClB,qBAAqB;IACrB,aAAa;IACb,yBAAyB;IACzB,iBAAiB;IACjB,uBAAuB;IACvB,eAAe;IACf,oBAAoB;IACpB,yBAAyB;CAC1B,CAAC;AAEF;;;;;GAKG;AACH,MAAM,0BAA0B,GAAa;IAC3C,yBAAyB;IACzB,8BAA8B;IAC9B,4BAA4B;IAC5B,iCAAiC;CAClC,CAAC;AAEF,MAAM,oBAAoB,GAAG;IAC3B,oBAAoB;IACpB,wCAAwC;IACxC,yCAAyC;IACzC,2BAA2B;IAC3B,0BAA0B;IAC1B,2BAA2B;IAC3B,oCAAoC;CACrC,CAAC;AAEF,MAAM,oBAAoB,GAAG;IAC3B,8BAA8B;IAC9B,gCAAgC;IAChC,mCAAmC;CACpC,CAAC;AAEF,MAAM,0BAA0B,GAAG;IACjC,aAAa;IACb,oBAAoB;IACpB,SAAS;IACT,WAAW;IACX,2BAA2B;IAC3B,kBAAkB;IAClB,kBAAkB;IAClB,WAAW;IACX,aAAa;IACb,kBAAkB;IAClB,eAAe;IACf,mBAAmB;IACnB,kBAAkB;IAClB,6BAA6B;IAC7B,qBAAqB;IACrB,cAAc;IACd,gBAAgB;CACjB,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAM,UAAU,sBAAsB,CAAC,WAA+B;IACpE,IAAI,CAAC,WAAW;QAAE,OAAO,OAAO,CAAC;IACjC,MAAM,KAAK,GAAG,WAAW,CAAC,WAAW,EAAE,CAAC;IAExC,KAAK,MAAM,CAAC,IAAI,2BAA2B,EAAE,CAAC;QAC5C,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;YAAE,OAAO,oBAAoB,CAAC;IACrD,CAAC;IACD,KAAK,MAAM,EAAE,IAAI,0BAA0B,EAAE,CAAC;QAC5C,IAAI,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,oBAAoB,CAAC;IAClD,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,oBAAoB,EAAE,CAAC;QACrC,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;YAAE,OAAO,aAAa,CAAC;IAC9C,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,oBAAoB,EAAE,CAAC;QACrC,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;YAAE,OAAO,aAAa,CAAC;IAC9C,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,0BAA0B,EAAE,CAAC;QAC3C,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;YAAE,OAAO,mBAAmB,CAAC;IACpD,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
|