@shapeshift-labs/frontier-swarm-codex 0.5.117 → 0.5.118
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/README.md +59 -3
- package/dist/apply.js +1 -1
- package/dist/apply.js.map +1 -1
- package/dist/calibration-feedback.d.ts.map +1 -1
- package/dist/calibration-feedback.js +57 -2
- package/dist/calibration-feedback.js.map +1 -1
- package/dist/cleanup.js +1 -0
- package/dist/cleanup.js.map +1 -1
- package/dist/cli-args.d.ts +72 -0
- package/dist/cli-args.d.ts.map +1 -0
- package/dist/cli-args.js +296 -0
- package/dist/cli-args.js.map +1 -0
- package/dist/cli-help.d.ts.map +1 -1
- package/dist/cli-help.js +14 -0
- package/dist/cli-help.js.map +1 -1
- package/dist/cli.js +58 -183
- package/dist/cli.js.map +1 -1
- package/dist/codex-adaptive-feedback.d.ts.map +1 -1
- package/dist/codex-adaptive-feedback.js +98 -3
- package/dist/codex-adaptive-feedback.js.map +1 -1
- package/dist/codex-executor.d.ts.map +1 -1
- package/dist/codex-executor.js +30 -3
- package/dist/codex-executor.js.map +1 -1
- package/dist/codex-prompt.d.ts.map +1 -1
- package/dist/codex-prompt.js +58 -0
- package/dist/codex-prompt.js.map +1 -1
- package/dist/codex-run-metadata.d.ts +34 -0
- package/dist/codex-run-metadata.d.ts.map +1 -0
- package/dist/codex-run-metadata.js +29 -0
- package/dist/codex-run-metadata.js.map +1 -0
- package/dist/codex-run-swarm.d.ts +4 -0
- package/dist/codex-run-swarm.d.ts.map +1 -0
- package/dist/codex-run-swarm.js +69 -0
- package/dist/codex-run-swarm.js.map +1 -0
- package/dist/codex-run.d.ts +3 -3
- package/dist/codex-run.d.ts.map +1 -1
- package/dist/codex-run.js +146 -133
- package/dist/codex-run.js.map +1 -1
- package/dist/codex-tournament-strategy.d.ts +10 -0
- package/dist/codex-tournament-strategy.d.ts.map +1 -1
- package/dist/codex-tournament-strategy.js +39 -0
- package/dist/codex-tournament-strategy.js.map +1 -1
- package/dist/codex-workspace-change-paths.d.ts +20 -0
- package/dist/codex-workspace-change-paths.d.ts.map +1 -0
- package/dist/codex-workspace-change-paths.js +215 -0
- package/dist/codex-workspace-change-paths.js.map +1 -0
- package/dist/codex-workspace-changes.d.ts +12 -12
- package/dist/codex-workspace-changes.d.ts.map +1 -1
- package/dist/codex-workspace-changes.js +19 -122
- package/dist/codex-workspace-changes.js.map +1 -1
- package/dist/codex-workspace-restore.d.ts +15 -0
- package/dist/codex-workspace-restore.d.ts.map +1 -0
- package/dist/codex-workspace-restore.js +66 -0
- package/dist/codex-workspace-restore.js.map +1 -0
- package/dist/codex-workspace-write-fence.d.ts +21 -0
- package/dist/codex-workspace-write-fence.d.ts.map +1 -0
- package/dist/codex-workspace-write-fence.js +155 -0
- package/dist/codex-workspace-write-fence.js.map +1 -0
- package/dist/codex-workspace.d.ts +5 -1
- package/dist/codex-workspace.d.ts.map +1 -1
- package/dist/codex-workspace.js +46 -2
- package/dist/codex-workspace.js.map +1 -1
- package/dist/collect-artifact-store.d.ts +14 -0
- package/dist/collect-artifact-store.d.ts.map +1 -0
- package/dist/collect-artifact-store.js +207 -0
- package/dist/collect-artifact-store.js.map +1 -0
- package/dist/collect-bundle-reasons.d.ts +18 -0
- package/dist/collect-bundle-reasons.d.ts.map +1 -0
- package/dist/collect-bundle-reasons.js +222 -0
- package/dist/collect-bundle-reasons.js.map +1 -0
- package/dist/collect-bundle-staleness.d.ts +10 -0
- package/dist/collect-bundle-staleness.d.ts.map +1 -0
- package/dist/collect-bundle-staleness.js +98 -0
- package/dist/collect-bundle-staleness.js.map +1 -0
- package/dist/collect-bundles.d.ts +8 -10
- package/dist/collect-bundles.d.ts.map +1 -1
- package/dist/collect-bundles.js +28 -115
- package/dist/collect-bundles.js.map +1 -1
- package/dist/collect-dashboard-quality.d.ts +5 -0
- package/dist/collect-dashboard-quality.d.ts.map +1 -0
- package/dist/collect-dashboard-quality.js +256 -0
- package/dist/collect-dashboard-quality.js.map +1 -0
- package/dist/collect-dashboard.d.ts +4 -3
- package/dist/collect-dashboard.d.ts.map +1 -1
- package/dist/collect-dashboard.js +37 -3
- package/dist/collect-dashboard.js.map +1 -1
- package/dist/collect-evidence.d.ts.map +1 -1
- package/dist/collect-evidence.js +13 -2
- package/dist/collect-evidence.js.map +1 -1
- package/dist/collect-finalize.d.ts +15 -0
- package/dist/collect-finalize.d.ts.map +1 -0
- package/dist/collect-finalize.js +75 -0
- package/dist/collect-finalize.js.map +1 -0
- package/dist/collect-landed.d.ts +7 -0
- package/dist/collect-landed.d.ts.map +1 -0
- package/dist/collect-landed.js +171 -0
- package/dist/collect-landed.js.map +1 -0
- package/dist/collect-noise.d.ts +6 -0
- package/dist/collect-noise.d.ts.map +1 -0
- package/dist/collect-noise.js +131 -0
- package/dist/collect-noise.js.map +1 -0
- package/dist/collect-overlaps.d.ts +3 -0
- package/dist/collect-overlaps.d.ts.map +1 -0
- package/dist/collect-overlaps.js +8 -0
- package/dist/collect-overlaps.js.map +1 -0
- package/dist/collect-pids.d.ts +4 -0
- package/dist/collect-pids.d.ts.map +1 -0
- package/dist/collect-pids.js +33 -0
- package/dist/collect-pids.js.map +1 -0
- package/dist/collect-setup.d.ts +4 -0
- package/dist/collect-setup.d.ts.map +1 -0
- package/dist/collect-setup.js +20 -0
- package/dist/collect-setup.js.map +1 -0
- package/dist/collect-terminal-state.d.ts +14 -0
- package/dist/collect-terminal-state.d.ts.map +1 -0
- package/dist/collect-terminal-state.js +113 -0
- package/dist/collect-terminal-state.js.map +1 -0
- package/dist/collect-workspace-only.d.ts +10 -0
- package/dist/collect-workspace-only.d.ts.map +1 -0
- package/dist/collect-workspace-only.js +289 -0
- package/dist/collect-workspace-only.js.map +1 -0
- package/dist/collect-workspace-proof.d.ts +3 -0
- package/dist/collect-workspace-proof.d.ts.map +1 -0
- package/dist/collect-workspace-proof.js +24 -0
- package/dist/collect-workspace-proof.js.map +1 -0
- package/dist/collect-workspace-recovery.d.ts +22 -0
- package/dist/collect-workspace-recovery.d.ts.map +1 -0
- package/dist/collect-workspace-recovery.js +94 -0
- package/dist/collect-workspace-recovery.js.map +1 -0
- package/dist/collect.d.ts +1 -2
- package/dist/collect.d.ts.map +1 -1
- package/dist/collect.js +125 -116
- package/dist/collect.js.map +1 -1
- package/dist/common.d.ts +5 -0
- package/dist/common.d.ts.map +1 -1
- package/dist/common.js +54 -1
- package/dist/common.js.map +1 -1
- package/dist/constants.d.ts +6 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +6 -0
- package/dist/constants.js.map +1 -1
- package/dist/context-budget.d.ts.map +1 -1
- package/dist/context-budget.js +49 -6
- package/dist/context-budget.js.map +1 -1
- package/dist/continuation-adaptive-routing.d.ts +7 -0
- package/dist/continuation-adaptive-routing.d.ts.map +1 -0
- package/dist/continuation-adaptive-routing.js +129 -0
- package/dist/continuation-adaptive-routing.js.map +1 -0
- package/dist/continuation-child-backlogs.d.ts +11 -0
- package/dist/continuation-child-backlogs.d.ts.map +1 -0
- package/dist/continuation-child-backlogs.js +48 -0
- package/dist/continuation-child-backlogs.js.map +1 -0
- package/dist/continuation-feedback.d.ts +41 -0
- package/dist/continuation-feedback.d.ts.map +1 -0
- package/dist/continuation-feedback.js +294 -0
- package/dist/continuation-feedback.js.map +1 -0
- package/dist/continuation-human-actions.d.ts +15 -0
- package/dist/continuation-human-actions.d.ts.map +1 -0
- package/dist/continuation-human-actions.js +23 -0
- package/dist/continuation-human-actions.js.map +1 -0
- package/dist/continuation-job-routing-summary.d.ts +4 -0
- package/dist/continuation-job-routing-summary.d.ts.map +1 -0
- package/dist/continuation-job-routing-summary.js +47 -0
- package/dist/continuation-job-routing-summary.js.map +1 -0
- package/dist/continuation-task-source.d.ts +10 -0
- package/dist/continuation-task-source.d.ts.map +1 -0
- package/dist/continuation-task-source.js +11 -0
- package/dist/continuation-task-source.js.map +1 -0
- package/dist/continuation-terminal-outcomes.d.ts +27 -0
- package/dist/continuation-terminal-outcomes.d.ts.map +1 -0
- package/dist/continuation-terminal-outcomes.js +215 -0
- package/dist/continuation-terminal-outcomes.js.map +1 -0
- package/dist/continuation.d.ts +3 -0
- package/dist/continuation.d.ts.map +1 -0
- package/dist/continuation.js +266 -0
- package/dist/continuation.js.map +1 -0
- package/dist/dashboard-ui-constants.d.ts +6 -0
- package/dist/dashboard-ui-constants.d.ts.map +1 -0
- package/dist/dashboard-ui-constants.js +6 -0
- package/dist/dashboard-ui-constants.js.map +1 -0
- package/dist/dashboard-ui-health.d.ts +24 -0
- package/dist/dashboard-ui-health.d.ts.map +1 -0
- package/dist/dashboard-ui-health.js +175 -0
- package/dist/dashboard-ui-health.js.map +1 -0
- package/dist/dashboard-ui-human-actions.d.ts +3 -0
- package/dist/dashboard-ui-human-actions.d.ts.map +1 -0
- package/dist/dashboard-ui-human-actions.js +218 -0
- package/dist/dashboard-ui-human-actions.js.map +1 -0
- package/dist/dashboard-ui-jobs.d.ts +7 -0
- package/dist/dashboard-ui-jobs.d.ts.map +1 -0
- package/dist/dashboard-ui-jobs.js +232 -0
- package/dist/dashboard-ui-jobs.js.map +1 -0
- package/dist/dashboard-ui-lanes.d.ts +3 -0
- package/dist/dashboard-ui-lanes.d.ts.map +1 -0
- package/dist/dashboard-ui-lanes.js +17 -0
- package/dist/dashboard-ui-lanes.js.map +1 -0
- package/dist/dashboard-ui-metric-utils.d.ts +13 -0
- package/dist/dashboard-ui-metric-utils.d.ts.map +1 -0
- package/dist/dashboard-ui-metric-utils.js +52 -0
- package/dist/dashboard-ui-metric-utils.js.map +1 -0
- package/dist/dashboard-ui-quality.d.ts +4 -0
- package/dist/dashboard-ui-quality.d.ts.map +1 -0
- package/dist/dashboard-ui-quality.js +106 -0
- package/dist/dashboard-ui-quality.js.map +1 -0
- package/dist/dashboard-ui-semantic.d.ts +6 -0
- package/dist/dashboard-ui-semantic.d.ts.map +1 -0
- package/dist/dashboard-ui-semantic.js +84 -0
- package/dist/dashboard-ui-semantic.js.map +1 -0
- package/dist/dashboard-ui-sources.d.ts +9 -0
- package/dist/dashboard-ui-sources.d.ts.map +1 -0
- package/dist/dashboard-ui-sources.js +39 -0
- package/dist/dashboard-ui-sources.js.map +1 -0
- package/dist/dashboard-ui-steering.d.ts +4 -0
- package/dist/dashboard-ui-steering.d.ts.map +1 -0
- package/dist/dashboard-ui-steering.js +41 -0
- package/dist/dashboard-ui-steering.js.map +1 -0
- package/dist/dashboard-ui-summary.d.ts +6 -0
- package/dist/dashboard-ui-summary.d.ts.map +1 -0
- package/dist/dashboard-ui-summary.js +64 -0
- package/dist/dashboard-ui-summary.js.map +1 -0
- package/dist/dashboard-ui-time-series.d.ts +6 -0
- package/dist/dashboard-ui-time-series.d.ts.map +1 -0
- package/dist/dashboard-ui-time-series.js +191 -0
- package/dist/dashboard-ui-time-series.js.map +1 -0
- package/dist/dashboard-ui-types.d.ts +21 -0
- package/dist/dashboard-ui-types.d.ts.map +1 -0
- package/dist/dashboard-ui-types.js +2 -0
- package/dist/dashboard-ui-types.js.map +1 -0
- package/dist/dashboard-ui-values.d.ts +13 -0
- package/dist/dashboard-ui-values.d.ts.map +1 -0
- package/dist/dashboard-ui-values.js +57 -0
- package/dist/dashboard-ui-values.js.map +1 -0
- package/dist/dashboard-ui-workspace.d.ts +7 -0
- package/dist/dashboard-ui-workspace.d.ts.map +1 -0
- package/dist/dashboard-ui-workspace.js +131 -0
- package/dist/dashboard-ui-workspace.js.map +1 -0
- package/dist/dashboard-ui.d.ts +4 -0
- package/dist/dashboard-ui.d.ts.map +1 -0
- package/dist/dashboard-ui.js +139 -0
- package/dist/dashboard-ui.js.map +1 -0
- package/dist/dashboard.js +59 -3
- package/dist/dashboard.js.map +1 -1
- package/dist/human-actions.d.ts +46 -0
- package/dist/human-actions.d.ts.map +1 -0
- package/dist/human-actions.js +251 -0
- package/dist/human-actions.js.map +1 -0
- package/dist/index.d.ts +6 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -92
- package/dist/index.js.map +1 -1
- package/dist/model-pricing.d.ts +49 -0
- package/dist/model-pricing.d.ts.map +1 -0
- package/dist/model-pricing.js +159 -0
- package/dist/model-pricing.js.map +1 -0
- package/dist/patch-score-semantic.d.ts.map +1 -1
- package/dist/patch-score-semantic.js +34 -30
- package/dist/patch-score-semantic.js.map +1 -1
- package/dist/plan.d.ts +6 -0
- package/dist/plan.d.ts.map +1 -0
- package/dist/plan.js +191 -0
- package/dist/plan.js.map +1 -0
- package/dist/query-io.d.ts +8 -0
- package/dist/query-io.d.ts.map +1 -0
- package/dist/query-io.js +46 -0
- package/dist/query-io.js.map +1 -0
- package/dist/query-landed.d.ts +20 -0
- package/dist/query-landed.d.ts.map +1 -0
- package/dist/query-landed.js +64 -0
- package/dist/query-landed.js.map +1 -0
- package/dist/query-matchers.d.ts +6 -0
- package/dist/query-matchers.d.ts.map +1 -0
- package/dist/query-matchers.js +160 -0
- package/dist/query-matchers.js.map +1 -0
- package/dist/query-signal-types.d.ts +32 -0
- package/dist/query-signal-types.d.ts.map +1 -0
- package/dist/query-signal-types.js +2 -0
- package/dist/query-signal-types.js.map +1 -0
- package/dist/query-signals.d.ts +12 -0
- package/dist/query-signals.d.ts.map +1 -0
- package/dist/query-signals.js +207 -0
- package/dist/query-signals.js.map +1 -0
- package/dist/query-status.d.ts +10 -0
- package/dist/query-status.d.ts.map +1 -0
- package/dist/query-status.js +115 -0
- package/dist/query-status.js.map +1 -0
- package/dist/query-summaries.d.ts +283 -0
- package/dist/query-summaries.d.ts.map +1 -0
- package/dist/query-summaries.js +195 -0
- package/dist/query-summaries.js.map +1 -0
- package/dist/query-types.d.ts +45 -0
- package/dist/query-types.d.ts.map +1 -0
- package/dist/query-types.js +2 -0
- package/dist/query-types.js.map +1 -0
- package/dist/query-values.d.ts +15 -0
- package/dist/query-values.d.ts.map +1 -0
- package/dist/query-values.js +73 -0
- package/dist/query-values.js.map +1 -0
- package/dist/query.d.ts +344 -41
- package/dist/query.d.ts.map +1 -1
- package/dist/query.js +38 -157
- package/dist/query.js.map +1 -1
- package/dist/score-calibration.d.ts.map +1 -1
- package/dist/score-calibration.js +52 -3
- package/dist/score-calibration.js.map +1 -1
- package/dist/score.js +1 -1
- package/dist/score.js.map +1 -1
- package/dist/semantic-edit-admission.d.ts +3 -0
- package/dist/semantic-edit-admission.d.ts.map +1 -1
- package/dist/semantic-edit-admission.js +90 -11
- package/dist/semantic-edit-admission.js.map +1 -1
- package/dist/semantic-edit-clean-eligibility.d.ts.map +1 -1
- package/dist/semantic-edit-clean-eligibility.js +22 -4
- package/dist/semantic-edit-clean-eligibility.js.map +1 -1
- package/dist/semantic-edit-script.d.ts.map +1 -1
- package/dist/semantic-edit-script.js +26 -5
- package/dist/semantic-edit-script.js.map +1 -1
- package/dist/semantic-import-layers.d.ts +1 -1
- package/dist/semantic-import-layers.d.ts.map +1 -1
- package/dist/semantic-import-layers.js +22 -6
- package/dist/semantic-import-layers.js.map +1 -1
- package/dist/semantic-import-lineage-signals.d.ts +12 -0
- package/dist/semantic-import-lineage-signals.d.ts.map +1 -0
- package/dist/semantic-import-lineage-signals.js +126 -0
- package/dist/semantic-import-lineage-signals.js.map +1 -0
- package/dist/semantic-import-lineage.d.ts.map +1 -1
- package/dist/semantic-import-lineage.js +120 -18
- package/dist/semantic-import-lineage.js.map +1 -1
- package/dist/semantic-import-proof.d.ts.map +1 -1
- package/dist/semantic-import-proof.js +16 -0
- package/dist/semantic-import-proof.js.map +1 -1
- package/dist/semantic-import-quality.d.ts.map +1 -1
- package/dist/semantic-import-quality.js +8 -0
- package/dist/semantic-import-quality.js.map +1 -1
- package/dist/semantic-import-readiness.d.ts +15 -0
- package/dist/semantic-import-readiness.d.ts.map +1 -0
- package/dist/semantic-import-readiness.js +214 -0
- package/dist/semantic-import-readiness.js.map +1 -0
- package/dist/semantic-import-sidecar.d.ts.map +1 -1
- package/dist/semantic-import-sidecar.js +6 -37
- package/dist/semantic-import-sidecar.js.map +1 -1
- package/dist/semantic-import.d.ts +4 -2
- package/dist/semantic-import.d.ts.map +1 -1
- package/dist/semantic-import.js +27 -10
- package/dist/semantic-import.js.map +1 -1
- package/dist/tournament-bandit-view.d.ts +16 -13
- package/dist/tournament-bandit-view.d.ts.map +1 -1
- package/dist/tournament-bandit-view.js +23 -3
- package/dist/tournament-bandit-view.js.map +1 -1
- package/dist/tournament-query.d.ts +35 -39
- package/dist/tournament-query.d.ts.map +1 -1
- package/dist/tournament-query.js +32 -6
- package/dist/tournament-query.js.map +1 -1
- package/dist/types-collection-quality.d.ts +112 -0
- package/dist/types-collection-quality.d.ts.map +1 -0
- package/dist/types-collection-quality.js +2 -0
- package/dist/types-collection-quality.js.map +1 -0
- package/dist/types-collection-score.d.ts +112 -0
- package/dist/types-collection-score.d.ts.map +1 -0
- package/dist/types-collection-score.js +2 -0
- package/dist/types-collection-score.js.map +1 -0
- package/dist/types-collection.d.ts +107 -112
- package/dist/types-collection.d.ts.map +1 -1
- package/dist/types-continuation.d.ts +151 -0
- package/dist/types-continuation.d.ts.map +1 -0
- package/dist/types-continuation.js +2 -0
- package/dist/types-continuation.js.map +1 -0
- package/dist/types-dashboard-metrics.d.ts +241 -0
- package/dist/types-dashboard-metrics.d.ts.map +1 -0
- package/dist/types-dashboard-metrics.js +2 -0
- package/dist/types-dashboard-metrics.js.map +1 -0
- package/dist/types-dashboard.d.ts +277 -0
- package/dist/types-dashboard.d.ts.map +1 -0
- package/dist/types-dashboard.js +2 -0
- package/dist/types-dashboard.js.map +1 -0
- package/dist/types-evidence.d.ts +3 -0
- package/dist/types-evidence.d.ts.map +1 -1
- package/dist/types-run.d.ts +54 -1
- package/dist/types-run.d.ts.map +1 -1
- package/dist/types-score-calibration.d.ts +15 -0
- package/dist/types-score-calibration.d.ts.map +1 -1
- package/dist/types-semantic.d.ts +21 -12
- package/dist/types-semantic.d.ts.map +1 -1
- package/dist/types-workspace.d.ts +31 -1
- package/dist/types-workspace.d.ts.map +1 -1
- package/dist/types.d.ts +2 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,294 @@
|
|
|
1
|
+
import { readFileSync } from 'node:fs';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import { createSwarmModelRoutingFeedback } from '@shapeshift-labs/frontier-swarm';
|
|
4
|
+
import { isObject, uniqueStrings } from './common.js';
|
|
5
|
+
import { estimateCodexModelCost } from './model-pricing.js';
|
|
6
|
+
export function createContinuationFeedback(input) {
|
|
7
|
+
const collection = input.collection;
|
|
8
|
+
if (!collection)
|
|
9
|
+
return [];
|
|
10
|
+
const plan = readContinuationPlanSync(collection.runDir);
|
|
11
|
+
const jobsById = new Map((plan?.jobs ?? []).map((job) => [job.id, job]));
|
|
12
|
+
const entries = Object.values(collection.buckets).flat();
|
|
13
|
+
const tournamentSummary = createContinuationTournamentSummary(collection);
|
|
14
|
+
return entries.map((entry) => {
|
|
15
|
+
const { bundle } = entry;
|
|
16
|
+
const job = jobsById.get(bundle.jobId);
|
|
17
|
+
const compute = job?.compute;
|
|
18
|
+
const task = job?.task;
|
|
19
|
+
const computeId = compute?.id
|
|
20
|
+
?? task?.compute
|
|
21
|
+
?? readNestedString(bundle.metadata, ['compute', 'id'])
|
|
22
|
+
?? readNestedString(bundle.metadata, ['job', 'compute', 'id'])
|
|
23
|
+
?? readNestedString(bundle.metadata, ['resourceAllocation', 'env', 'FRONTIER_SWARM_COMPUTE_ID'])
|
|
24
|
+
?? readNestedString(bundle.metadata, ['env', 'FRONTIER_SWARM_COMPUTE_ID']);
|
|
25
|
+
const computeKind = compute?.kind
|
|
26
|
+
?? readNestedString(bundle.metadata, ['compute', 'kind'])
|
|
27
|
+
?? readNestedString(bundle.metadata, ['job', 'compute', 'kind'])
|
|
28
|
+
?? computeKindFromComputeId(computeId);
|
|
29
|
+
const model = compute?.model
|
|
30
|
+
?? readNestedString(bundle.metadata, ['compute', 'model'])
|
|
31
|
+
?? readNestedString(bundle.metadata, ['job', 'compute', 'model'])
|
|
32
|
+
?? readNestedString(bundle.metadata, ['tournamentStrategy', 'model']);
|
|
33
|
+
const modelTier = readNestedString(compute?.metadata, ['modelTier'])
|
|
34
|
+
?? readNestedString(compute?.metadata, ['tier'])
|
|
35
|
+
?? readNestedString(bundle.metadata, ['modelTier'])
|
|
36
|
+
?? readNestedString(bundle.metadata, ['compute', 'modelTier'])
|
|
37
|
+
?? readNestedString(bundle.metadata, ['job', 'compute', 'modelTier'])
|
|
38
|
+
?? readNestedString(bundle.metadata, ['tournamentStrategy', 'modelTier'])
|
|
39
|
+
?? modelTierFromComputeId(computeId);
|
|
40
|
+
const costEstimate = createRoutingCostEstimate(bundle, model);
|
|
41
|
+
const workKind = task?.workKind ?? firstNestedString(bundle.metadata, [
|
|
42
|
+
['routingKey', 'workKind'],
|
|
43
|
+
['routing', 'workKind'],
|
|
44
|
+
['task', 'workKind'],
|
|
45
|
+
['source', 'workKind'],
|
|
46
|
+
['workKind']
|
|
47
|
+
]);
|
|
48
|
+
const taskKind = workKind ?? firstNestedString(bundle.metadata, [
|
|
49
|
+
['routingKey', 'taskKind'],
|
|
50
|
+
['routing', 'taskKind'],
|
|
51
|
+
['task', 'taskKind'],
|
|
52
|
+
['taskKind']
|
|
53
|
+
]) ?? 'agent-task';
|
|
54
|
+
const lane = bundle.lane ?? job?.lane ?? task?.lane ?? firstNestedString(bundle.metadata, [
|
|
55
|
+
['routingKey', 'lane'],
|
|
56
|
+
['routing', 'lane'],
|
|
57
|
+
['task', 'lane'],
|
|
58
|
+
['resourceAllocation', 'env', 'FRONTIER_SWARM_LANE'],
|
|
59
|
+
['env', 'FRONTIER_SWARM_LANE'],
|
|
60
|
+
['lane']
|
|
61
|
+
]);
|
|
62
|
+
return createSwarmModelRoutingFeedback({
|
|
63
|
+
id: `swarm-model-routing-feedback:${bundle.jobId}:${bundle.generatedAt}`,
|
|
64
|
+
scope: input.packageName ? 'package' : 'repository',
|
|
65
|
+
repository: input.repository,
|
|
66
|
+
package: input.packageName,
|
|
67
|
+
runId: bundle.runId,
|
|
68
|
+
planId: bundle.planId,
|
|
69
|
+
jobId: bundle.jobId,
|
|
70
|
+
taskId: bundle.taskId ?? job?.taskId,
|
|
71
|
+
taskKind,
|
|
72
|
+
workKind,
|
|
73
|
+
lane,
|
|
74
|
+
layer: job?.layer,
|
|
75
|
+
computeId,
|
|
76
|
+
computeKind,
|
|
77
|
+
model,
|
|
78
|
+
modelTier,
|
|
79
|
+
reasoningEffort: compute?.reasoningEffort,
|
|
80
|
+
serviceTier: compute?.serviceTier,
|
|
81
|
+
resultStatus: bundle.status,
|
|
82
|
+
mergeReadiness: bundle.mergeReadiness,
|
|
83
|
+
mergeDisposition: bundle.disposition,
|
|
84
|
+
riskLevel: bundle.riskLevel,
|
|
85
|
+
evidenceQuality: evidenceQualityFromBundle(bundle, entry.bucket, costEstimate),
|
|
86
|
+
selected: bundle.autoMergeable,
|
|
87
|
+
tags: uniqueStrings(['continuation-feedback', ...routingCostTags(costEstimate)]),
|
|
88
|
+
generatedAt: bundle.generatedAt,
|
|
89
|
+
metadata: {
|
|
90
|
+
bundleId: bundle.id,
|
|
91
|
+
autoMergeable: bundle.autoMergeable,
|
|
92
|
+
staleAgainstHead: bundle.staleAgainstHead,
|
|
93
|
+
reasons: bundle.reasons,
|
|
94
|
+
collection: {
|
|
95
|
+
bucket: entry.bucket,
|
|
96
|
+
mergePath: entry.mergePath,
|
|
97
|
+
outputDir: entry.outputDir,
|
|
98
|
+
outDir: collection.outDir,
|
|
99
|
+
runDir: collection.runDir,
|
|
100
|
+
generatedAt: collection.generatedAt,
|
|
101
|
+
summary: collection.summary
|
|
102
|
+
},
|
|
103
|
+
routingDimensions: {
|
|
104
|
+
taskKind,
|
|
105
|
+
...(workKind ? { workKind } : {}),
|
|
106
|
+
...(lane ? { lane } : {}),
|
|
107
|
+
...(computeId ? { computeId } : {}),
|
|
108
|
+
...(computeKind ? { computeKind } : {}),
|
|
109
|
+
...(modelTier ? { modelTier } : {})
|
|
110
|
+
},
|
|
111
|
+
costEstimate: routingCostMetadata(costEstimate),
|
|
112
|
+
...(tournamentSummary ? { tournamentSummary } : {}),
|
|
113
|
+
adaptiveRecommendations: laneRelevantAdaptiveRecommendations(collection.tournamentAdaptiveFeedback?.recommendations, lane)
|
|
114
|
+
}
|
|
115
|
+
});
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
export function createContinuationRoutingCostSummary(feedback) {
|
|
119
|
+
const estimates = feedback.map((entry) => isObject(entry.metadata) && isObject(entry.metadata.costEstimate) ? entry.metadata.costEstimate : {});
|
|
120
|
+
const costSignalEstimates = estimates.filter((entry) => numberValue(entry.billableInputTokens) > 0 || numberValue(entry.outputTokens) > 0);
|
|
121
|
+
return {
|
|
122
|
+
feedbackCount: feedback.length,
|
|
123
|
+
costSignalCount: costSignalEstimates.length,
|
|
124
|
+
pricedFeedbackCount: costSignalEstimates.filter((entry) => entry.priceKnown === true).length,
|
|
125
|
+
unknownPriceFeedbackCount: costSignalEstimates.filter((entry) => entry.priceKnown !== true).length,
|
|
126
|
+
inputOnlyFeedbackCount: costSignalEstimates.filter((entry) => entry.inputOnly === true).length,
|
|
127
|
+
estimatedInputFeedbackCount: costSignalEstimates.filter((entry) => entry.estimatedInput === true).length,
|
|
128
|
+
estimatedCostUsd: roundUsd(costSignalEstimates.reduce((sum, entry) => sum + numberValue(entry.estimatedCostUsd), 0)),
|
|
129
|
+
estimatedInputCostUsd: roundUsd(costSignalEstimates.reduce((sum, entry) => sum + numberValue(entry.estimatedInputCostUsd), 0)),
|
|
130
|
+
estimatedOutputCostUsd: roundUsd(costSignalEstimates.reduce((sum, entry) => sum + numberValue(entry.estimatedOutputCostUsd), 0)),
|
|
131
|
+
estimatedCostMicroUsd: costSignalEstimates.reduce((sum, entry) => sum + numberValue(entry.estimatedCostMicroUsd), 0),
|
|
132
|
+
billableInputTokens: costSignalEstimates.reduce((sum, entry) => sum + numberValue(entry.billableInputTokens), 0),
|
|
133
|
+
cachedInputTokens: costSignalEstimates.reduce((sum, entry) => sum + numberValue(entry.cachedInputTokens), 0),
|
|
134
|
+
uncachedInputTokens: costSignalEstimates.reduce((sum, entry) => sum + numberValue(entry.uncachedInputTokens), 0),
|
|
135
|
+
outputTokens: costSignalEstimates.reduce((sum, entry) => sum + numberValue(entry.outputTokens), 0)
|
|
136
|
+
};
|
|
137
|
+
}
|
|
138
|
+
export function createContinuationTournamentSummary(collection) {
|
|
139
|
+
if (!collection)
|
|
140
|
+
return undefined;
|
|
141
|
+
const tournament = collection.strategyTournament;
|
|
142
|
+
const feedback = collection.tournamentAdaptiveFeedback;
|
|
143
|
+
return {
|
|
144
|
+
tournamentId: tournament.id,
|
|
145
|
+
historyId: collection.strategyHistory.id,
|
|
146
|
+
feedbackId: feedback.id,
|
|
147
|
+
sampleConfidence: tournament.summary.sampleConfidence,
|
|
148
|
+
decisionGrade: tournament.summary.decisionGrade,
|
|
149
|
+
topStrategyId: tournament.summary.topStrategyId,
|
|
150
|
+
topScore: tournament.summary.topScore,
|
|
151
|
+
outcomeCounts: tournament.summary.outcomeCounts,
|
|
152
|
+
adaptiveFeedback: {
|
|
153
|
+
observationCount: feedback.summary.observationCount,
|
|
154
|
+
recommendationCount: feedback.summary.recommendationCount,
|
|
155
|
+
reduceSignals: feedback.summary.reduceSignals,
|
|
156
|
+
increaseSignals: feedback.summary.increaseSignals,
|
|
157
|
+
holdSignals: feedback.summary.holdSignals
|
|
158
|
+
}
|
|
159
|
+
};
|
|
160
|
+
}
|
|
161
|
+
function laneRelevantAdaptiveRecommendations(recommendations, lane) {
|
|
162
|
+
return (recommendations ?? [])
|
|
163
|
+
.filter((entry) => !entry.key || !lane || entry.key === lane || entry.target === 'max-ready-jobs')
|
|
164
|
+
.slice(0, 8)
|
|
165
|
+
.map((entry) => ({
|
|
166
|
+
action: entry.action,
|
|
167
|
+
target: entry.target,
|
|
168
|
+
...(entry.key ? { key: entry.key } : {}),
|
|
169
|
+
reason: entry.reason,
|
|
170
|
+
...(entry.score !== undefined ? { score: entry.score } : {})
|
|
171
|
+
}));
|
|
172
|
+
}
|
|
173
|
+
function readContinuationPlanSync(runDir) {
|
|
174
|
+
if (!runDir)
|
|
175
|
+
return undefined;
|
|
176
|
+
try {
|
|
177
|
+
return JSON.parse(readFileSync(path.join(runDir, 'swarm-plan.json'), 'utf8'));
|
|
178
|
+
}
|
|
179
|
+
catch {
|
|
180
|
+
return undefined;
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
function readNestedString(value, keys) {
|
|
184
|
+
let cursor = value;
|
|
185
|
+
for (const key of keys) {
|
|
186
|
+
if (!isObject(cursor))
|
|
187
|
+
return undefined;
|
|
188
|
+
cursor = cursor[key];
|
|
189
|
+
}
|
|
190
|
+
return typeof cursor === 'string' && cursor.length > 0 ? cursor : undefined;
|
|
191
|
+
}
|
|
192
|
+
function firstNestedString(value, paths) {
|
|
193
|
+
for (const entry of paths) {
|
|
194
|
+
const found = readNestedString(value, entry);
|
|
195
|
+
if (found)
|
|
196
|
+
return found;
|
|
197
|
+
}
|
|
198
|
+
return undefined;
|
|
199
|
+
}
|
|
200
|
+
function computeKindFromComputeId(computeId) {
|
|
201
|
+
if (!computeId)
|
|
202
|
+
return undefined;
|
|
203
|
+
const [kind] = computeId.split('.');
|
|
204
|
+
return kind && kind !== computeId ? kind : undefined;
|
|
205
|
+
}
|
|
206
|
+
function modelTierFromComputeId(computeId) {
|
|
207
|
+
if (!computeId)
|
|
208
|
+
return undefined;
|
|
209
|
+
const [, ...tierParts] = computeId.split('.');
|
|
210
|
+
return tierParts.length ? tierParts.join('.') : undefined;
|
|
211
|
+
}
|
|
212
|
+
function evidenceQualityFromBundle(bundle, collectionBucket, costEstimate) {
|
|
213
|
+
const passed = bundle.commandsFailed.length === 0;
|
|
214
|
+
const verified = bundle.autoMergeable && passed && bundle.evidencePaths.length > 0;
|
|
215
|
+
const failed = bundle.status === 'failed' || bundle.disposition === 'rejected' || bundle.disposition === 'stale-against-head';
|
|
216
|
+
const verifierKinds = uniqueStrings([
|
|
217
|
+
...bundle.commandsPassed.map((entry) => entry.name),
|
|
218
|
+
...bundle.commandsFailed.map((entry) => entry.name)
|
|
219
|
+
]);
|
|
220
|
+
return {
|
|
221
|
+
band: verified ? 'verified' : bundle.evidencePaths.length ? failed ? 'weak' : 'adequate' : 'none',
|
|
222
|
+
score: verified ? 0.9 : failed ? 0.1 : bundle.evidencePaths.length ? 0.6 : 0.2,
|
|
223
|
+
confidence: verified ? 'high' : failed ? 'medium' : 'low',
|
|
224
|
+
evidencePaths: bundle.evidencePaths,
|
|
225
|
+
verifierKinds,
|
|
226
|
+
missingEvidence: uniqueStrings([
|
|
227
|
+
...(bundle.evidencePaths.length ? [] : ['evidence-paths']),
|
|
228
|
+
...(bundle.commandsFailed.length ? ['passing-verification'] : [])
|
|
229
|
+
]),
|
|
230
|
+
deterministic: bundle.commandsPassed.length > 0 && passed,
|
|
231
|
+
humanReviewed: false,
|
|
232
|
+
metadata: {
|
|
233
|
+
...(collectionBucket ? { collectionBucket } : {}),
|
|
234
|
+
evidencePathCount: bundle.evidencePaths.length,
|
|
235
|
+
commandsPassed: bundle.commandsPassed.length,
|
|
236
|
+
commandsFailed: bundle.commandsFailed.length,
|
|
237
|
+
costEstimate: routingCostMetadata(costEstimate)
|
|
238
|
+
}
|
|
239
|
+
};
|
|
240
|
+
}
|
|
241
|
+
function createRoutingCostEstimate(bundle, model) {
|
|
242
|
+
const metadata = isObject(bundle.metadata) ? bundle.metadata : {};
|
|
243
|
+
const contextBudget = isObject(metadata.contextBudget) ? metadata.contextBudget : {};
|
|
244
|
+
const measured = isObject(contextBudget.measured) ? contextBudget.measured : {};
|
|
245
|
+
const usage = isObject(contextBudget.usage) ? contextBudget.usage : {};
|
|
246
|
+
return estimateCodexModelCost({
|
|
247
|
+
model: model ?? readNestedString(metadata, ['model']),
|
|
248
|
+
estimatedInputTokens: readNumber(measured.estimatedInputTokens),
|
|
249
|
+
actualInputTokens: readNumber(usage.inputTokens) ?? readNumber(measured.actualInputTokens),
|
|
250
|
+
cachedInputTokens: readNumber(usage.cachedInputTokens),
|
|
251
|
+
uncachedInputTokens: readNumber(usage.uncachedInputTokens),
|
|
252
|
+
outputTokens: readNumber(usage.outputTokens)
|
|
253
|
+
});
|
|
254
|
+
}
|
|
255
|
+
function routingCostMetadata(cost) {
|
|
256
|
+
return {
|
|
257
|
+
priceKnown: cost.priceKnown,
|
|
258
|
+
...(cost.pricingModel ? { pricingModel: cost.pricingModel } : {}),
|
|
259
|
+
...(cost.pricingMatchedModel ? { pricingMatchedModel: cost.pricingMatchedModel } : {}),
|
|
260
|
+
...(cost.pricingSource ? { pricingSource: cost.pricingSource } : {}),
|
|
261
|
+
...(cost.pricingUpdatedAt ? { pricingUpdatedAt: cost.pricingUpdatedAt } : {}),
|
|
262
|
+
estimatedCostUsd: cost.estimatedCostUsd,
|
|
263
|
+
estimatedInputCostUsd: cost.estimatedInputCostUsd,
|
|
264
|
+
estimatedCachedInputCostUsd: cost.estimatedCachedInputCostUsd,
|
|
265
|
+
estimatedUncachedInputCostUsd: cost.estimatedUncachedInputCostUsd,
|
|
266
|
+
estimatedOutputCostUsd: cost.estimatedOutputCostUsd,
|
|
267
|
+
estimatedCostMicroUsd: cost.estimatedCostMicroUsd,
|
|
268
|
+
billableInputTokens: cost.billableInputTokens,
|
|
269
|
+
cachedInputTokens: cost.cachedInputTokens,
|
|
270
|
+
uncachedInputTokens: cost.uncachedInputTokens,
|
|
271
|
+
outputTokens: cost.outputTokens,
|
|
272
|
+
inputOnly: cost.costEstimateInputOnly,
|
|
273
|
+
estimatedInput: cost.costEstimateEstimatedInput,
|
|
274
|
+
missingOutputTokens: cost.costEstimateMissingOutputTokens,
|
|
275
|
+
...(cost.unknownPricingReason ? { unknownPricingReason: cost.unknownPricingReason } : {})
|
|
276
|
+
};
|
|
277
|
+
}
|
|
278
|
+
function routingCostTags(cost) {
|
|
279
|
+
return [
|
|
280
|
+
cost.priceKnown ? 'cost-known' : 'cost-unknown',
|
|
281
|
+
...(cost.costEstimateInputOnly ? ['cost-input-only'] : []),
|
|
282
|
+
...(cost.costEstimateEstimatedInput ? ['cost-estimated-input'] : [])
|
|
283
|
+
];
|
|
284
|
+
}
|
|
285
|
+
function readNumber(value) {
|
|
286
|
+
return typeof value === 'number' && Number.isFinite(value) && value >= 0 ? value : undefined;
|
|
287
|
+
}
|
|
288
|
+
function numberValue(value) {
|
|
289
|
+
return typeof value === 'number' && Number.isFinite(value) && value > 0 ? value : 0;
|
|
290
|
+
}
|
|
291
|
+
function roundUsd(value) {
|
|
292
|
+
return Math.round(value * 1_000_000_000) / 1_000_000_000;
|
|
293
|
+
}
|
|
294
|
+
//# sourceMappingURL=continuation-feedback.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"continuation-feedback.js","sourceRoot":"","sources":["../src/continuation-feedback.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { type FrontierCodexResolvedHumanActions } from './human-actions.js';
|
|
2
|
+
import type { FrontierCodexCollectResult } from './types-collection.js';
|
|
3
|
+
import type { FrontierCodexContinuationInput } from './types-continuation.js';
|
|
4
|
+
export interface FrontierCodexContinuationHumanActionState extends FrontierCodexResolvedHumanActions {
|
|
5
|
+
answerPaths: string[];
|
|
6
|
+
statePath: string;
|
|
7
|
+
}
|
|
8
|
+
export declare function createContinuationHumanActionState(input: {
|
|
9
|
+
continuation: FrontierCodexContinuationInput;
|
|
10
|
+
cwd: string;
|
|
11
|
+
outDir: string;
|
|
12
|
+
collection?: FrontierCodexCollectResult;
|
|
13
|
+
generatedAt: number;
|
|
14
|
+
}): Promise<FrontierCodexContinuationHumanActionState>;
|
|
15
|
+
//# sourceMappingURL=continuation-human-actions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"continuation-human-actions.d.ts","sourceRoot":"","sources":["../src/continuation-human-actions.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,KAAK,iCAAiC,EACvC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AACxE,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,yBAAyB,CAAC;AAE9E,MAAM,WAAW,yCAA0C,SAAQ,iCAAiC;IAClG,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,wBAAsB,kCAAkC,CAAC,KAAK,EAAE;IAC9D,YAAY,EAAE,8BAA8B,CAAC;IAC7C,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,0BAA0B,CAAC;IACxC,WAAW,EAAE,MAAM,CAAC;CACrB,GAAG,OAAO,CAAC,yCAAyC,CAAC,CAmBrD"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import path from 'node:path';
|
|
2
|
+
import { humanActionsFromDashboard, readCodexHumanActionAnswerArtifacts, resolveCodexHumanActions } from './human-actions.js';
|
|
3
|
+
export async function createContinuationHumanActionState(input) {
|
|
4
|
+
const answers = await readCodexHumanActionAnswerArtifacts({
|
|
5
|
+
cwd: input.cwd,
|
|
6
|
+
generatedAt: input.generatedAt,
|
|
7
|
+
answers: input.continuation.humanAnswers,
|
|
8
|
+
answerPath: input.continuation.humanAnswersPath,
|
|
9
|
+
answerPaths: input.continuation.humanAnswerPaths,
|
|
10
|
+
roots: [input.collection?.outDir, input.collection?.runDir, path.join(input.cwd, 'agent-runs', 'loom-ui-human-actions')]
|
|
11
|
+
});
|
|
12
|
+
const resolved = resolveCodexHumanActions({
|
|
13
|
+
actions: humanActionsFromDashboard(input.collection?.dashboard),
|
|
14
|
+
answers: answers.answers,
|
|
15
|
+
generatedAt: input.generatedAt
|
|
16
|
+
});
|
|
17
|
+
return {
|
|
18
|
+
...resolved,
|
|
19
|
+
answerPaths: answers.paths,
|
|
20
|
+
statePath: path.join(input.outDir, 'human-actions.next.json')
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=continuation-human-actions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"continuation-human-actions.js","sourceRoot":"","sources":["../src/continuation-human-actions.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EACL,yBAAyB,EACzB,mCAAmC,EACnC,wBAAwB,EAEzB,MAAM,oBAAoB,CAAC;AAS5B,MAAM,CAAC,KAAK,UAAU,kCAAkC,CAAC,KAMxD;IACC,MAAM,OAAO,GAAG,MAAM,mCAAmC,CAAC;QACxD,GAAG,EAAE,KAAK,CAAC,GAAG;QACd,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,OAAO,EAAE,KAAK,CAAC,YAAY,CAAC,YAAY;QACxC,UAAU,EAAE,KAAK,CAAC,YAAY,CAAC,gBAAgB;QAC/C,WAAW,EAAE,KAAK,CAAC,YAAY,CAAC,gBAAgB;QAChD,KAAK,EAAE,CAAC,KAAK,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,YAAY,EAAE,uBAAuB,CAAC,CAAC;KACzH,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,wBAAwB,CAAC;QACxC,OAAO,EAAE,yBAAyB,CAAC,KAAK,CAAC,UAAU,EAAE,SAAS,CAAC;QAC/D,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,WAAW,EAAE,KAAK,CAAC,WAAW;KAC/B,CAAC,CAAC;IACH,OAAO;QACL,GAAG,QAAQ;QACX,WAAW,EAAE,OAAO,CAAC,KAAK;QAC1B,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,yBAAyB,CAAC;KAC9D,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { FrontierSwarmJob } from '@shapeshift-labs/frontier-swarm';
|
|
2
|
+
import type { FrontierCodexContinuationResult } from './types-continuation.js';
|
|
3
|
+
export declare function summarizeNextJobRouting(jobs: readonly FrontierSwarmJob[]): FrontierCodexContinuationResult['summary']['nextJobRouting'];
|
|
4
|
+
//# sourceMappingURL=continuation-job-routing-summary.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"continuation-job-routing-summary.d.ts","sourceRoot":"","sources":["../src/continuation-job-routing-summary.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,yBAAyB,CAAC;AAE/E,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,SAAS,gBAAgB,EAAE,GAAG,+BAA+B,CAAC,SAAS,CAAC,CAAC,gBAAgB,CAAC,CAoBvI"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
export function summarizeNextJobRouting(jobs) {
|
|
2
|
+
const routed = jobs
|
|
3
|
+
.map((job) => ({ job, route: readModelRouteMetadata(job) }))
|
|
4
|
+
.filter((entry) => !!entry.route);
|
|
5
|
+
const changed = routed.filter((entry) => {
|
|
6
|
+
const fallback = stringValue(entry.route.fallbackComputeId);
|
|
7
|
+
const selected = stringValue(entry.route.selectedComputeId);
|
|
8
|
+
return !!fallback && !!selected && fallback !== selected;
|
|
9
|
+
});
|
|
10
|
+
return {
|
|
11
|
+
routedJobCount: routed.length,
|
|
12
|
+
changedComputeCount: changed.length,
|
|
13
|
+
policyFeedbackMatchCount: routed.reduce((sum, entry) => sum + numberValue(readRouteSummaryValue(entry.route, 'routingPolicyFeedbackCount')), 0),
|
|
14
|
+
policyCostSignalCount: routed.reduce((sum, entry) => sum + numberValue(readRouteSummaryValue(entry.route, 'routingPolicyCostSignalCount')), 0),
|
|
15
|
+
policyPreferenceMatchCount: routed.reduce((sum, entry) => sum + numberValue(readRouteSummaryValue(entry.route, 'routingPolicyPreferenceCount')), 0),
|
|
16
|
+
selectedComputeCounts: countByString(routed.map((entry) => stringValue(entry.route.selectedComputeId)).filter((entry) => !!entry)),
|
|
17
|
+
fallbackComputeCounts: countByString(routed.map((entry) => stringValue(entry.route.fallbackComputeId)).filter((entry) => !!entry)),
|
|
18
|
+
routedJobIds: routed.map((entry) => entry.job.id),
|
|
19
|
+
changedComputeJobIds: changed.map((entry) => entry.job.id)
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
function readModelRouteMetadata(job) {
|
|
23
|
+
const metadata = job.metadata;
|
|
24
|
+
if (!metadata || typeof metadata !== 'object' || Array.isArray(metadata))
|
|
25
|
+
return undefined;
|
|
26
|
+
const route = metadata.modelRoute;
|
|
27
|
+
return route && typeof route === 'object' && !Array.isArray(route) ? route : undefined;
|
|
28
|
+
}
|
|
29
|
+
function readRouteSummaryValue(route, key) {
|
|
30
|
+
const summary = route.summary;
|
|
31
|
+
return summary && typeof summary === 'object' && !Array.isArray(summary)
|
|
32
|
+
? summary[key]
|
|
33
|
+
: undefined;
|
|
34
|
+
}
|
|
35
|
+
function countByString(values) {
|
|
36
|
+
const out = {};
|
|
37
|
+
for (const value of values)
|
|
38
|
+
out[value] = (out[value] ?? 0) + 1;
|
|
39
|
+
return out;
|
|
40
|
+
}
|
|
41
|
+
function stringValue(value) {
|
|
42
|
+
return typeof value === 'string' && value.length > 0 ? value : undefined;
|
|
43
|
+
}
|
|
44
|
+
function numberValue(value) {
|
|
45
|
+
return typeof value === 'number' && Number.isFinite(value) && value > 0 ? value : 0;
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=continuation-job-routing-summary.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"continuation-job-routing-summary.js","sourceRoot":"","sources":["../src/continuation-job-routing-summary.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { FrontierSwarmTaskInput } from '@shapeshift-labs/frontier-swarm';
|
|
2
|
+
export declare function writeContinuationTaskSource(input: {
|
|
3
|
+
cwd: string;
|
|
4
|
+
outDir: string;
|
|
5
|
+
tasks?: unknown;
|
|
6
|
+
tasksPath?: string;
|
|
7
|
+
write?: boolean;
|
|
8
|
+
projectedTasks: readonly FrontierSwarmTaskInput[];
|
|
9
|
+
}): Promise<string | undefined>;
|
|
10
|
+
//# sourceMappingURL=continuation-task-source.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"continuation-task-source.d.ts","sourceRoot":"","sources":["../src/continuation-task-source.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAE9E,wBAAsB,2BAA2B,CAAC,KAAK,EAAE;IACvD,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,cAAc,EAAE,SAAS,sBAAsB,EAAE,CAAC;CACnD,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAM9B"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import fs from 'node:fs/promises';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
export async function writeContinuationTaskSource(input) {
|
|
4
|
+
if (input.tasks === undefined && input.tasksPath === undefined)
|
|
5
|
+
return undefined;
|
|
6
|
+
const file = path.resolve(input.cwd, input.write && input.tasksPath ? input.tasksPath : path.join(input.outDir, 'tasks.next.json'));
|
|
7
|
+
await fs.mkdir(path.dirname(file), { recursive: true });
|
|
8
|
+
await fs.writeFile(file, JSON.stringify({ items: input.projectedTasks }, null, 2) + '\n');
|
|
9
|
+
return file;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=continuation-task-source.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"continuation-task-source.js","sourceRoot":"","sources":["../src/continuation-task-source.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAG7B,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAAC,KAOjD;IACC,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACjF,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC;IACpI,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACxD,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IAC1F,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { type FrontierSwarmBacklog, type FrontierSwarmTaskInput } from '@shapeshift-labs/frontier-swarm';
|
|
2
|
+
import type { FrontierCodexCollectResult } from './types-collection.js';
|
|
3
|
+
export interface ContinuationTerminalOutcomeProjection {
|
|
4
|
+
backlog: FrontierSwarmBacklog;
|
|
5
|
+
tasks: FrontierSwarmTaskInput[];
|
|
6
|
+
summary: {
|
|
7
|
+
closedEntryCount: number;
|
|
8
|
+
closedTaskCount: number;
|
|
9
|
+
rerunEntryCount: number;
|
|
10
|
+
rerunTaskCount: number;
|
|
11
|
+
reviewEntryCount: number;
|
|
12
|
+
reviewTaskCount: number;
|
|
13
|
+
blockedEntryCount: number;
|
|
14
|
+
blockedTaskCount: number;
|
|
15
|
+
answeredHumanBlockerEntryCount: number;
|
|
16
|
+
answeredHumanBlockerTaskCount: number;
|
|
17
|
+
decisionCount: number;
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
export declare function projectContinuationTerminalOutcomes(input: {
|
|
21
|
+
backlog: FrontierSwarmBacklog;
|
|
22
|
+
tasks: readonly FrontierSwarmTaskInput[];
|
|
23
|
+
collection?: FrontierCodexCollectResult;
|
|
24
|
+
answeredHumanActions?: readonly Record<string, unknown>[];
|
|
25
|
+
generatedAt: number;
|
|
26
|
+
}): ContinuationTerminalOutcomeProjection;
|
|
27
|
+
//# sourceMappingURL=continuation-terminal-outcomes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"continuation-terminal-outcomes.d.ts","sourceRoot":"","sources":["../src/continuation-terminal-outcomes.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,oBAAoB,EAIzB,KAAK,sBAAsB,EAC5B,MAAM,iCAAiC,CAAC;AAGzC,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AAExE,MAAM,WAAW,qCAAqC;IACpD,OAAO,EAAE,oBAAoB,CAAC;IAC9B,KAAK,EAAE,sBAAsB,EAAE,CAAC;IAChC,OAAO,EAAE;QACP,gBAAgB,EAAE,MAAM,CAAC;QACzB,eAAe,EAAE,MAAM,CAAC;QACxB,eAAe,EAAE,MAAM,CAAC;QACxB,cAAc,EAAE,MAAM,CAAC;QACvB,gBAAgB,EAAE,MAAM,CAAC;QACzB,eAAe,EAAE,MAAM,CAAC;QACxB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,gBAAgB,EAAE,MAAM,CAAC;QACzB,8BAA8B,EAAE,MAAM,CAAC;QACvC,6BAA6B,EAAE,MAAM,CAAC;QACtC,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;CACH;AAED,wBAAgB,mCAAmC,CAAC,KAAK,EAAE;IACzD,OAAO,EAAE,oBAAoB,CAAC;IAC9B,KAAK,EAAE,SAAS,sBAAsB,EAAE,CAAC;IACzC,UAAU,CAAC,EAAE,0BAA0B,CAAC;IACxC,oBAAoB,CAAC,EAAE,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IAC1D,WAAW,EAAE,MAAM,CAAC;CACrB,GAAG,qCAAqC,CA+BxC"}
|