substrate-ai 0.20.95 → 0.20.97
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/adapter-registry-elGgGcQB.js +4 -0
- package/dist/cli/index.js +26 -18
- package/dist/{decisions-CNe9RlcE.js → decisions-DsoOrBZE.js} +1 -1
- package/dist/{dist-C_NE40jY.js → dist-DnVfCiro.js} +218 -197
- package/dist/{errors-D531Z8FW.js → errors-7UL0-Lga.js} +2 -2
- package/dist/{experimenter-Cg2fBeVq.js → experimenter--Oe0guH8.js} +1 -1
- package/dist/{health-C0bSSccV.js → health-CQuQJ7OQ.js} +3 -3
- package/dist/{health-CzZ2Ki-b.js → health-DmvwKjP5.js} +3 -3
- package/dist/index.js +2 -2
- package/dist/{interactive-prompt-DF-PL5ia.js → interactive-prompt-El7WVSY2.js} +2 -2
- package/dist/{manifest-read-BSsjVG96.js → manifest-read-96wMXd5A.js} +2 -2
- package/dist/modules/interactive-prompt/index.js +3 -3
- package/dist/{routing-Cptl6Ali.js → routing-jFYm30zp.js} +1 -1
- package/dist/{run-COnbF6By.js → run-BONrtCkE.js} +6 -6
- package/dist/{run-Bmrjp1QI.js → run-DfBzTNKC.js} +5 -5
- package/dist/{upgrade--vRnNB3V.js → upgrade-BAG_bSYf.js} +2 -2
- package/dist/{upgrade-C1KzAZQE.js → upgrade-DalCYA_U.js} +2 -2
- package/dist/{version-manager-impl-9J_JCJPu.js → version-manager-impl-bWaGssmZ.js} +1 -1
- package/package.json +1 -1
- package/dist/adapter-registry-Bvox1eRm.js +0 -4
package/dist/cli/index.js
CHANGED
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { FileStateStore, SUBSTRATE_OWNED_SETTINGS_KEYS, VALID_PHASES, buildPipelineStatusOutput, createDatabaseAdapter, createDoltOperatorReader, createStateStore, findPackageRoot, formatOutput, formatPipelineStatusHuman, formatPipelineSummary, formatTokenTelemetry, getAllDescendantPids, getAutoHealthData, getSubstrateDefaultSettings, inspectProcessTree, parseDbTimestampAsUtc, registerHealthCommand, resolveBmadMethodSrcPath, resolveBmadMethodVersion } from "../health-
|
|
2
|
+
import { FileStateStore, SUBSTRATE_OWNED_SETTINGS_KEYS, VALID_PHASES, buildPipelineStatusOutput, createDatabaseAdapter, createDoltOperatorReader, createStateStore, findPackageRoot, formatOutput, formatPipelineStatusHuman, formatPipelineSummary, formatTokenTelemetry, getAllDescendantPids, getAutoHealthData, getSubstrateDefaultSettings, inspectProcessTree, parseDbTimestampAsUtc, registerHealthCommand, resolveBmadMethodSrcPath, resolveBmadMethodVersion } from "../health-DmvwKjP5.js";
|
|
3
3
|
import { createLogger } from "../logger-KeHncl-f.js";
|
|
4
4
|
import { createEventBus } from "../helpers-CElYrONe.js";
|
|
5
|
-
import { AdapterRegistry, BudgetConfigSchema, CURRENT_CONFIG_FORMAT_VERSION, CURRENT_TASK_GRAPH_VERSION, ConfigError, CostTrackerConfigSchema, DEFAULT_CONFIG, DoltClient, DoltNotInstalled, GlobalSettingsSchema, InMemoryDatabaseAdapter, IngestionServer, MonitorDatabaseImpl, OPERATIONAL_FINDING, PartialGlobalSettingsSchema, PartialProviderConfigSchema, ProvidersSchema, RoutingRecommender, STORY_METRICS, TelemetryConfigSchema, addTokenUsage, aggregateTokenUsageForRun, checkDoltInstalled, compareRunMetrics, createAmendmentRun, createConfigSystem, createDecision, createDoltClient, createPipelineRun, getActiveDecisions, getAllCostEntriesFiltered, getBaselineRunMetrics, getDecisionsByCategory, getDecisionsByPhaseForRun, getLatestCompletedRun, getLatestRun, getPipelineRunById, getPlanningCostTotal, getRetryableEscalations, getRunMetrics, getRunningPipelineRuns, getSessionCostSummary, getSessionCostSummaryFiltered, getStoryMetricsForRun, getTokenUsageSummary, incrementRunRestarts, initSchema, initializeDolt, listRunMetrics, loadParentRunDecisions, supersedeDecision, swallowDebug, tagRunAsBaseline, updatePipelineRun } from "../dist-
|
|
6
|
-
import { AdapterTelemetryPersistence, AppError, DoltRepoMapMetaRepository, DoltSymbolRepository, ERR_REPO_MAP_STORAGE_WRITE, EpicIngester, GLOBSTAR, GitClient, GrammarLoader, Minimatch, Minipass, RepoMapInjector, RepoMapModule, RepoMapQueryEngine, RepoMapStorage, SymbolParser, createContextCompiler, createDispatcher, createEventEmitter, createGitWorktreeManager, createImplementationOrchestrator, createPackLoader, createPhaseOrchestrator, createStopAfterGate, createTelemetryAdvisor, escape, formatPhaseCompletionSummary, getFactoryRunSummaries, getScenarioResultsForRun, getTwinRunsForRun, listGraphRuns, registerExportCommand, registerFactoryCommand, registerRunCommand, registerScenariosCommand, resolveStoryKeys, runAnalysisPhase, runPlanningPhase, runProbeAuthor, runSolutioningPhase, unescape, validateStopAfterFromConflict } from "../run-
|
|
5
|
+
import { AdapterRegistry, BudgetConfigSchema, CURRENT_CONFIG_FORMAT_VERSION, CURRENT_TASK_GRAPH_VERSION, ConfigError, CostTrackerConfigSchema, DEFAULT_CONFIG, DoltClient, DoltNotInstalled, GlobalSettingsSchema, InMemoryDatabaseAdapter, IngestionServer, MonitorDatabaseImpl, OPERATIONAL_FINDING, PartialGlobalSettingsSchema, PartialProviderConfigSchema, ProvidersSchema, RoutingRecommender, STORY_METRICS, TelemetryConfigSchema, addTokenUsage, aggregateTokenUsageForRun, checkDoltInstalled, compareRunMetrics, createAmendmentRun, createConfigSystem, createDecision, createDoltClient, createPipelineRun, getActiveDecisions, getAllCostEntriesFiltered, getBaselineRunMetrics, getDecisionsByCategory, getDecisionsByPhaseForRun, getLatestCompletedRun, getLatestRun, getPipelineRunById, getPlanningCostTotal, getRetryableEscalations, getRunMetrics, getRunningPipelineRuns, getSessionCostSummary, getSessionCostSummaryFiltered, getStoryMetricsForRun, getTokenUsageSummary, incrementRunRestarts, initSchema, initializeDolt, listRunMetrics, loadParentRunDecisions, supersedeDecision, swallowDebug, tagRunAsBaseline, updatePipelineRun } from "../dist-DnVfCiro.js";
|
|
6
|
+
import { AdapterTelemetryPersistence, AppError, DoltRepoMapMetaRepository, DoltSymbolRepository, ERR_REPO_MAP_STORAGE_WRITE, EpicIngester, GLOBSTAR, GitClient, GrammarLoader, Minimatch, Minipass, RepoMapInjector, RepoMapModule, RepoMapQueryEngine, RepoMapStorage, SymbolParser, createContextCompiler, createDispatcher, createEventEmitter, createGitWorktreeManager, createImplementationOrchestrator, createPackLoader, createPhaseOrchestrator, createStopAfterGate, createTelemetryAdvisor, escape, formatPhaseCompletionSummary, getFactoryRunSummaries, getScenarioResultsForRun, getTwinRunsForRun, listGraphRuns, registerExportCommand, registerFactoryCommand, registerRunCommand, registerScenariosCommand, resolveStoryKeys, runAnalysisPhase, runPlanningPhase, runProbeAuthor, runSolutioningPhase, unescape, validateStopAfterFromConflict } from "../run-BONrtCkE.js";
|
|
7
7
|
import "../adapter-registry-DIcrxjH8.js";
|
|
8
|
-
import { RunManifest, SupervisorLock, ZERO_FINDINGS_BY_AUTHOR, ZERO_FINDING_COUNTS, ZERO_PROBE_AUTHOR_METRICS, aggregateProbeAuthorMetrics, parseRuntimeProbes, readCurrentRunId, resolveMainRepoRoot, resolveRunManifest, rollupFindingCounts, rollupFindingsByAuthor, rollupProbeAuthorByClass, rollupProbeAuthorMetrics, runAcTraceabilityCheck } from "../manifest-read-
|
|
9
|
-
import "../errors-
|
|
8
|
+
import { RunManifest, SupervisorLock, ZERO_FINDINGS_BY_AUTHOR, ZERO_FINDING_COUNTS, ZERO_PROBE_AUTHOR_METRICS, aggregateProbeAuthorMetrics, parseRuntimeProbes, readCurrentRunId, resolveMainRepoRoot, resolveRunManifest, rollupFindingCounts, rollupFindingsByAuthor, rollupProbeAuthorByClass, rollupProbeAuthorMetrics, runAcTraceabilityCheck } from "../manifest-read-96wMXd5A.js";
|
|
9
|
+
import "../errors-7UL0-Lga.js";
|
|
10
10
|
import "../routing-DFxoKHDt.js";
|
|
11
11
|
import { WorkGraphRepository } from "../work-graph-repository-DZyJv5pV.js";
|
|
12
12
|
import "../decisions-CzSIEeGP.js";
|
|
13
13
|
import "../decision-router-DblHY8se.js";
|
|
14
|
-
import "../interactive-prompt-
|
|
14
|
+
import "../interactive-prompt-El7WVSY2.js";
|
|
15
15
|
import "../recovery-engine-BKGBeBnW.js";
|
|
16
16
|
import "../version-manager-impl-qFBiO4Eh.js";
|
|
17
|
-
import { registerUpgradeCommand } from "../upgrade-
|
|
17
|
+
import { registerUpgradeCommand } from "../upgrade-DalCYA_U.js";
|
|
18
18
|
import { Command } from "commander";
|
|
19
19
|
import { fileURLToPath } from "url";
|
|
20
20
|
import { dirname, join, resolve } from "path";
|
|
@@ -6887,7 +6887,7 @@ async function runStatusAction(options) {
|
|
|
6887
6887
|
logger$15.debug({ err }, "Work graph query failed, continuing without work graph data");
|
|
6888
6888
|
}
|
|
6889
6889
|
if (run === void 0) {
|
|
6890
|
-
const { inspectProcessTree: inspectProcessTree$1 } = await import("../health-
|
|
6890
|
+
const { inspectProcessTree: inspectProcessTree$1 } = await import("../health-CQuQJ7OQ.js");
|
|
6891
6891
|
const substrateDirPath = join(projectRoot, ".substrate");
|
|
6892
6892
|
const processInfo = inspectProcessTree$1({
|
|
6893
6893
|
projectRoot,
|
|
@@ -7835,7 +7835,7 @@ function defaultSupervisorDeps() {
|
|
|
7835
7835
|
if (cached === null) {
|
|
7836
7836
|
const { AdapterRegistry: AR } = await import(
|
|
7837
7837
|
/* @vite-ignore */
|
|
7838
|
-
"../adapter-registry-
|
|
7838
|
+
"../adapter-registry-elGgGcQB.js"
|
|
7839
7839
|
);
|
|
7840
7840
|
cached = new AR();
|
|
7841
7841
|
await cached.discoverAndRegister();
|
|
@@ -8402,11 +8402,11 @@ async function runSupervisorAction(options, deps = {}) {
|
|
|
8402
8402
|
try {
|
|
8403
8403
|
const { createExperimenter } = await import(
|
|
8404
8404
|
/* @vite-ignore */
|
|
8405
|
-
"../experimenter
|
|
8405
|
+
"../experimenter--Oe0guH8.js"
|
|
8406
8406
|
);
|
|
8407
8407
|
const { getLatestRun: getLatest } = await import(
|
|
8408
8408
|
/* @vite-ignore */
|
|
8409
|
-
"../decisions-
|
|
8409
|
+
"../decisions-DsoOrBZE.js"
|
|
8410
8410
|
);
|
|
8411
8411
|
const expAdapter = createDatabaseAdapter({
|
|
8412
8412
|
backend: "auto",
|
|
@@ -8416,7 +8416,7 @@ async function runSupervisorAction(options, deps = {}) {
|
|
|
8416
8416
|
await initSchema(expAdapter);
|
|
8417
8417
|
const { runRunAction: runPipeline } = await import(
|
|
8418
8418
|
/* @vite-ignore */
|
|
8419
|
-
"../run-
|
|
8419
|
+
"../run-DfBzTNKC.js"
|
|
8420
8420
|
);
|
|
8421
8421
|
const runStoryFn = async (opts) => {
|
|
8422
8422
|
const exitCode = await runPipeline({
|
|
@@ -8944,7 +8944,7 @@ async function runMetricsAction(options) {
|
|
|
8944
8944
|
const routingConfigPath = join(dbDir, "routing.yml");
|
|
8945
8945
|
let routingConfig = null;
|
|
8946
8946
|
if (existsSync$1(routingConfigPath)) try {
|
|
8947
|
-
const { loadModelRoutingConfig } = await import("../routing-
|
|
8947
|
+
const { loadModelRoutingConfig } = await import("../routing-jFYm30zp.js");
|
|
8948
8948
|
routingConfig = loadModelRoutingConfig(routingConfigPath);
|
|
8949
8949
|
} catch {}
|
|
8950
8950
|
if (routingConfig === null) routingConfig = {
|
|
@@ -11959,10 +11959,18 @@ function registerRoutingCommand(program) {
|
|
|
11959
11959
|
//#endregion
|
|
11960
11960
|
//#region src/modules/work-graph/schema.ts
|
|
11961
11961
|
/**
|
|
11962
|
-
* Work-graph schema DDL
|
|
11962
|
+
* Work-graph schema — legacy DDL constant exports.
|
|
11963
11963
|
*
|
|
11964
|
-
*
|
|
11965
|
-
*
|
|
11964
|
+
* The canonical DDL lives in packages/core/src/persistence/work-graph-schema.ts
|
|
11965
|
+
* as `initWorkGraphSchema(adapter)`. This file is preserved as a thin shim
|
|
11966
|
+
* so the existing callers in `ingest-epic.ts` and `epic-status.ts` keep
|
|
11967
|
+
* working — they `await adapter.exec(CREATE_STORIES_TABLE)` directly rather
|
|
11968
|
+
* than invoking the function form.
|
|
11969
|
+
*
|
|
11970
|
+
* Post-Ship-5 (2026-05): the legacy constants here MUST stay in sync with
|
|
11971
|
+
* the function form in @substrate-ai/core. Future ports should consider
|
|
11972
|
+
* migrating callers to `initWorkGraphSchema(adapter)` and deleting this file
|
|
11973
|
+
* entirely.
|
|
11966
11974
|
*/
|
|
11967
11975
|
const CREATE_STORIES_TABLE = `
|
|
11968
11976
|
CREATE TABLE IF NOT EXISTS wg_stories (
|
|
@@ -13318,8 +13326,8 @@ async function createProgram() {
|
|
|
13318
13326
|
/** Fire-and-forget startup version check (story 8.3, AC3/AC5) */
|
|
13319
13327
|
function checkForUpdatesInBackground(currentVersion) {
|
|
13320
13328
|
if (process.env.SUBSTRATE_NO_UPDATE_CHECK === "1") return;
|
|
13321
|
-
import("../upgrade
|
|
13322
|
-
const { createVersionManager } = await import("../version-manager-impl-
|
|
13329
|
+
import("../upgrade-BAG_bSYf.js").then(async () => {
|
|
13330
|
+
const { createVersionManager } = await import("../version-manager-impl-bWaGssmZ.js");
|
|
13323
13331
|
const vm = createVersionManager();
|
|
13324
13332
|
const result = await vm.checkForUpdates();
|
|
13325
13333
|
if (result.updateAvailable) {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { addTokenUsage, createDecision, createPipelineRun, createRequirement, getArtifactByTypeForRun, getArtifactsByRun, getDecisionsByCategory, getDecisionsByPhase, getDecisionsByPhaseForRun, getLatestRun, getPipelineRunById, getRunningPipelineRuns, getTokenUsageSummary, listRequirements, registerArtifact, updateDecision, updatePipelineRun, updatePipelineRunConfig, upsertDecision } from "./dist-
|
|
1
|
+
import { addTokenUsage, createDecision, createPipelineRun, createRequirement, getArtifactByTypeForRun, getArtifactsByRun, getDecisionsByCategory, getDecisionsByPhase, getDecisionsByPhaseForRun, getLatestRun, getPipelineRunById, getRunningPipelineRuns, getTokenUsageSummary, listRequirements, registerArtifact, updateDecision, updatePipelineRun, updatePipelineRunConfig, upsertDecision } from "./dist-DnVfCiro.js";
|
|
2
2
|
import "./decisions-CzSIEeGP.js";
|
|
3
3
|
|
|
4
4
|
export { getLatestRun };
|
|
@@ -2569,31 +2569,8 @@ function createDatabaseAdapter(config = { backend: "auto" }, doltClientFactory)
|
|
|
2569
2569
|
}
|
|
2570
2570
|
|
|
2571
2571
|
//#endregion
|
|
2572
|
-
//#region packages/core/dist/persistence/schema.js
|
|
2573
|
-
|
|
2574
|
-
* Consolidated schema DDL for all persistence tables.
|
|
2575
|
-
*
|
|
2576
|
-
* Replaces the 11 separate SQLite migration files with a single
|
|
2577
|
-
* async function that creates all tables via DatabaseAdapter.
|
|
2578
|
-
*
|
|
2579
|
-
* All tables use CREATE TABLE IF NOT EXISTS for idempotency.
|
|
2580
|
-
* Indexes and views use IF NOT EXISTS.
|
|
2581
|
-
*
|
|
2582
|
-
* Schema covers:
|
|
2583
|
-
* - Core: sessions, tasks, task_dependencies, execution_log
|
|
2584
|
-
* - Cost: cost_entries
|
|
2585
|
-
* - Pipeline: pipeline_runs, decisions, requirements, constraints, artifacts, token_usage
|
|
2586
|
-
* - Plans: plans, plan_versions
|
|
2587
|
-
* - Signals: session_signals
|
|
2588
|
-
* - Metrics: run_metrics, story_metrics
|
|
2589
|
-
* - Monitor: task_metrics, performance_aggregates, routing_recommendations
|
|
2590
|
-
* - Telemetry: turn_analysis, efficiency_scores, recommendations, category_stats, consumer_stats
|
|
2591
|
-
*/
|
|
2592
|
-
/**
|
|
2593
|
-
* Initialize all persistence tables on the given adapter.
|
|
2594
|
-
* Idempotent — safe to call multiple times.
|
|
2595
|
-
*/
|
|
2596
|
-
async function initSchema(adapter) {
|
|
2572
|
+
//#region packages/core/dist/persistence/core-schema.js
|
|
2573
|
+
async function initCoreSchema(adapter) {
|
|
2597
2574
|
await adapter.exec(`
|
|
2598
2575
|
CREATE TABLE IF NOT EXISTS sessions (
|
|
2599
2576
|
id VARCHAR(255) PRIMARY KEY,
|
|
@@ -2743,6 +2720,56 @@ async function initSchema(adapter) {
|
|
|
2743
2720
|
`);
|
|
2744
2721
|
await adapter.exec("CREATE INDEX IF NOT EXISTS idx_plan_versions_plan_id ON plan_versions(plan_id)");
|
|
2745
2722
|
await adapter.exec(`
|
|
2723
|
+
CREATE TABLE IF NOT EXISTS schema_migrations (
|
|
2724
|
+
version INTEGER PRIMARY KEY,
|
|
2725
|
+
name TEXT NOT NULL,
|
|
2726
|
+
applied_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
|
|
2727
|
+
)
|
|
2728
|
+
`);
|
|
2729
|
+
}
|
|
2730
|
+
/**
|
|
2731
|
+
* Initialize the views that depend on core tables (`tasks`, `task_dependencies`,
|
|
2732
|
+
* `sessions`). Must be called AFTER `initCoreSchema` (defines the tables).
|
|
2733
|
+
*
|
|
2734
|
+
* NOTE: Views use JOINs/aggregation. Dolt supports them; InMemoryDatabaseAdapter
|
|
2735
|
+
* silently no-ops `CREATE VIEW`, so the same DDL works on both backends without
|
|
2736
|
+
* a try/catch wrapper.
|
|
2737
|
+
*/
|
|
2738
|
+
async function initCoreViews(adapter) {
|
|
2739
|
+
await adapter.exec(`
|
|
2740
|
+
CREATE VIEW IF NOT EXISTS ready_tasks AS
|
|
2741
|
+
SELECT t.* FROM tasks t
|
|
2742
|
+
WHERE t.status = 'pending'
|
|
2743
|
+
AND NOT EXISTS (
|
|
2744
|
+
SELECT 1 FROM task_dependencies td
|
|
2745
|
+
JOIN tasks dep ON dep.id = td.depends_on
|
|
2746
|
+
WHERE td.task_id = t.id
|
|
2747
|
+
AND dep.status NOT IN ('completed', 'cancelled')
|
|
2748
|
+
)
|
|
2749
|
+
`);
|
|
2750
|
+
await adapter.exec(`
|
|
2751
|
+
CREATE VIEW IF NOT EXISTS session_cost_summary AS
|
|
2752
|
+
SELECT
|
|
2753
|
+
s.id AS session_id,
|
|
2754
|
+
s.name AS session_name,
|
|
2755
|
+
COUNT(DISTINCT t.id) AS total_tasks,
|
|
2756
|
+
SUM(CASE WHEN t.status = 'completed' THEN 1 ELSE 0 END) AS completed_tasks,
|
|
2757
|
+
SUM(CASE WHEN t.status = 'failed' THEN 1 ELSE 0 END) AS failed_tasks,
|
|
2758
|
+
SUM(CASE WHEN t.status = 'running' THEN 1 ELSE 0 END) AS running_tasks,
|
|
2759
|
+
COALESCE(SUM(t.cost_usd), 0) AS total_cost_usd,
|
|
2760
|
+
SUM(CASE WHEN t.billing_mode = 'subscription' THEN t.cost_usd ELSE 0 END) AS subscription_cost_usd,
|
|
2761
|
+
SUM(CASE WHEN t.billing_mode = 'api' THEN t.cost_usd ELSE 0 END) AS api_cost_usd,
|
|
2762
|
+
s.planning_cost_usd
|
|
2763
|
+
FROM sessions s
|
|
2764
|
+
LEFT JOIN tasks t ON t.session_id = s.id
|
|
2765
|
+
GROUP BY s.id
|
|
2766
|
+
`);
|
|
2767
|
+
}
|
|
2768
|
+
|
|
2769
|
+
//#endregion
|
|
2770
|
+
//#region packages/core/dist/persistence/pipeline-schema.js
|
|
2771
|
+
async function initPipelineSchema(adapter) {
|
|
2772
|
+
await adapter.exec(`
|
|
2746
2773
|
CREATE TABLE IF NOT EXISTS pipeline_runs (
|
|
2747
2774
|
id VARCHAR(255) PRIMARY KEY,
|
|
2748
2775
|
methodology VARCHAR(128) NOT NULL,
|
|
@@ -2876,6 +2903,11 @@ async function initSchema(adapter) {
|
|
|
2876
2903
|
]) try {
|
|
2877
2904
|
await adapter.exec(`ALTER TABLE story_metrics ADD COLUMN ${col}`);
|
|
2878
2905
|
} catch {}
|
|
2906
|
+
}
|
|
2907
|
+
|
|
2908
|
+
//#endregion
|
|
2909
|
+
//#region packages/core/dist/persistence/monitor-schema.js
|
|
2910
|
+
async function initMonitorSchema(adapter) {
|
|
2879
2911
|
await adapter.exec(`
|
|
2880
2912
|
CREATE TABLE IF NOT EXISTS task_metrics (
|
|
2881
2913
|
task_id VARCHAR(255) NOT NULL,
|
|
@@ -2926,8 +2958,142 @@ async function initSchema(adapter) {
|
|
|
2926
2958
|
generated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
2927
2959
|
expires_at TEXT
|
|
2928
2960
|
)
|
|
2961
|
+
`);
|
|
2962
|
+
}
|
|
2963
|
+
|
|
2964
|
+
//#endregion
|
|
2965
|
+
//#region packages/core/dist/persistence/state-schema.js
|
|
2966
|
+
async function initStateSchema(adapter) {
|
|
2967
|
+
await adapter.exec(`
|
|
2968
|
+
CREATE TABLE IF NOT EXISTS stories (
|
|
2969
|
+
story_key VARCHAR(100) NOT NULL,
|
|
2970
|
+
sprint VARCHAR(50),
|
|
2971
|
+
status VARCHAR(30) NOT NULL DEFAULT 'PENDING',
|
|
2972
|
+
phase VARCHAR(30) NOT NULL DEFAULT 'PENDING',
|
|
2973
|
+
ac_results JSON,
|
|
2974
|
+
error_message TEXT,
|
|
2975
|
+
created_at DATETIME,
|
|
2976
|
+
updated_at DATETIME,
|
|
2977
|
+
completed_at DATETIME,
|
|
2978
|
+
PRIMARY KEY (story_key)
|
|
2979
|
+
)
|
|
2980
|
+
`);
|
|
2981
|
+
await adapter.exec(`
|
|
2982
|
+
CREATE TABLE IF NOT EXISTS contracts (
|
|
2983
|
+
story_key VARCHAR(100) NOT NULL,
|
|
2984
|
+
name VARCHAR(200) NOT NULL,
|
|
2985
|
+
direction VARCHAR(20) NOT NULL,
|
|
2986
|
+
schema_path VARCHAR(500),
|
|
2987
|
+
transport VARCHAR(200),
|
|
2988
|
+
recorded_at DATETIME,
|
|
2989
|
+
PRIMARY KEY (story_key, name, direction)
|
|
2990
|
+
)
|
|
2929
2991
|
`);
|
|
2930
2992
|
await adapter.exec(`
|
|
2993
|
+
CREATE TABLE IF NOT EXISTS metrics (
|
|
2994
|
+
story_key VARCHAR(100) NOT NULL,
|
|
2995
|
+
task_type VARCHAR(100) NOT NULL,
|
|
2996
|
+
recorded_at DATETIME NOT NULL,
|
|
2997
|
+
model VARCHAR(100),
|
|
2998
|
+
tokens_in BIGINT NOT NULL DEFAULT 0,
|
|
2999
|
+
tokens_out BIGINT NOT NULL DEFAULT 0,
|
|
3000
|
+
cache_read_tokens BIGINT NOT NULL DEFAULT 0,
|
|
3001
|
+
cost_usd DECIMAL(10,6) NOT NULL DEFAULT 0,
|
|
3002
|
+
wall_clock_ms BIGINT NOT NULL DEFAULT 0,
|
|
3003
|
+
review_cycles INT NOT NULL DEFAULT 0,
|
|
3004
|
+
stall_count INT NOT NULL DEFAULT 0,
|
|
3005
|
+
result VARCHAR(30),
|
|
3006
|
+
PRIMARY KEY (story_key, task_type, recorded_at)
|
|
3007
|
+
)
|
|
3008
|
+
`);
|
|
3009
|
+
await adapter.exec(`
|
|
3010
|
+
CREATE TABLE IF NOT EXISTS dispatch_log (
|
|
3011
|
+
story_key VARCHAR(100) NOT NULL,
|
|
3012
|
+
dispatched_at DATETIME NOT NULL,
|
|
3013
|
+
branch VARCHAR(200),
|
|
3014
|
+
worker_id VARCHAR(100),
|
|
3015
|
+
result VARCHAR(30),
|
|
3016
|
+
PRIMARY KEY (story_key, dispatched_at)
|
|
3017
|
+
)
|
|
3018
|
+
`);
|
|
3019
|
+
await adapter.exec(`
|
|
3020
|
+
CREATE TABLE IF NOT EXISTS build_results (
|
|
3021
|
+
story_key VARCHAR(100) NOT NULL,
|
|
3022
|
+
timestamp DATETIME NOT NULL,
|
|
3023
|
+
command VARCHAR(500),
|
|
3024
|
+
exit_code INT,
|
|
3025
|
+
stdout_hash VARCHAR(64),
|
|
3026
|
+
PRIMARY KEY (story_key, timestamp)
|
|
3027
|
+
)
|
|
3028
|
+
`);
|
|
3029
|
+
await adapter.exec(`
|
|
3030
|
+
CREATE TABLE IF NOT EXISTS review_verdicts (
|
|
3031
|
+
story_key VARCHAR(100) NOT NULL,
|
|
3032
|
+
timestamp DATETIME NOT NULL,
|
|
3033
|
+
verdict VARCHAR(30),
|
|
3034
|
+
issues_count INT NOT NULL DEFAULT 0,
|
|
3035
|
+
notes TEXT,
|
|
3036
|
+
PRIMARY KEY (story_key, timestamp)
|
|
3037
|
+
)
|
|
3038
|
+
`);
|
|
3039
|
+
await adapter.exec(`
|
|
3040
|
+
CREATE TABLE IF NOT EXISTS _schema_version (
|
|
3041
|
+
version INT NOT NULL,
|
|
3042
|
+
applied_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
3043
|
+
description VARCHAR(500),
|
|
3044
|
+
PRIMARY KEY (version)
|
|
3045
|
+
)
|
|
3046
|
+
`);
|
|
3047
|
+
const seeds = [
|
|
3048
|
+
[1, "Initial substrate state schema"],
|
|
3049
|
+
[2, "Add turn_analysis table (Epic 27-4)"],
|
|
3050
|
+
[3, "Add category_stats and consumer_stats tables (Epic 27-5)"],
|
|
3051
|
+
[4, "Add recommendations table (Epic 27-7)"],
|
|
3052
|
+
[5, "Add repo_map_symbols and repo_map_meta tables (Epic 28-2)"],
|
|
3053
|
+
[6, "Add dependencies JSON column to repo_map_symbols (Epic 28-3)"],
|
|
3054
|
+
[7, "Add wg_stories, story_dependencies tables and ready_stories view (Epic 31-1)"],
|
|
3055
|
+
[8, "Add task_type, phase, dispatch_id columns to turn_analysis (Story 30-1)"],
|
|
3056
|
+
[9, "Add dispatch_id, task_type, phase columns to efficiency_scores (Story 30-3)"]
|
|
3057
|
+
];
|
|
3058
|
+
for (const [version, description] of seeds) try {
|
|
3059
|
+
await adapter.exec(`INSERT IGNORE INTO _schema_version (version, description) VALUES (${version}, '${description.replace(/'/g, "''")}')`);
|
|
3060
|
+
} catch {}
|
|
3061
|
+
}
|
|
3062
|
+
|
|
3063
|
+
//#endregion
|
|
3064
|
+
//#region packages/core/dist/persistence/repo-map-schema.js
|
|
3065
|
+
async function initRepoMapSchema(adapter) {
|
|
3066
|
+
await adapter.exec(`
|
|
3067
|
+
CREATE TABLE IF NOT EXISTS repo_map_symbols (
|
|
3068
|
+
id BIGINT AUTO_INCREMENT NOT NULL,
|
|
3069
|
+
file_path VARCHAR(1000) NOT NULL,
|
|
3070
|
+
symbol_name VARCHAR(500) NOT NULL,
|
|
3071
|
+
symbol_kind VARCHAR(20) NOT NULL,
|
|
3072
|
+
signature TEXT,
|
|
3073
|
+
line_number INT NOT NULL DEFAULT 0,
|
|
3074
|
+
exported TINYINT(1) NOT NULL DEFAULT 0,
|
|
3075
|
+
file_hash VARCHAR(64) NOT NULL,
|
|
3076
|
+
dependencies JSON,
|
|
3077
|
+
PRIMARY KEY (id)
|
|
3078
|
+
)
|
|
3079
|
+
`);
|
|
3080
|
+
await adapter.exec("CREATE INDEX IF NOT EXISTS idx_repo_map_symbols_file ON repo_map_symbols (file_path)");
|
|
3081
|
+
await adapter.exec("CREATE INDEX IF NOT EXISTS idx_repo_map_symbols_kind ON repo_map_symbols (symbol_kind)");
|
|
3082
|
+
await adapter.exec(`
|
|
3083
|
+
CREATE TABLE IF NOT EXISTS repo_map_meta (
|
|
3084
|
+
id INT NOT NULL DEFAULT 1,
|
|
3085
|
+
commit_sha VARCHAR(64),
|
|
3086
|
+
updated_at DATETIME,
|
|
3087
|
+
file_count INT NOT NULL DEFAULT 0,
|
|
3088
|
+
PRIMARY KEY (id)
|
|
3089
|
+
)
|
|
3090
|
+
`);
|
|
3091
|
+
}
|
|
3092
|
+
|
|
3093
|
+
//#endregion
|
|
3094
|
+
//#region packages/core/dist/persistence/telemetry-schema.js
|
|
3095
|
+
async function initTelemetrySchema(adapter) {
|
|
3096
|
+
await adapter.exec(`
|
|
2931
3097
|
CREATE TABLE IF NOT EXISTS turn_analysis (
|
|
2932
3098
|
story_key VARCHAR(64) NOT NULL,
|
|
2933
3099
|
span_id VARCHAR(128) NOT NULL,
|
|
@@ -2982,6 +3148,7 @@ async function initSchema(adapter) {
|
|
|
2982
3148
|
PRIMARY KEY (story_key, timestamp)
|
|
2983
3149
|
)
|
|
2984
3150
|
`);
|
|
3151
|
+
await adapter.exec("CREATE INDEX IF NOT EXISTS idx_efficiency_story ON efficiency_scores (story_key, timestamp DESC)");
|
|
2985
3152
|
for (const col of [
|
|
2986
3153
|
"dispatch_id",
|
|
2987
3154
|
"task_type",
|
|
@@ -3005,6 +3172,7 @@ async function initSchema(adapter) {
|
|
|
3005
3172
|
PRIMARY KEY (id)
|
|
3006
3173
|
)
|
|
3007
3174
|
`);
|
|
3175
|
+
await adapter.exec("CREATE INDEX IF NOT EXISTS idx_recommendations_story ON recommendations (story_key, severity)");
|
|
3008
3176
|
await adapter.exec(`
|
|
3009
3177
|
CREATE TABLE IF NOT EXISTS category_stats (
|
|
3010
3178
|
story_key VARCHAR(100) NOT NULL,
|
|
@@ -3017,6 +3185,7 @@ async function initSchema(adapter) {
|
|
|
3017
3185
|
PRIMARY KEY (story_key, category)
|
|
3018
3186
|
)
|
|
3019
3187
|
`);
|
|
3188
|
+
await adapter.exec("CREATE INDEX IF NOT EXISTS idx_category_stats_story ON category_stats (story_key, total_tokens)");
|
|
3020
3189
|
await adapter.exec(`
|
|
3021
3190
|
CREATE TABLE IF NOT EXISTS consumer_stats (
|
|
3022
3191
|
story_key VARCHAR(100) NOT NULL,
|
|
@@ -3029,6 +3198,12 @@ async function initSchema(adapter) {
|
|
|
3029
3198
|
PRIMARY KEY (story_key, consumer_key)
|
|
3030
3199
|
)
|
|
3031
3200
|
`);
|
|
3201
|
+
await adapter.exec("CREATE INDEX IF NOT EXISTS idx_consumer_stats_story ON consumer_stats (story_key, total_tokens)");
|
|
3202
|
+
}
|
|
3203
|
+
|
|
3204
|
+
//#endregion
|
|
3205
|
+
//#region packages/core/dist/persistence/work-graph-schema.js
|
|
3206
|
+
async function initWorkGraphSchema(adapter) {
|
|
3032
3207
|
await adapter.exec(`
|
|
3033
3208
|
CREATE TABLE IF NOT EXISTS wg_stories (
|
|
3034
3209
|
story_key VARCHAR(20) NOT NULL,
|
|
@@ -3068,177 +3243,23 @@ async function initSchema(adapter) {
|
|
|
3068
3243
|
AND dep.status <> 'complete'
|
|
3069
3244
|
)
|
|
3070
3245
|
`);
|
|
3071
|
-
|
|
3072
|
-
|
|
3073
|
-
|
|
3074
|
-
|
|
3075
|
-
|
|
3076
|
-
|
|
3077
|
-
|
|
3078
|
-
|
|
3079
|
-
|
|
3080
|
-
|
|
3081
|
-
|
|
3082
|
-
await adapter
|
|
3083
|
-
|
|
3084
|
-
|
|
3085
|
-
|
|
3086
|
-
|
|
3087
|
-
|
|
3088
|
-
SUM(CASE WHEN t.status = 'completed' THEN 1 ELSE 0 END) AS completed_tasks,
|
|
3089
|
-
SUM(CASE WHEN t.status = 'failed' THEN 1 ELSE 0 END) AS failed_tasks,
|
|
3090
|
-
SUM(CASE WHEN t.status = 'running' THEN 1 ELSE 0 END) AS running_tasks,
|
|
3091
|
-
COALESCE(SUM(t.cost_usd), 0) AS total_cost_usd,
|
|
3092
|
-
SUM(CASE WHEN t.billing_mode = 'subscription' THEN t.cost_usd ELSE 0 END) AS subscription_cost_usd,
|
|
3093
|
-
SUM(CASE WHEN t.billing_mode = 'api' THEN t.cost_usd ELSE 0 END) AS api_cost_usd,
|
|
3094
|
-
s.planning_cost_usd
|
|
3095
|
-
FROM sessions s
|
|
3096
|
-
LEFT JOIN tasks t ON t.session_id = s.id
|
|
3097
|
-
GROUP BY s.id
|
|
3098
|
-
`);
|
|
3099
|
-
await adapter.exec(`
|
|
3100
|
-
CREATE TABLE IF NOT EXISTS schema_migrations (
|
|
3101
|
-
version INTEGER PRIMARY KEY,
|
|
3102
|
-
name TEXT NOT NULL,
|
|
3103
|
-
applied_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
|
|
3104
|
-
)
|
|
3105
|
-
`);
|
|
3106
|
-
await adapter.exec(`
|
|
3107
|
-
CREATE TABLE IF NOT EXISTS stories (
|
|
3108
|
-
story_key VARCHAR(100) NOT NULL,
|
|
3109
|
-
sprint VARCHAR(50),
|
|
3110
|
-
status VARCHAR(30) NOT NULL DEFAULT 'PENDING',
|
|
3111
|
-
phase VARCHAR(30) NOT NULL DEFAULT 'PENDING',
|
|
3112
|
-
ac_results JSON,
|
|
3113
|
-
error_message TEXT,
|
|
3114
|
-
created_at DATETIME,
|
|
3115
|
-
updated_at DATETIME,
|
|
3116
|
-
completed_at DATETIME,
|
|
3117
|
-
PRIMARY KEY (story_key)
|
|
3118
|
-
)
|
|
3119
|
-
`);
|
|
3120
|
-
await adapter.exec(`
|
|
3121
|
-
CREATE TABLE IF NOT EXISTS contracts (
|
|
3122
|
-
story_key VARCHAR(100) NOT NULL,
|
|
3123
|
-
name VARCHAR(200) NOT NULL,
|
|
3124
|
-
direction VARCHAR(20) NOT NULL,
|
|
3125
|
-
schema_path VARCHAR(500),
|
|
3126
|
-
transport VARCHAR(200),
|
|
3127
|
-
recorded_at DATETIME,
|
|
3128
|
-
PRIMARY KEY (story_key, name, direction)
|
|
3129
|
-
)
|
|
3130
|
-
`);
|
|
3131
|
-
await adapter.exec(`
|
|
3132
|
-
CREATE TABLE IF NOT EXISTS metrics (
|
|
3133
|
-
story_key VARCHAR(100) NOT NULL,
|
|
3134
|
-
task_type VARCHAR(100) NOT NULL,
|
|
3135
|
-
recorded_at DATETIME NOT NULL,
|
|
3136
|
-
model VARCHAR(100),
|
|
3137
|
-
tokens_in BIGINT NOT NULL DEFAULT 0,
|
|
3138
|
-
tokens_out BIGINT NOT NULL DEFAULT 0,
|
|
3139
|
-
cache_read_tokens BIGINT NOT NULL DEFAULT 0,
|
|
3140
|
-
cost_usd DECIMAL(10,6) NOT NULL DEFAULT 0,
|
|
3141
|
-
wall_clock_ms BIGINT NOT NULL DEFAULT 0,
|
|
3142
|
-
review_cycles INT NOT NULL DEFAULT 0,
|
|
3143
|
-
stall_count INT NOT NULL DEFAULT 0,
|
|
3144
|
-
result VARCHAR(30),
|
|
3145
|
-
PRIMARY KEY (story_key, task_type, recorded_at)
|
|
3146
|
-
)
|
|
3147
|
-
`);
|
|
3148
|
-
await adapter.exec(`
|
|
3149
|
-
CREATE TABLE IF NOT EXISTS dispatch_log (
|
|
3150
|
-
story_key VARCHAR(100) NOT NULL,
|
|
3151
|
-
dispatched_at DATETIME NOT NULL,
|
|
3152
|
-
branch VARCHAR(200),
|
|
3153
|
-
worker_id VARCHAR(100),
|
|
3154
|
-
result VARCHAR(30),
|
|
3155
|
-
PRIMARY KEY (story_key, dispatched_at)
|
|
3156
|
-
)
|
|
3157
|
-
`);
|
|
3158
|
-
await adapter.exec(`
|
|
3159
|
-
CREATE TABLE IF NOT EXISTS build_results (
|
|
3160
|
-
story_key VARCHAR(100) NOT NULL,
|
|
3161
|
-
timestamp DATETIME NOT NULL,
|
|
3162
|
-
command VARCHAR(500),
|
|
3163
|
-
exit_code INT,
|
|
3164
|
-
stdout_hash VARCHAR(64),
|
|
3165
|
-
PRIMARY KEY (story_key, timestamp)
|
|
3166
|
-
)
|
|
3167
|
-
`);
|
|
3168
|
-
await adapter.exec(`
|
|
3169
|
-
CREATE TABLE IF NOT EXISTS review_verdicts (
|
|
3170
|
-
story_key VARCHAR(100) NOT NULL,
|
|
3171
|
-
timestamp DATETIME NOT NULL,
|
|
3172
|
-
verdict VARCHAR(30),
|
|
3173
|
-
issues_count INT NOT NULL DEFAULT 0,
|
|
3174
|
-
notes TEXT,
|
|
3175
|
-
PRIMARY KEY (story_key, timestamp)
|
|
3176
|
-
)
|
|
3177
|
-
`);
|
|
3178
|
-
await adapter.exec(`
|
|
3179
|
-
CREATE TABLE IF NOT EXISTS _schema_version (
|
|
3180
|
-
version INT NOT NULL,
|
|
3181
|
-
applied_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
3182
|
-
description VARCHAR(500),
|
|
3183
|
-
PRIMARY KEY (version)
|
|
3184
|
-
)
|
|
3185
|
-
`);
|
|
3186
|
-
try {
|
|
3187
|
-
await adapter.exec(`INSERT IGNORE INTO _schema_version (version, description) VALUES (1, 'Initial substrate state schema')`);
|
|
3188
|
-
} catch {}
|
|
3189
|
-
try {
|
|
3190
|
-
await adapter.exec(`INSERT IGNORE INTO _schema_version (version, description) VALUES (2, 'Add turn_analysis table (Epic 27-4)')`);
|
|
3191
|
-
} catch {}
|
|
3192
|
-
try {
|
|
3193
|
-
await adapter.exec(`INSERT IGNORE INTO _schema_version (version, description) VALUES (3, 'Add category_stats and consumer_stats tables (Epic 27-5)')`);
|
|
3194
|
-
} catch {}
|
|
3195
|
-
try {
|
|
3196
|
-
await adapter.exec(`INSERT IGNORE INTO _schema_version (version, description) VALUES (4, 'Add recommendations table (Epic 27-7)')`);
|
|
3197
|
-
} catch {}
|
|
3198
|
-
try {
|
|
3199
|
-
await adapter.exec(`INSERT IGNORE INTO _schema_version (version, description) VALUES (5, 'Add repo_map_symbols and repo_map_meta tables (Epic 28-2)')`);
|
|
3200
|
-
} catch {}
|
|
3201
|
-
try {
|
|
3202
|
-
await adapter.exec(`INSERT IGNORE INTO _schema_version (version, description) VALUES (6, 'Add dependencies JSON column to repo_map_symbols (Epic 28-3)')`);
|
|
3203
|
-
} catch {}
|
|
3204
|
-
try {
|
|
3205
|
-
await adapter.exec(`INSERT IGNORE INTO _schema_version (version, description) VALUES (7, 'Add wg_stories, story_dependencies tables and ready_stories view (Epic 31-1)')`);
|
|
3206
|
-
} catch {}
|
|
3207
|
-
try {
|
|
3208
|
-
await adapter.exec(`INSERT IGNORE INTO _schema_version (version, description) VALUES (8, 'Add task_type, phase, dispatch_id columns to turn_analysis (Story 30-1)')`);
|
|
3209
|
-
} catch {}
|
|
3210
|
-
try {
|
|
3211
|
-
await adapter.exec(`INSERT IGNORE INTO _schema_version (version, description) VALUES (9, 'Add dispatch_id, task_type, phase columns to efficiency_scores (Story 30-3)')`);
|
|
3212
|
-
} catch {}
|
|
3213
|
-
await adapter.exec(`
|
|
3214
|
-
CREATE TABLE IF NOT EXISTS repo_map_symbols (
|
|
3215
|
-
id BIGINT AUTO_INCREMENT NOT NULL,
|
|
3216
|
-
file_path VARCHAR(1000) NOT NULL,
|
|
3217
|
-
symbol_name VARCHAR(500) NOT NULL,
|
|
3218
|
-
symbol_kind VARCHAR(20) NOT NULL,
|
|
3219
|
-
signature TEXT,
|
|
3220
|
-
line_number INT NOT NULL DEFAULT 0,
|
|
3221
|
-
exported TINYINT(1) NOT NULL DEFAULT 0,
|
|
3222
|
-
file_hash VARCHAR(64) NOT NULL,
|
|
3223
|
-
dependencies JSON,
|
|
3224
|
-
PRIMARY KEY (id)
|
|
3225
|
-
)
|
|
3226
|
-
`);
|
|
3227
|
-
await adapter.exec("CREATE INDEX IF NOT EXISTS idx_repo_map_symbols_file ON repo_map_symbols (file_path)");
|
|
3228
|
-
await adapter.exec("CREATE INDEX IF NOT EXISTS idx_repo_map_symbols_kind ON repo_map_symbols (symbol_kind)");
|
|
3229
|
-
await adapter.exec(`
|
|
3230
|
-
CREATE TABLE IF NOT EXISTS repo_map_meta (
|
|
3231
|
-
id INT NOT NULL DEFAULT 1,
|
|
3232
|
-
commit_sha VARCHAR(64),
|
|
3233
|
-
updated_at DATETIME,
|
|
3234
|
-
file_count INT NOT NULL DEFAULT 0,
|
|
3235
|
-
PRIMARY KEY (id)
|
|
3236
|
-
)
|
|
3237
|
-
`);
|
|
3238
|
-
await adapter.exec("CREATE INDEX IF NOT EXISTS idx_efficiency_story ON efficiency_scores (story_key, timestamp DESC)");
|
|
3239
|
-
await adapter.exec("CREATE INDEX IF NOT EXISTS idx_recommendations_story ON recommendations (story_key, severity)");
|
|
3240
|
-
await adapter.exec("CREATE INDEX IF NOT EXISTS idx_category_stats_story ON category_stats (story_key, total_tokens)");
|
|
3241
|
-
await adapter.exec("CREATE INDEX IF NOT EXISTS idx_consumer_stats_story ON consumer_stats (story_key, total_tokens)");
|
|
3246
|
+
}
|
|
3247
|
+
|
|
3248
|
+
//#endregion
|
|
3249
|
+
//#region packages/core/dist/persistence/schema.js
|
|
3250
|
+
/**
|
|
3251
|
+
* Initialize all persistence tables on the given adapter.
|
|
3252
|
+
* Idempotent — safe to call multiple times.
|
|
3253
|
+
*/
|
|
3254
|
+
async function initSchema(adapter) {
|
|
3255
|
+
await initCoreSchema(adapter);
|
|
3256
|
+
await initPipelineSchema(adapter);
|
|
3257
|
+
await initMonitorSchema(adapter);
|
|
3258
|
+
await initStateSchema(adapter);
|
|
3259
|
+
await initRepoMapSchema(adapter);
|
|
3260
|
+
await initTelemetrySchema(adapter);
|
|
3261
|
+
await initWorkGraphSchema(adapter);
|
|
3262
|
+
await initCoreViews(adapter);
|
|
3242
3263
|
}
|
|
3243
3264
|
|
|
3244
3265
|
//#endregion
|
|
@@ -11291,4 +11312,4 @@ async function callLLM(params) {
|
|
|
11291
11312
|
|
|
11292
11313
|
//#endregion
|
|
11293
11314
|
export { ADVISORY_NOTES, AdapterRegistry, AdtError, BudgetConfigSchema, CURRENT_CONFIG_FORMAT_VERSION, CURRENT_TASK_GRAPH_VERSION, Categorizer, ClaudeCodeAdapter, CodexCLIAdapter, ConfigError, ConfigIncompatibleFormatError, ConsumerAnalyzer, CostTrackerConfigSchema, DEFAULT_CONFIG, DEFAULT_GLOBAL_SETTINGS, DispatcherImpl, DoltClient, DoltNotInstalled, DoltQueryError, ESCALATION_DIAGNOSIS, EXPERIMENT_RESULT, EfficiencyScorer, GeminiCLIAdapter, GlobalSettingsSchema, InMemoryDatabaseAdapter, IngestionServer, LEARNING_FINDING, LogTurnAnalyzer, ModelRoutingConfigSchema, MonitorDatabaseImpl, OPERATIONAL_FINDING, PartialGlobalSettingsSchema, PartialProviderConfigSchema, ProviderPolicySchema, ProvidersSchema, Recommender, RoutingConfigError, RoutingRecommender, RoutingResolver, RoutingTelemetry, RoutingTokenAccumulator, RoutingTuner, STORY_METRICS, STORY_OUTCOME, SubstrateConfigSchema, TASK_TYPE_PHASE_MAP, TEST_EXPANSION_FINDING, TEST_PLAN, TelemetryConfigSchema, TelemetryNormalizer, TelemetryPipeline, TurnAnalyzer, VersionManagerImpl, addTokenUsage, aggregateTokenUsageForRun, aggregateTokenUsageForStory, buildAuditLogEntry, buildBranchName, buildModificationDirective, buildPRBody, buildWorktreePath, callLLM, checkDoltInstalled, classifyVersionGap, compareRunMetrics, createAmendmentRun, createConfigSystem, createDatabaseAdapter as createDatabaseAdapter$1, createDecision, createDoltClient, createExperimenter, createPipelineRun, createRequirement, createVersionManager, detectInterfaceChanges, determineVerdict, getActiveDecisions, getAllCostEntriesFiltered, getArtifactByTypeForRun, getArtifactsByRun, getBaselineRunMetrics, getDecisionsByCategory, getDecisionsByPhase, getDecisionsByPhaseForRun, getLatestCompletedRun, getLatestRun, getModelTier, getPipelineRunById, getPlanningCostTotal, getRetryableEscalations, getRunMetrics, getRunningPipelineRuns, getSessionCostSummary, getSessionCostSummaryFiltered, getStoryMetricsForRun, getTokenUsageSummary, incrementRunRestarts, initSchema, initializeDolt, listRequirements, listRunMetrics, loadModelRoutingConfig, loadParentRunDecisions, registerArtifact, resolvePromptFile, supersedeDecision, swallowDebug, tagRunAsBaseline, updateDecision, updatePipelineRun, updatePipelineRunConfig, upsertDecision, writeRunMetrics, writeStoryMetrics };
|
|
11294
|
-
//# sourceMappingURL=dist-
|
|
11315
|
+
//# sourceMappingURL=dist-DnVfCiro.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AdtError } from "./dist-
|
|
1
|
+
import { AdtError } from "./dist-DnVfCiro.js";
|
|
2
2
|
|
|
3
3
|
//#region src/core/errors.ts
|
|
4
4
|
/** Error thrown when task configuration is invalid */
|
|
@@ -71,4 +71,4 @@ var TaskGraphIncompatibleFormatError = class extends AdtError {
|
|
|
71
71
|
|
|
72
72
|
//#endregion
|
|
73
73
|
export { BudgetExceededError, GitError, RecoveryError, TaskConfigError, TaskGraphCycleError, TaskGraphError, TaskGraphIncompatibleFormatError, WorkerError, WorkerNotFoundError };
|
|
74
|
-
//# sourceMappingURL=errors-
|
|
74
|
+
//# sourceMappingURL=errors-7UL0-Lga.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { buildAuditLogEntry, buildBranchName, buildModificationDirective, buildPRBody, buildWorktreePath, createExperimenter, determineVerdict, resolvePromptFile } from "./dist-
|
|
1
|
+
import { buildAuditLogEntry, buildBranchName, buildModificationDirective, buildPRBody, buildWorktreePath, createExperimenter, determineVerdict, resolvePromptFile } from "./dist-DnVfCiro.js";
|
|
2
2
|
|
|
3
3
|
export { createExperimenter };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { DEFAULT_STALL_THRESHOLD_SECONDS, getAllDescendantPids, getAutoHealthData, inspectProcessTree, isOrchestratorProcessLine, registerHealthCommand, runHealthAction } from "./health-
|
|
1
|
+
import { DEFAULT_STALL_THRESHOLD_SECONDS, getAllDescendantPids, getAutoHealthData, inspectProcessTree, isOrchestratorProcessLine, registerHealthCommand, runHealthAction } from "./health-DmvwKjP5.js";
|
|
2
2
|
import "./logger-KeHncl-f.js";
|
|
3
|
-
import "./dist-
|
|
4
|
-
import "./manifest-read-
|
|
3
|
+
import "./dist-DnVfCiro.js";
|
|
4
|
+
import "./manifest-read-96wMXd5A.js";
|
|
5
5
|
import "./work-graph-repository-DZyJv5pV.js";
|
|
6
6
|
import "./decisions-CzSIEeGP.js";
|
|
7
7
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createLogger } from "./logger-KeHncl-f.js";
|
|
2
|
-
import { DoltClient, DoltQueryError, createDatabaseAdapter$1 as createDatabaseAdapter, getLatestRun, getPipelineRunById, initSchema } from "./dist-
|
|
3
|
-
import { resolveMainRepoRoot, resolveRunManifest } from "./manifest-read-
|
|
2
|
+
import { DoltClient, DoltQueryError, createDatabaseAdapter$1 as createDatabaseAdapter, getLatestRun, getPipelineRunById, initSchema } from "./dist-DnVfCiro.js";
|
|
3
|
+
import { resolveMainRepoRoot, resolveRunManifest } from "./manifest-read-96wMXd5A.js";
|
|
4
4
|
import { createRequire } from "module";
|
|
5
5
|
import { dirname, join } from "path";
|
|
6
6
|
import { existsSync, readFileSync } from "node:fs";
|
|
@@ -1231,4 +1231,4 @@ function registerHealthCommand(program, _version = "0.0.0", projectRoot = proces
|
|
|
1231
1231
|
|
|
1232
1232
|
//#endregion
|
|
1233
1233
|
export { BMAD_BASELINE_TOKENS_FULL, DEFAULT_STALL_THRESHOLD_SECONDS, DoltMergeConflict, FileStateStore, STOP_AFTER_VALID_PHASES, STORY_KEY_PATTERN$1 as STORY_KEY_PATTERN, SUBSTRATE_OWNED_SETTINGS_KEYS, VALID_PHASES, __commonJS, __require, __toESM, buildPipelineStatusOutput, createDatabaseAdapter$1 as createDatabaseAdapter, createDoltOperatorReader, createStateStore, findPackageRoot, formatOutput, formatPipelineStatusHuman, formatPipelineSummary, formatTokenTelemetry, getAllDescendantPids, getAutoHealthData, getSubstrateDefaultSettings, inspectProcessTree, isOrchestratorProcessLine, parseDbTimestampAsUtc, registerHealthCommand, resolveBmadMethodSrcPath, resolveBmadMethodVersion, runHealthAction, validateStoryKey };
|
|
1234
|
-
//# sourceMappingURL=health-
|
|
1234
|
+
//# sourceMappingURL=health-DmvwKjP5.js.map
|
package/dist/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { childLogger, createLogger, logger } from "./logger-KeHncl-f.js";
|
|
2
2
|
import { assertDefined, createEventBus, createTuiApp, deepClone, formatDuration, generateId, isPlainObject, isTuiCapable, printNonTtyWarning, sleep, withRetry } from "./helpers-CElYrONe.js";
|
|
3
|
-
import { AdapterRegistry, AdtError, ClaudeCodeAdapter, CodexCLIAdapter, ConfigError, ConfigIncompatibleFormatError, GeminiCLIAdapter } from "./dist-
|
|
3
|
+
import { AdapterRegistry, AdtError, ClaudeCodeAdapter, CodexCLIAdapter, ConfigError, ConfigIncompatibleFormatError, GeminiCLIAdapter } from "./dist-DnVfCiro.js";
|
|
4
4
|
import "./adapter-registry-DIcrxjH8.js";
|
|
5
|
-
import { BudgetExceededError, GitError, RecoveryError, TaskConfigError, TaskGraphCycleError, TaskGraphError, TaskGraphIncompatibleFormatError, WorkerError, WorkerNotFoundError } from "./errors-
|
|
5
|
+
import { BudgetExceededError, GitError, RecoveryError, TaskConfigError, TaskGraphCycleError, TaskGraphError, TaskGraphIncompatibleFormatError, WorkerError, WorkerNotFoundError } from "./errors-7UL0-Lga.js";
|
|
6
6
|
|
|
7
7
|
//#region src/core/di.ts
|
|
8
8
|
/**
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createLogger } from "./logger-KeHncl-f.js";
|
|
2
|
-
import { readCurrentRunId, resolveMainRepoRoot } from "./manifest-read-
|
|
2
|
+
import { readCurrentRunId, resolveMainRepoRoot } from "./manifest-read-96wMXd5A.js";
|
|
3
3
|
import { join } from "node:path";
|
|
4
4
|
import { mkdir, readFile, writeFile } from "node:fs/promises";
|
|
5
5
|
import * as readline from "node:readline";
|
|
@@ -180,4 +180,4 @@ async function runInteractivePrompt(decisionContext) {
|
|
|
180
180
|
|
|
181
181
|
//#endregion
|
|
182
182
|
export { runInteractivePrompt };
|
|
183
|
-
//# sourceMappingURL=interactive-prompt-
|
|
183
|
+
//# sourceMappingURL=interactive-prompt-El7WVSY2.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createLogger } from "./logger-KeHncl-f.js";
|
|
2
|
-
import { LEARNING_FINDING, createDecision, getDecisionsByCategory } from "./dist-
|
|
2
|
+
import { LEARNING_FINDING, createDecision, getDecisionsByCategory } from "./dist-DnVfCiro.js";
|
|
3
3
|
import * as path$1 from "path";
|
|
4
4
|
import { join } from "path";
|
|
5
5
|
import { readFile } from "fs/promises";
|
|
@@ -5845,4 +5845,4 @@ async function resolveRunManifest(dbRoot, runId) {
|
|
|
5845
5845
|
|
|
5846
5846
|
//#endregion
|
|
5847
5847
|
export { FindingsInjector, RunManifest, RuntimeProbeListSchema, SupervisorLock, ZERO_FINDINGS_BY_AUTHOR, ZERO_FINDING_COUNTS, ZERO_PROBE_AUTHOR_METRICS, aggregateProbeAuthorMetrics, applyConfigToGraph, createDefaultVerificationPipeline, createGraphOrchestrator, createSdlcCodeReviewHandler, createSdlcCreateStoryHandler, createSdlcDevStoryHandler, createSdlcPhaseHandler, detectsEventDrivenAC, detectsStateIntegratingAC, extractTargetFilesFromStoryContent, parseRuntimeProbes, readCurrentRunId, renderFindings, resolveGraphPath, resolveMainRepoRoot, resolveRunManifest, rollupFindingCounts, rollupFindingsByAuthor, rollupProbeAuthorByClass, rollupProbeAuthorMetrics, runAcTraceabilityCheck, runStaleVerificationRecovery };
|
|
5848
|
-
//# sourceMappingURL=manifest-read-
|
|
5848
|
+
//# sourceMappingURL=manifest-read-96wMXd5A.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import "../../logger-KeHncl-f.js";
|
|
2
|
-
import "../../dist-
|
|
3
|
-
import "../../manifest-read-
|
|
4
|
-
import { runInteractivePrompt } from "../../interactive-prompt-
|
|
2
|
+
import "../../dist-DnVfCiro.js";
|
|
3
|
+
import "../../manifest-read-96wMXd5A.js";
|
|
4
|
+
import { runInteractivePrompt } from "../../interactive-prompt-El7WVSY2.js";
|
|
5
5
|
|
|
6
6
|
export { runInteractivePrompt };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ModelRoutingConfigSchema, ProviderPolicySchema, RoutingConfigError, RoutingRecommender, RoutingResolver, RoutingTelemetry, RoutingTokenAccumulator, RoutingTuner, TASK_TYPE_PHASE_MAP, getModelTier, loadModelRoutingConfig } from "./dist-
|
|
1
|
+
import { ModelRoutingConfigSchema, ProviderPolicySchema, RoutingConfigError, RoutingRecommender, RoutingResolver, RoutingTelemetry, RoutingTokenAccumulator, RoutingTuner, TASK_TYPE_PHASE_MAP, getModelTier, loadModelRoutingConfig } from "./dist-DnVfCiro.js";
|
|
2
2
|
import "./routing-DFxoKHDt.js";
|
|
3
3
|
|
|
4
4
|
export { loadModelRoutingConfig };
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { BMAD_BASELINE_TOKENS_FULL, DoltMergeConflict, FileStateStore, STOP_AFTER_VALID_PHASES, STORY_KEY_PATTERN, VALID_PHASES, __commonJS, __require, __toESM, buildPipelineStatusOutput, createDatabaseAdapter, formatOutput, formatPipelineSummary, formatTokenTelemetry, inspectProcessTree, parseDbTimestampAsUtc, validateStoryKey } from "./health-
|
|
1
|
+
import { BMAD_BASELINE_TOKENS_FULL, DoltMergeConflict, FileStateStore, STOP_AFTER_VALID_PHASES, STORY_KEY_PATTERN, VALID_PHASES, __commonJS, __require, __toESM, buildPipelineStatusOutput, createDatabaseAdapter, formatOutput, formatPipelineSummary, formatTokenTelemetry, inspectProcessTree, parseDbTimestampAsUtc, validateStoryKey } from "./health-DmvwKjP5.js";
|
|
2
2
|
import { createLogger } from "./logger-KeHncl-f.js";
|
|
3
3
|
import { TypedEventBusImpl, createEventBus, createTuiApp, isTuiCapable, printNonTtyWarning, sleep } from "./helpers-CElYrONe.js";
|
|
4
|
-
import { ADVISORY_NOTES, Categorizer, ConsumerAnalyzer, DEFAULT_GLOBAL_SETTINGS, DispatcherImpl, DoltClient, ESCALATION_DIAGNOSIS, EXPERIMENT_RESULT, EfficiencyScorer, IngestionServer, LogTurnAnalyzer, OPERATIONAL_FINDING, Recommender, RoutingRecommender, RoutingResolver, RoutingTelemetry, RoutingTokenAccumulator, RoutingTuner, STORY_METRICS, STORY_OUTCOME, SubstrateConfigSchema, TEST_EXPANSION_FINDING, TEST_PLAN, TelemetryNormalizer, TelemetryPipeline, TurnAnalyzer, addTokenUsage, aggregateTokenUsageForRun, aggregateTokenUsageForStory, callLLM, classifyVersionGap, createConfigSystem, createDatabaseAdapter$1, createDecision, createPipelineRun, createRequirement, detectInterfaceChanges, getArtifactByTypeForRun, getArtifactsByRun, getDecisionsByCategory, getDecisionsByPhase, getDecisionsByPhaseForRun, getLatestRun, getPipelineRunById, getRunMetrics, getRunningPipelineRuns, getStoryMetricsForRun, getTokenUsageSummary, initSchema, listRequirements, loadModelRoutingConfig, registerArtifact, swallowDebug, updatePipelineRun, updatePipelineRunConfig, upsertDecision, writeRunMetrics, writeStoryMetrics } from "./dist-
|
|
5
|
-
import { FindingsInjector, RunManifest, RuntimeProbeListSchema, applyConfigToGraph, createDefaultVerificationPipeline, createGraphOrchestrator, createSdlcCodeReviewHandler, createSdlcCreateStoryHandler, createSdlcDevStoryHandler, createSdlcPhaseHandler, detectsEventDrivenAC, detectsStateIntegratingAC, extractTargetFilesFromStoryContent, renderFindings, resolveGraphPath, resolveMainRepoRoot, runAcTraceabilityCheck, runStaleVerificationRecovery } from "./manifest-read-
|
|
4
|
+
import { ADVISORY_NOTES, Categorizer, ConsumerAnalyzer, DEFAULT_GLOBAL_SETTINGS, DispatcherImpl, DoltClient, ESCALATION_DIAGNOSIS, EXPERIMENT_RESULT, EfficiencyScorer, IngestionServer, LogTurnAnalyzer, OPERATIONAL_FINDING, Recommender, RoutingRecommender, RoutingResolver, RoutingTelemetry, RoutingTokenAccumulator, RoutingTuner, STORY_METRICS, STORY_OUTCOME, SubstrateConfigSchema, TEST_EXPANSION_FINDING, TEST_PLAN, TelemetryNormalizer, TelemetryPipeline, TurnAnalyzer, addTokenUsage, aggregateTokenUsageForRun, aggregateTokenUsageForStory, callLLM, classifyVersionGap, createConfigSystem, createDatabaseAdapter$1, createDecision, createPipelineRun, createRequirement, detectInterfaceChanges, getArtifactByTypeForRun, getArtifactsByRun, getDecisionsByCategory, getDecisionsByPhase, getDecisionsByPhaseForRun, getLatestRun, getPipelineRunById, getRunMetrics, getRunningPipelineRuns, getStoryMetricsForRun, getTokenUsageSummary, initSchema, listRequirements, loadModelRoutingConfig, registerArtifact, swallowDebug, updatePipelineRun, updatePipelineRunConfig, upsertDecision, writeRunMetrics, writeStoryMetrics } from "./dist-DnVfCiro.js";
|
|
5
|
+
import { FindingsInjector, RunManifest, RuntimeProbeListSchema, applyConfigToGraph, createDefaultVerificationPipeline, createGraphOrchestrator, createSdlcCodeReviewHandler, createSdlcCreateStoryHandler, createSdlcDevStoryHandler, createSdlcPhaseHandler, detectsEventDrivenAC, detectsStateIntegratingAC, extractTargetFilesFromStoryContent, renderFindings, resolveGraphPath, resolveMainRepoRoot, runAcTraceabilityCheck, runStaleVerificationRecovery } from "./manifest-read-96wMXd5A.js";
|
|
6
6
|
import { WorkGraphRepository, detectCycles } from "./work-graph-repository-DZyJv5pV.js";
|
|
7
7
|
import { deriveExitCode, routeDecision } from "./decision-router-DblHY8se.js";
|
|
8
|
-
import { runInteractivePrompt } from "./interactive-prompt-
|
|
8
|
+
import { runInteractivePrompt } from "./interactive-prompt-El7WVSY2.js";
|
|
9
9
|
import { runRecoveryEngine } from "./recovery-engine-BKGBeBnW.js";
|
|
10
10
|
import { basename, dirname, extname, join } from "path";
|
|
11
11
|
import { access, readFile, readdir, stat } from "fs/promises";
|
|
@@ -47137,7 +47137,7 @@ async function runFullPipeline(options) {
|
|
|
47137
47137
|
*/
|
|
47138
47138
|
async function emitPreDispatchVersionAdvisory(currentVersion) {
|
|
47139
47139
|
if (process.env["SUBSTRATE_NO_UPDATE_CHECK"] === "1") return;
|
|
47140
|
-
const { createVersionManager } = await import("./version-manager-impl-
|
|
47140
|
+
const { createVersionManager } = await import("./version-manager-impl-bWaGssmZ.js");
|
|
47141
47141
|
const vm = createVersionManager();
|
|
47142
47142
|
const result = await vm.checkForUpdates(true);
|
|
47143
47143
|
const gap = classifyVersionGap(currentVersion, result.latestVersion);
|
|
@@ -47234,4 +47234,4 @@ function registerRunCommand(program, version = "0.0.0", projectRoot = process.cw
|
|
|
47234
47234
|
|
|
47235
47235
|
//#endregion
|
|
47236
47236
|
export { AdapterTelemetryPersistence, AppError, DoltRepoMapMetaRepository, DoltSymbolRepository, ERR_REPO_MAP_STORAGE_WRITE, EpicIngester, GLOBSTAR$1 as GLOBSTAR, GitClient, GrammarLoader, Minimatch$1 as Minimatch, Minipass, RepoMapInjector, RepoMapModule, RepoMapQueryEngine, RepoMapStorage, SymbolParser, createContextCompiler, createDispatcher, createEventEmitter, createGitWorktreeManager, createImplementationOrchestrator, createPackLoader, createPhaseOrchestrator, createStopAfterGate, createTelemetryAdvisor, escape$1 as escape, formatPhaseCompletionSummary, getFactoryRunSummaries, getScenarioResultsForRun, getTwinRunsForRun, listGraphRuns, normalizeGraphSummaryToStatus, registerExportCommand, registerFactoryCommand, registerRunCommand, registerScenariosCommand, resolveMaxReviewCycles, resolveProbeAuthorStateIntegrating, resolveStoryKeys, runAnalysisPhase, runPlanningPhase, runProbeAuthor, runRunAction, runSolutioningPhase, unescape$1 as unescape, validateStopAfterFromConflict, wireNdjsonEmitter };
|
|
47237
|
-
//# sourceMappingURL=run-
|
|
47237
|
+
//# sourceMappingURL=run-BONrtCkE.js.map
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import "./health-
|
|
1
|
+
import "./health-DmvwKjP5.js";
|
|
2
2
|
import "./logger-KeHncl-f.js";
|
|
3
3
|
import "./helpers-CElYrONe.js";
|
|
4
|
-
import "./dist-
|
|
5
|
-
import { normalizeGraphSummaryToStatus, registerRunCommand, resolveMaxReviewCycles, resolveProbeAuthorStateIntegrating, runRunAction, wireNdjsonEmitter } from "./run-
|
|
6
|
-
import "./manifest-read-
|
|
4
|
+
import "./dist-DnVfCiro.js";
|
|
5
|
+
import { normalizeGraphSummaryToStatus, registerRunCommand, resolveMaxReviewCycles, resolveProbeAuthorStateIntegrating, runRunAction, wireNdjsonEmitter } from "./run-BONrtCkE.js";
|
|
6
|
+
import "./manifest-read-96wMXd5A.js";
|
|
7
7
|
import "./routing-DFxoKHDt.js";
|
|
8
8
|
import "./work-graph-repository-DZyJv5pV.js";
|
|
9
9
|
import "./decisions-CzSIEeGP.js";
|
|
10
10
|
import "./decision-router-DblHY8se.js";
|
|
11
|
-
import "./interactive-prompt-
|
|
11
|
+
import "./interactive-prompt-El7WVSY2.js";
|
|
12
12
|
import "./recovery-engine-BKGBeBnW.js";
|
|
13
13
|
|
|
14
14
|
export { runRunAction };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import "./dist-
|
|
1
|
+
import "./dist-DnVfCiro.js";
|
|
2
2
|
import "./version-manager-impl-qFBiO4Eh.js";
|
|
3
|
-
import { isGlobalInstall, registerUpgradeCommand, runUpgradeCommand } from "./upgrade-
|
|
3
|
+
import { isGlobalInstall, registerUpgradeCommand, runUpgradeCommand } from "./upgrade-DalCYA_U.js";
|
|
4
4
|
|
|
5
5
|
export { isGlobalInstall, registerUpgradeCommand, runUpgradeCommand };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createVersionManager } from "./dist-
|
|
1
|
+
import { createVersionManager } from "./dist-DnVfCiro.js";
|
|
2
2
|
import { execSync, spawn } from "child_process";
|
|
3
3
|
import * as readline from "readline";
|
|
4
4
|
|
|
@@ -123,4 +123,4 @@ function registerUpgradeCommand(program) {
|
|
|
123
123
|
|
|
124
124
|
//#endregion
|
|
125
125
|
export { isGlobalInstall, registerUpgradeCommand, runUpgradeCommand };
|
|
126
|
-
//# sourceMappingURL=upgrade-
|
|
126
|
+
//# sourceMappingURL=upgrade-DalCYA_U.js.map
|
package/package.json
CHANGED