gsd-pi 2.30.0 → 2.31.0-dev.6ffc032
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/cli.js +51 -0
- package/dist/help-text.js +35 -0
- package/dist/resources/extensions/aws-auth/index.ts +144 -0
- package/dist/resources/extensions/gsd/auto-dashboard.ts +65 -186
- package/dist/resources/extensions/gsd/auto-prompts.ts +2 -10
- package/dist/resources/extensions/gsd/auto-start.ts +3 -10
- package/dist/resources/extensions/gsd/auto-supervisor.ts +2 -0
- package/dist/resources/extensions/gsd/auto-worktree.ts +12 -8
- package/dist/resources/extensions/gsd/auto.ts +2 -2
- package/dist/resources/extensions/gsd/commands-prefs-wizard.ts +2 -12
- package/dist/resources/extensions/gsd/docs/preferences-reference.md +2 -4
- package/dist/resources/extensions/gsd/git-service.ts +4 -22
- package/dist/resources/extensions/gsd/gitignore.ts +6 -7
- package/dist/resources/extensions/gsd/guided-flow-queue.ts +3 -7
- package/dist/resources/extensions/gsd/guided-flow.ts +8 -11
- package/dist/resources/extensions/gsd/index.ts +13 -0
- package/dist/resources/extensions/gsd/init-wizard.ts +2 -30
- package/dist/resources/extensions/gsd/preferences-types.ts +0 -2
- package/dist/resources/extensions/gsd/preferences-validation.ts +1 -2
- package/dist/resources/extensions/gsd/roadmap-slices.ts +22 -7
- package/dist/resources/extensions/gsd/session-lock.ts +72 -5
- package/dist/resources/extensions/gsd/templates/preferences.md +0 -1
- package/dist/resources/extensions/gsd/tests/git-service.test.ts +14 -42
- package/dist/resources/extensions/gsd/tests/plan-slice-prompt.test.ts +3 -9
- package/dist/resources/extensions/gsd/tests/preferences.test.ts +1 -9
- package/dist/resources/extensions/gsd/tests/worktree.test.ts +1 -4
- package/dist/resources/extensions/gsd/worktree.ts +2 -2
- package/dist/worktree-cli.d.ts +34 -0
- package/dist/worktree-cli.js +294 -0
- package/dist/worktree-name-gen.d.ts +7 -0
- package/dist/worktree-name-gen.js +44 -0
- package/package.json +1 -1
- package/packages/pi-coding-agent/dist/core/agent-session.d.ts.map +1 -1
- package/packages/pi-coding-agent/dist/core/agent-session.js +14 -0
- package/packages/pi-coding-agent/dist/core/agent-session.js.map +1 -1
- package/packages/pi-coding-agent/dist/core/extensions/loader.d.ts.map +1 -1
- package/packages/pi-coding-agent/dist/core/extensions/loader.js +4 -0
- package/packages/pi-coding-agent/dist/core/extensions/loader.js.map +1 -1
- package/packages/pi-coding-agent/dist/core/extensions/runner.d.ts.map +1 -1
- package/packages/pi-coding-agent/dist/core/extensions/runner.js +1 -0
- package/packages/pi-coding-agent/dist/core/extensions/runner.js.map +1 -1
- package/packages/pi-coding-agent/dist/core/extensions/types.d.ts +7 -0
- package/packages/pi-coding-agent/dist/core/extensions/types.d.ts.map +1 -1
- package/packages/pi-coding-agent/dist/core/extensions/types.js.map +1 -1
- package/packages/pi-coding-agent/package.json +1 -1
- package/packages/pi-coding-agent/src/core/agent-session.ts +14 -0
- package/packages/pi-coding-agent/src/core/extensions/loader.ts +5 -0
- package/packages/pi-coding-agent/src/core/extensions/runner.ts +1 -0
- package/packages/pi-coding-agent/src/core/extensions/types.ts +8 -0
- package/pkg/package.json +1 -1
- package/src/resources/extensions/aws-auth/index.ts +144 -0
- package/src/resources/extensions/gsd/auto-dashboard.ts +65 -186
- package/src/resources/extensions/gsd/auto-prompts.ts +2 -10
- package/src/resources/extensions/gsd/auto-start.ts +3 -10
- package/src/resources/extensions/gsd/auto-supervisor.ts +2 -0
- package/src/resources/extensions/gsd/auto-worktree.ts +12 -8
- package/src/resources/extensions/gsd/auto.ts +2 -2
- package/src/resources/extensions/gsd/commands-prefs-wizard.ts +2 -12
- package/src/resources/extensions/gsd/docs/preferences-reference.md +2 -4
- package/src/resources/extensions/gsd/git-service.ts +4 -22
- package/src/resources/extensions/gsd/gitignore.ts +6 -7
- package/src/resources/extensions/gsd/guided-flow-queue.ts +3 -7
- package/src/resources/extensions/gsd/guided-flow.ts +8 -11
- package/src/resources/extensions/gsd/index.ts +13 -0
- package/src/resources/extensions/gsd/init-wizard.ts +2 -30
- package/src/resources/extensions/gsd/preferences-types.ts +0 -2
- package/src/resources/extensions/gsd/preferences-validation.ts +1 -2
- package/src/resources/extensions/gsd/roadmap-slices.ts +22 -7
- package/src/resources/extensions/gsd/session-lock.ts +72 -5
- package/src/resources/extensions/gsd/templates/preferences.md +0 -1
- package/src/resources/extensions/gsd/tests/git-service.test.ts +14 -42
- package/src/resources/extensions/gsd/tests/plan-slice-prompt.test.ts +3 -9
- package/src/resources/extensions/gsd/tests/preferences.test.ts +1 -9
- package/src/resources/extensions/gsd/tests/worktree.test.ts +1 -4
- package/src/resources/extensions/gsd/worktree.ts +2 -2
|
@@ -28,18 +28,12 @@ const BASE_VARS = {
|
|
|
28
28
|
sourceFilePaths: "- **Requirements**: `.gsd/REQUIREMENTS.md`",
|
|
29
29
|
};
|
|
30
30
|
|
|
31
|
-
test("plan-slice prompt: commit
|
|
32
|
-
const result = loadPrompt("plan-slice", { ...BASE_VARS, commitInstruction: "
|
|
33
|
-
assert.ok(result.includes("
|
|
31
|
+
test("plan-slice prompt: commit instruction says do not commit (external state)", () => {
|
|
32
|
+
const result = loadPrompt("plan-slice", { ...BASE_VARS, commitInstruction: "Do not commit planning artifacts — .gsd/ is managed externally." });
|
|
33
|
+
assert.ok(result.includes("Do not commit planning artifacts"));
|
|
34
34
|
assert.ok(!result.includes("{{commitInstruction}}"));
|
|
35
35
|
});
|
|
36
36
|
|
|
37
|
-
test("plan-slice prompt: no commit step when commit_docs=false", () => {
|
|
38
|
-
const result = loadPrompt("plan-slice", { ...BASE_VARS, commitInstruction: "Do not commit — planning docs are not tracked in git for this project." });
|
|
39
|
-
assert.ok(!result.includes("docs(S01): add slice plan"));
|
|
40
|
-
assert.ok(result.includes("Do not commit"));
|
|
41
|
-
});
|
|
42
|
-
|
|
43
37
|
test("plan-slice prompt: all variables substituted", () => {
|
|
44
38
|
const result = loadPrompt("plan-slice", { ...BASE_VARS, commitInstruction: "Commit: `docs(S01): add slice plan`" });
|
|
45
39
|
assert.ok(!result.includes("{{"));
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Preferences tests — consolidated from:
|
|
3
|
-
* - preferences-git.test.ts (git.isolation, git.merge_to_main
|
|
3
|
+
* - preferences-git.test.ts (git.isolation, git.merge_to_main)
|
|
4
4
|
* - preferences-hooks.test.ts (post-unit + pre-dispatch hook config)
|
|
5
5
|
* - preferences-mode.test.ts (solo/team mode defaults, overrides)
|
|
6
6
|
* - preferences-models.test.ts (model config parsing, OpenRouter, CRLF)
|
|
@@ -39,14 +39,6 @@ test("git.merge_to_main produces deprecation warning", () => {
|
|
|
39
39
|
}
|
|
40
40
|
});
|
|
41
41
|
|
|
42
|
-
test("git.commit_docs accepts boolean, rejects string", () => {
|
|
43
|
-
const { errors: e1, preferences: p1 } = validatePreferences({ git: { commit_docs: false } });
|
|
44
|
-
assert.equal(e1.length, 0);
|
|
45
|
-
assert.equal(p1.git?.commit_docs, false);
|
|
46
|
-
|
|
47
|
-
const { errors: e2 } = validatePreferences({ git: { commit_docs: "no" as any } });
|
|
48
|
-
assert.ok(e2.length > 0);
|
|
49
|
-
});
|
|
50
42
|
|
|
51
43
|
test("getIsolationMode defaults to worktree when no prefs file", { skip: "requires no global ~/.gsd/preferences.md" }, () => {
|
|
52
44
|
assert.equal(getIsolationMode(), "worktree");
|
|
@@ -108,10 +108,7 @@ async function main(): Promise<void> {
|
|
|
108
108
|
assertEq(readIntegrationBranch(repo, "M001"), "f-123-thing",
|
|
109
109
|
"captureIntegrationBranch records the current branch");
|
|
110
110
|
|
|
111
|
-
//
|
|
112
|
-
const logOut = run("git log --oneline -1", repo);
|
|
113
|
-
assertTrue(logOut.includes("integration branch"), "metadata committed to git");
|
|
114
|
-
|
|
111
|
+
// .gsd/ metadata is written to disk only (not committed) since commit_docs removal
|
|
115
112
|
rmSync(repo, { recursive: true, force: true });
|
|
116
113
|
}
|
|
117
114
|
|
|
@@ -56,13 +56,13 @@ export function setActiveMilestoneId(basePath: string, milestoneId: string | nul
|
|
|
56
56
|
* record when the user starts from a different branch (#300). Always a no-op
|
|
57
57
|
* if on a GSD slice branch.
|
|
58
58
|
*/
|
|
59
|
-
export function captureIntegrationBranch(basePath: string, milestoneId: string
|
|
59
|
+
export function captureIntegrationBranch(basePath: string, milestoneId: string): void {
|
|
60
60
|
// In a worktree, the base branch is implicit (worktree/<name>).
|
|
61
61
|
// Writing it to META.json would leave stale metadata after merge back to main.
|
|
62
62
|
if (detectWorktreeName(basePath)) return;
|
|
63
63
|
const svc = getService(basePath);
|
|
64
64
|
const current = svc.getCurrentBranch();
|
|
65
|
-
writeIntegrationBranch(basePath, milestoneId, current
|
|
65
|
+
writeIntegrationBranch(basePath, milestoneId, current);
|
|
66
66
|
}
|
|
67
67
|
|
|
68
68
|
// ─── Pure Utility Functions (unchanged) ────────────────────────────────────
|