@structured-vibe-coding/core 0.22.0 → 0.23.0
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/{agents-EDCIINXG.js → agents-SEF4S6EW.js} +3 -3
- package/dist/{chunk-WCYVBZC4.js → chunk-GP477MAV.js} +2 -2
- package/dist/{chunk-XHNO536D.js → chunk-KMITXC7I.js} +5 -5
- package/dist/{chunk-47GWMUCR.js → chunk-OY47H6R5.js} +1 -1
- package/dist/{chunk-RXVTVLCJ.js → chunk-PFJFWZOM.js} +1 -1
- package/dist/{chunk-QE6RMJUS.js → chunk-RXQH2THQ.js} +2 -2
- package/dist/{gather-ZK722X65.js → gather-DDUZEIQZ.js} +2 -2
- package/dist/{greenfield-E5CHDQPH.js → greenfield-6I2ML2ZB.js} +3 -3
- package/dist/index.d.ts +2 -0
- package/dist/index.js +25 -7
- package/package.json +1 -1
|
@@ -26,10 +26,10 @@ import {
|
|
|
26
26
|
renderProtocolMd,
|
|
27
27
|
renderThinAgent,
|
|
28
28
|
writeAgentHandoff
|
|
29
|
-
} from "./chunk-
|
|
30
|
-
import "./chunk-
|
|
29
|
+
} from "./chunk-GP477MAV.js";
|
|
30
|
+
import "./chunk-RXQH2THQ.js";
|
|
31
31
|
import "./chunk-TNWFMRIA.js";
|
|
32
|
-
import "./chunk-
|
|
32
|
+
import "./chunk-OY47H6R5.js";
|
|
33
33
|
import "./chunk-4BRO7BOJ.js";
|
|
34
34
|
import "./chunk-O5SP6X5R.js";
|
|
35
35
|
export {
|
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
loadConfig,
|
|
7
7
|
readRole,
|
|
8
8
|
readTeamConfig
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-RXQH2THQ.js";
|
|
10
10
|
import {
|
|
11
11
|
buildContext,
|
|
12
12
|
defaultMemoryDir,
|
|
@@ -14,7 +14,7 @@ import {
|
|
|
14
14
|
} from "./chunk-TNWFMRIA.js";
|
|
15
15
|
import {
|
|
16
16
|
SddError
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-OY47H6R5.js";
|
|
18
18
|
import {
|
|
19
19
|
configPath,
|
|
20
20
|
guidancePaths,
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
gitUserName,
|
|
5
5
|
loadConfig,
|
|
6
6
|
readTeamConfig
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-RXQH2THQ.js";
|
|
8
8
|
import {
|
|
9
9
|
ChangeMetaSchema,
|
|
10
10
|
activeStages,
|
|
@@ -1025,7 +1025,7 @@ async function createChange(input) {
|
|
|
1025
1025
|
await materializeStageArtifacts(projectRoot, config, id, workflow, meta, firstStage);
|
|
1026
1026
|
await setActiveChange(projectRoot, config, id);
|
|
1027
1027
|
try {
|
|
1028
|
-
const { refreshActiveAgentContext } = await import("./agents-
|
|
1028
|
+
const { refreshActiveAgentContext } = await import("./agents-SEF4S6EW.js");
|
|
1029
1029
|
await refreshActiveAgentContext(projectRoot);
|
|
1030
1030
|
} catch {
|
|
1031
1031
|
}
|
|
@@ -1127,7 +1127,7 @@ async function advanceStage(projectRoot, config, changeId, opts) {
|
|
|
1127
1127
|
stage2
|
|
1128
1128
|
);
|
|
1129
1129
|
try {
|
|
1130
|
-
const { refreshActiveAgentContext } = await import("./agents-
|
|
1130
|
+
const { refreshActiveAgentContext } = await import("./agents-SEF4S6EW.js");
|
|
1131
1131
|
await refreshActiveAgentContext(projectRoot);
|
|
1132
1132
|
} catch {
|
|
1133
1133
|
}
|
|
@@ -1184,7 +1184,7 @@ async function advanceStage(projectRoot, config, changeId, opts) {
|
|
|
1184
1184
|
stage
|
|
1185
1185
|
);
|
|
1186
1186
|
try {
|
|
1187
|
-
const { refreshActiveAgentContext } = await import("./agents-
|
|
1187
|
+
const { refreshActiveAgentContext } = await import("./agents-SEF4S6EW.js");
|
|
1188
1188
|
await refreshActiveAgentContext(projectRoot);
|
|
1189
1189
|
} catch {
|
|
1190
1190
|
}
|
|
@@ -1317,7 +1317,7 @@ async function completeChange(projectRoot, config, changeId) {
|
|
|
1317
1317
|
let promoted;
|
|
1318
1318
|
if (ctx.meta.workflow === "greenfield" || ctx.meta.flags?.greenfield === true) {
|
|
1319
1319
|
try {
|
|
1320
|
-
const { promoteGreenfieldToMemory: promoteGreenfieldToMemory2 } = await import("./greenfield-
|
|
1320
|
+
const { promoteGreenfieldToMemory: promoteGreenfieldToMemory2 } = await import("./greenfield-6I2ML2ZB.js");
|
|
1321
1321
|
promoted = await promoteGreenfieldToMemory2(projectRoot, config, changeId);
|
|
1322
1322
|
} catch {
|
|
1323
1323
|
}
|
|
@@ -38,7 +38,7 @@ function toProcessEnv(base, extra) {
|
|
|
38
38
|
}
|
|
39
39
|
|
|
40
40
|
// src/version.ts
|
|
41
|
-
var SDD_CORE_VERSION = "0.
|
|
41
|
+
var SDD_CORE_VERSION = "0.23.0" ? "0.23.0" : "0.0.0-dev";
|
|
42
42
|
|
|
43
43
|
// src/mcp/client.ts
|
|
44
44
|
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
|
|
@@ -9,7 +9,7 @@ import {
|
|
|
9
9
|
SddError,
|
|
10
10
|
callMcpSourceTool,
|
|
11
11
|
mcpTimeoutMs
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-OY47H6R5.js";
|
|
13
13
|
import {
|
|
14
14
|
loadMcpConfig
|
|
15
15
|
} from "./chunk-4BRO7BOJ.js";
|
|
@@ -3505,7 +3505,7 @@ async function buildAgentPrompt(ctx, config, projectRoot, budget, runtime) {
|
|
|
3505
3505
|
}
|
|
3506
3506
|
try {
|
|
3507
3507
|
const { loadMcpConfig: loadMcpConfig2 } = await import("./sources-3TXUPU6V.js");
|
|
3508
|
-
const { gatherMcpContextForChange, formatMcpContextForHandoff } = await import("./gather-
|
|
3508
|
+
const { gatherMcpContextForChange, formatMcpContextForHandoff } = await import("./gather-DDUZEIQZ.js");
|
|
3509
3509
|
const mcpCfg = await loadMcpConfig2(projectRoot);
|
|
3510
3510
|
if (mcpCfg.auto_fetch_on_handoff && mcpCfg.sources.length) {
|
|
3511
3511
|
const fetched = await gatherMcpContextForChange(projectRoot, ctx);
|
|
@@ -3,8 +3,8 @@ import {
|
|
|
3
3
|
gatherMcpContext,
|
|
4
4
|
gatherMcpContextForChange,
|
|
5
5
|
listMatchingSourceIds
|
|
6
|
-
} from "./chunk-
|
|
7
|
-
import "./chunk-
|
|
6
|
+
} from "./chunk-PFJFWZOM.js";
|
|
7
|
+
import "./chunk-OY47H6R5.js";
|
|
8
8
|
import "./chunk-4BRO7BOJ.js";
|
|
9
9
|
import "./chunk-O5SP6X5R.js";
|
|
10
10
|
export {
|
|
@@ -6,10 +6,10 @@ import {
|
|
|
6
6
|
startFeatureFromBacklog,
|
|
7
7
|
startGreenfield,
|
|
8
8
|
updateFeatureStatus
|
|
9
|
-
} from "./chunk-
|
|
10
|
-
import "./chunk-
|
|
9
|
+
} from "./chunk-KMITXC7I.js";
|
|
10
|
+
import "./chunk-RXQH2THQ.js";
|
|
11
11
|
import "./chunk-TNWFMRIA.js";
|
|
12
|
-
import "./chunk-
|
|
12
|
+
import "./chunk-OY47H6R5.js";
|
|
13
13
|
import "./chunk-4BRO7BOJ.js";
|
|
14
14
|
import "./chunk-O5SP6X5R.js";
|
|
15
15
|
export {
|
package/dist/index.d.ts
CHANGED
|
@@ -3398,6 +3398,8 @@ declare function readConnector(input: {
|
|
|
3398
3398
|
connector: string;
|
|
3399
3399
|
record: string;
|
|
3400
3400
|
source?: IssueSource;
|
|
3401
|
+
projectRoot?: string;
|
|
3402
|
+
config?: Config;
|
|
3401
3403
|
}): Promise<RoleCommandResult>;
|
|
3402
3404
|
declare function runRoutine(root: string, roleName: string, routineName: string, source?: IssueSource): Promise<RoleCommandResult>;
|
|
3403
3405
|
|
package/dist/index.js
CHANGED
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
gatherMcpContextForChange,
|
|
6
6
|
listMatchingSourceIds,
|
|
7
7
|
matchMcpSources
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-PFJFWZOM.js";
|
|
9
9
|
import {
|
|
10
10
|
AGENT_INTEGRATIONS,
|
|
11
11
|
AGENT_TARGET_OPTIONS,
|
|
@@ -47,7 +47,7 @@ import {
|
|
|
47
47
|
renderThinAgent,
|
|
48
48
|
saveGeneratedManifest,
|
|
49
49
|
writeAgentHandoff
|
|
50
|
-
} from "./chunk-
|
|
50
|
+
} from "./chunk-GP477MAV.js";
|
|
51
51
|
import {
|
|
52
52
|
ChangeMetricsSchema,
|
|
53
53
|
DecisionMetricSchema,
|
|
@@ -81,7 +81,7 @@ import {
|
|
|
81
81
|
switchWorkflow,
|
|
82
82
|
transitionPhase,
|
|
83
83
|
updateFeatureStatus
|
|
84
|
-
} from "./chunk-
|
|
84
|
+
} from "./chunk-KMITXC7I.js";
|
|
85
85
|
import {
|
|
86
86
|
EMBEDDINGS_UNAVAILABLE,
|
|
87
87
|
EMBEDDING_MODEL,
|
|
@@ -173,7 +173,7 @@ import {
|
|
|
173
173
|
splitFrontmatter,
|
|
174
174
|
workKind,
|
|
175
175
|
writePackedCache
|
|
176
|
-
} from "./chunk-
|
|
176
|
+
} from "./chunk-RXQH2THQ.js";
|
|
177
177
|
import {
|
|
178
178
|
ArtifactDefSchema,
|
|
179
179
|
ChangeMetaSchema,
|
|
@@ -228,7 +228,7 @@ import {
|
|
|
228
228
|
mcpTimeoutMs,
|
|
229
229
|
toProcessEnv,
|
|
230
230
|
withMcpSource
|
|
231
|
-
} from "./chunk-
|
|
231
|
+
} from "./chunk-OY47H6R5.js";
|
|
232
232
|
import {
|
|
233
233
|
McpConfigSchema,
|
|
234
234
|
McpInvokeSchema,
|
|
@@ -6208,6 +6208,9 @@ function missingLine(number) {
|
|
|
6208
6208
|
function unreadLine(number) {
|
|
6209
6209
|
return `GitHub issue ${number} could not be read.`;
|
|
6210
6210
|
}
|
|
6211
|
+
function couldNotOpen(number) {
|
|
6212
|
+
return `A change could not be opened for GitHub issue ${number}.`;
|
|
6213
|
+
}
|
|
6211
6214
|
function cleanLine(value) {
|
|
6212
6215
|
if (typeof value !== "string") return null;
|
|
6213
6216
|
const text2 = value.trim();
|
|
@@ -6273,7 +6276,7 @@ async function readConnector(input) {
|
|
|
6273
6276
|
const connector = input.connector.trim();
|
|
6274
6277
|
const record = input.record.trim();
|
|
6275
6278
|
if (connector === "x") return fail9(X_LINE);
|
|
6276
|
-
if (verb !== "read") return fail9(DOES_NOT_RUN);
|
|
6279
|
+
if (verb !== "read" && verb !== "seed") return fail9(DOES_NOT_RUN);
|
|
6277
6280
|
if (connector !== "github-issue") return fail9(NOT_IN_SLICE);
|
|
6278
6281
|
const number = positiveInteger(record);
|
|
6279
6282
|
if (number === null) return fail9(BAD_NUMBER);
|
|
@@ -6289,7 +6292,22 @@ async function readConnector(input) {
|
|
|
6289
6292
|
const title = cleanLine(read.issue.title);
|
|
6290
6293
|
const state = cleanLine(read.issue.state);
|
|
6291
6294
|
if (!title || !state) return fail9(unreadLine(number));
|
|
6292
|
-
return ok9(threeLines({ number, title, state }));
|
|
6295
|
+
if (verb === "read") return ok9(threeLines({ number, title, state }));
|
|
6296
|
+
if (!input.projectRoot || !input.config) return fail9(couldNotOpen(number));
|
|
6297
|
+
try {
|
|
6298
|
+
const ctx = await createChange({
|
|
6299
|
+
projectRoot: input.projectRoot,
|
|
6300
|
+
config: input.config,
|
|
6301
|
+
title,
|
|
6302
|
+
workflowName: "feature",
|
|
6303
|
+
epic: `issue-${number}`
|
|
6304
|
+
});
|
|
6305
|
+
return ok9(`${number}
|
|
6306
|
+
${ctx.id}
|
|
6307
|
+
${ctx.meta.stage}`);
|
|
6308
|
+
} catch {
|
|
6309
|
+
return fail9(couldNotOpen(number));
|
|
6310
|
+
}
|
|
6293
6311
|
}
|
|
6294
6312
|
function classifyRoutines(value) {
|
|
6295
6313
|
if (!Array.isArray(value)) return { ok: false, reason: "invalid" };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@structured-vibe-coding/core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.23.0",
|
|
4
4
|
"description": "Core engine for sdd — Spec-Driven Development workflows, change packs, greenfield, and AI agent handoff (used by the sdd CLI)",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|