@speclife/cli 0.8.0 → 0.9.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/index.js +17 -5
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/templates/commands/retrofit.md +308 -0
- package/templates/commands/ship.md +21 -5
package/dist/index.js
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* This CLI provides git operations for CI/scripting.
|
|
8
8
|
*/
|
|
9
9
|
import { Command } from 'commander';
|
|
10
|
-
import { readFile, writeFile, mkdir, access, symlink, unlink } from 'fs/promises';
|
|
10
|
+
import { readFile, writeFile, mkdir, access, symlink, unlink, readdir } from 'fs/promises';
|
|
11
11
|
import { join, dirname } from 'path';
|
|
12
12
|
import { fileURLToPath } from 'url';
|
|
13
13
|
import { loadConfig, createGitAdapter, createOpenSpecAdapter, worktreeCreate, worktreeRemove, worktreeList, statusWorkflow, } from '@speclife/core';
|
|
@@ -102,8 +102,11 @@ git:
|
|
|
102
102
|
console.log(`✓ ${specDir}/commands/speclife/ already exists`);
|
|
103
103
|
}
|
|
104
104
|
// Copy slash command templates (from templates embedded in package)
|
|
105
|
-
const slashCommands = ['setup', 'start', 'implement', 'ship', 'land', 'release', 'sync', 'convert'];
|
|
106
105
|
const templatesDir = join(__dirname, '..', 'templates', 'commands');
|
|
106
|
+
const templateFiles = await readdir(templatesDir);
|
|
107
|
+
const slashCommands = templateFiles
|
|
108
|
+
.filter(f => f.endsWith('.md'))
|
|
109
|
+
.map(f => f.replace('.md', ''));
|
|
107
110
|
let copiedCount = 0;
|
|
108
111
|
let skippedCount = 0;
|
|
109
112
|
const errors = [];
|
|
@@ -278,13 +281,22 @@ async function configureEditorSymlinks(cwd, specDir, force) {
|
|
|
278
281
|
{ name: 'Claude Code', dir: '.claude' },
|
|
279
282
|
];
|
|
280
283
|
const sourceDir = join(cwd, specDir, 'commands', 'speclife');
|
|
281
|
-
|
|
284
|
+
// Dynamically discover commands from source directory
|
|
285
|
+
let slashCommands = [];
|
|
286
|
+
try {
|
|
287
|
+
const files = await readdir(sourceDir);
|
|
288
|
+
slashCommands = files
|
|
289
|
+
.filter(f => f.endsWith('.md'))
|
|
290
|
+
.map(f => f.replace('.md', ''));
|
|
291
|
+
}
|
|
292
|
+
catch {
|
|
293
|
+
// Source directory doesn't exist yet, skip symlinks
|
|
294
|
+
return;
|
|
295
|
+
}
|
|
282
296
|
for (const editor of editors) {
|
|
283
297
|
const editorCommandsDir = join(cwd, editor.dir, 'commands', 'speclife');
|
|
284
298
|
const editorCommandsBase = join(cwd, editor.dir, 'commands');
|
|
285
299
|
try {
|
|
286
|
-
// Check if source commands exist
|
|
287
|
-
await access(sourceDir);
|
|
288
300
|
// Create editor commands directory
|
|
289
301
|
await mkdir(editorCommandsBase, { recursive: true });
|
|
290
302
|
// Create symlink for speclife/ directory (or update if force)
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;;GAMG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3F,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,qBAAqB,EACrB,cAAc,EACd,cAAc,EACd,YAAY,EACZ,cAAc,GAEf,MAAM,gBAAgB,CAAC;AAExB,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,gCAAgC;AAChC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACtC,IAAI,OAAO,GAAG,OAAO,CAAC;AACtB,IAAI,CAAC;IACH,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;IACtD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IACzD,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;AACxB,CAAC;AAAC,MAAM,CAAC;IACP,sBAAsB;AACxB,CAAC;AAED,OAAO;KACJ,IAAI,CAAC,UAAU,CAAC;KAChB,WAAW,CAAC,mDAAmD,CAAC;KAChE,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,gFAAgF;AAChF,yCAAyC;AACzC,gFAAgF;AAEhF,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,mDAAmD,CAAC;KAChE,MAAM,CAAC,SAAS,EAAE,kCAAkC,CAAC;KACrD,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAE1B,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;QAE7C,wBAAwB;QACxB,IAAI,OAAO,GAAG,UAAU,CAAC;QACzB,KAAK,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,CAAC;YACxC,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;gBAC7B,OAAO,GAAG,GAAG,CAAC;gBACd,OAAO,CAAC,GAAG,CAAC,WAAW,GAAG,aAAa,CAAC,CAAC;gBACzC,MAAM;YACR,CAAC;YAAC,MAAM,CAAC;gBACP,oBAAoB;YACtB,CAAC;QACH,CAAC;QAED,yBAAyB;QACzB,MAAM,GAAG,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,UAAU,GAAG,MAAM,CAAC;QACxB,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,aAAa,EAAE,CAAC;YAC3C,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxB,UAAU,GAAG,MAAM,CAAC,CAAC,UAAU;YACjC,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,cAAc;QAChB,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,+BAA+B,UAAU,EAAE,CAAC,CAAC;QAEzD,0BAA0B;QAC1B,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;QACjD,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;YACzB,YAAY,GAAG,IAAI,CAAC;QACtB,CAAC;QAAC,MAAM,CAAC;YACP,qBAAqB;QACvB,CAAC;QAED,IAAI,CAAC,YAAY,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YACnC,MAAM,aAAa,GAAG;;;WAGnB,OAAO;;;gBAGF,UAAU;;;CAGzB,CAAC;YACM,MAAM,SAAS,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;YAC3C,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;QAC5C,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,8DAA8D,CAAC,CAAC;QAC9E,CAAC;QAED,kCAAkC;QAClC,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;QAC/D,IAAI,CAAC;YACH,MAAM,KAAK,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC9C,OAAO,CAAC,GAAG,CAAC,aAAa,OAAO,qBAAqB,CAAC,CAAC;QACzD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,GAAG,CAAC,KAAK,OAAO,oCAAoC,CAAC,CAAC;QAChE,CAAC;QAED,oEAAoE;QACpE,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;QACpE,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,CAAC;QAClD,MAAM,aAAa,GAAG,aAAa;aAChC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;aAC9B,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;QAElC,IAAI,WAAW,GAAG,CAAC,CAAC;QACpB,IAAI,YAAY,GAAG,CAAC,CAAC;QACrB,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;YAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,GAAG,GAAG,KAAK,CAAC,CAAC;YAChD,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACvB,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;oBACnB,YAAY,EAAE,CAAC;oBACf,SAAS,CAAC,gBAAgB;gBAC5B,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,gCAAgC;YAClC,CAAC;YAED,6BAA6B;YAC7B,IAAI,CAAC;gBACH,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,EAAE,GAAG,GAAG,KAAK,CAAC,CAAC;gBACrD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;gBACtD,MAAM,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBACnC,WAAW,EAAE,CAAC;YAChB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,QAAQ,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC;YACpF,CAAC;QACH,CAAC;QAED,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;YACpB,OAAO,CAAC,GAAG,CAAC,aAAa,WAAW,wBAAwB,OAAO,qBAAqB,CAAC,CAAC;QAC5F,CAAC;QACD,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;YACrB,OAAO,CAAC,GAAG,CAAC,MAAM,YAAY,yDAAyD,CAAC,CAAC;QAC3F,CAAC;QACD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,sBAAsB,MAAM,CAAC,MAAM,eAAe,CAAC,CAAC;YAChE,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;gBACzB,OAAO,CAAC,GAAG,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC;QAED,yCAAyC;QACzC,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;QACzD,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,cAAc,CAAC,CAAC;YAC7B,OAAO,CAAC,GAAG,CAAC,KAAK,OAAO,6BAA6B,CAAC,CAAC;QACzD,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,iBAAiB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;MA0B5B,OAAO;MACP,OAAO;;;;;;;CAOZ,CAAC;YACM,MAAM,SAAS,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC;YACnD,OAAO,CAAC,GAAG,CAAC,aAAa,OAAO,yBAAyB,CAAC,CAAC;QAC7D,CAAC;QAED,sEAAsE;QACtE,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;QACtD,MAAM,gBAAgB,GAAG,CAAC,aAAa,EAAE,sBAAsB,CAAC,CAAC;QACjE,IAAI,uBAAuB,GAAkB,IAAI,CAAC;QAElD,KAAK,MAAM,EAAE,IAAI,gBAAgB,EAAE,CAAC;YAClC,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC;gBACpC,uBAAuB,GAAG,EAAE,CAAC;gBAC7B,MAAM;YACR,CAAC;YAAC,MAAM,CAAC;gBACP,oBAAoB;YACtB,CAAC;QACH,CAAC;QAED,IAAI,uBAAuB,EAAE,CAAC;YAC5B,OAAO,CAAC,GAAG,CAAC,wDAAwD,uBAAuB,EAAE,CAAC,CAAC;QACjG,CAAC;aAAM,CAAC;YACN,IAAI,CAAC;gBACH,MAAM,KAAK,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC9C,MAAM,eAAe,GAAG;;;;;;;;UAQxB,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiCnB,CAAC;gBACQ,MAAM,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,sBAAsB,CAAC,EAAE,eAAe,CAAC,CAAC;gBAC5E,OAAO,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAC;YAClE,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;YACvD,CAAC;QACH,CAAC;QAED,4BAA4B;QAC5B,MAAM,uBAAuB,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QAE3D,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,0DAA0D,CAAC,CAAC;QACxE,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;QAC1D,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;IAEhE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,UAAU,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QAC1E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL;;GAEG;AACH,KAAK,UAAU,uBAAuB,CAAC,GAAW,EAAE,OAAe,EAAE,KAAc;IACjF,MAAM,OAAO,GAAG;QACd,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE;QAClC,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE,SAAS,EAAE;KACxC,CAAC;IAEF,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;IAE7D,sDAAsD;IACtD,IAAI,aAAa,GAAa,EAAE,CAAC;IACjC,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,CAAC;QACvC,aAAa,GAAG,KAAK;aAClB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;aAC9B,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;IACpC,CAAC;IAAC,MAAM,CAAC;QACP,oDAAoD;QACpD,OAAO;IACT,CAAC;IAED,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,iBAAiB,GAAG,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;QACxE,MAAM,kBAAkB,GAAG,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QAE7D,IAAI,CAAC;YACH,mCAAmC;YACnC,MAAM,KAAK,CAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAErD,8DAA8D;YAC9D,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAC;gBAChC,IAAI,KAAK,EAAE,CAAC;oBACV,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAC;oBAChC,MAAM,OAAO,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;oBAC5C,OAAO,CAAC,GAAG,CAAC,aAAa,MAAM,CAAC,IAAI,oBAAoB,CAAC,CAAC;gBAC5D,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,IAAI,8BAA8B,CAAC,CAAC;gBAC9D,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,OAAO,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;gBAC5C,OAAO,CAAC,GAAG,CAAC,gBAAgB,MAAM,CAAC,IAAI,WAAW,CAAC,CAAC;YACtD,CAAC;YAED,iDAAiD;YACjD,kDAAkD;YAClD,IAAI,gBAAgB,GAAG,CAAC,CAAC;YACzB,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;gBAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,EAAE,YAAY,GAAG,KAAK,CAAC,CAAC;gBAChE,+CAA+C;gBAC/C,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,EAAE,GAAG,GAAG,KAAK,CAAC,CAAC;gBAEjD,IAAI,CAAC;oBACH,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;oBACvB,IAAI,KAAK,EAAE,CAAC;wBACV,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;wBACvB,MAAM,OAAO,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;wBACpC,gBAAgB,EAAE,CAAC;oBACrB,CAAC;oBACD,sBAAsB;gBACxB,CAAC;gBAAC,MAAM,CAAC;oBACP,qCAAqC;oBACrC,IAAI,CAAC;wBACH,MAAM,OAAO,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;wBACpC,gBAAgB,EAAE,CAAC;oBACrB,CAAC;oBAAC,MAAM,CAAC;wBACP,+BAA+B;oBACjC,CAAC;gBACH,CAAC;YACH,CAAC;YACD,IAAI,gBAAgB,GAAG,CAAC,EAAE,CAAC;gBACzB,OAAO,CAAC,GAAG,CAAC,aAAa,gBAAgB,IAAI,MAAM,CAAC,IAAI,iCAAiC,CAAC,CAAC;YAC7F,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,iCAAiC;QACnC,CAAC;IACH,CAAC;AACH,CAAC;AAED,gFAAgF;AAChF,0CAA0C;AAC1C,gFAAgF;AAEhF,MAAM,WAAW,GAAG,OAAO;KACxB,OAAO,CAAC,UAAU,CAAC;KACnB,WAAW,CAAC,kCAAkC,CAAC,CAAC;AAEnD,WAAW;KACR,OAAO,CAAC,oBAAoB,CAAC;KAC7B,WAAW,CAAC,+CAA+C,CAAC;KAC5D,MAAM,CAAC,kBAAkB,EAAE,gCAAgC,CAAC;KAC5D,MAAM,CAAC,KAAK,EAAE,QAAgB,EAAE,OAAO,EAAE,EAAE;IAC1C,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,GAAG,CAAC,CAAC;QACrC,MAAM,GAAG,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;QAElC,MAAM,MAAM,GAAG,MAAM,cAAc,CACjC;YACE,QAAQ;YACR,aAAa,EAAE,OAAO,CAAC,aAAa;SACrC,EACD,EAAE,GAAG,EAAE,MAAM,EAAE,EACf,CAAC,KAAoB,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAC5D,CAAC;QAEF,OAAO,CAAC,GAAG,CAAC,yBAAyB,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;QAC5D,OAAO,CAAC,GAAG,CAAC,qBAAqB,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QAClD,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;QACjD,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;IAEjE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,UAAU,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QAC1E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,WAAW;KACR,OAAO,CAAC,gBAAgB,CAAC;KACzB,WAAW,CAAC,kCAAkC,CAAC;KAC/C,MAAM,CAAC,aAAa,EAAE,6CAA6C,CAAC;KACpE,MAAM,CAAC,KAAK,EAAE,QAAgB,EAAE,OAAO,EAAE,EAAE;IAC1C,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,GAAG,CAAC,CAAC;QACrC,MAAM,GAAG,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;QAElC,MAAM,MAAM,GAAG,MAAM,cAAc,CACjC;YACE,QAAQ;YACR,KAAK,EAAE,OAAO,CAAC,KAAK;SACrB,EACD,EAAE,GAAG,EAAE,MAAM,EAAE,EACf,CAAC,KAAoB,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAC5D,CAAC;QAEF,OAAO,CAAC,GAAG,CAAC,yBAAyB,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;QAC5D,OAAO,CAAC,GAAG,CAAC,qBAAqB,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IAEpD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,UAAU,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QAC1E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,WAAW;KACR,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,2BAA2B,CAAC;KACxC,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,GAAG,CAAC,CAAC;QACrC,MAAM,GAAG,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;QAElC,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC;QAEnD,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAClC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;YACnC,OAAO;QACT,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;QACjC,KAAK,MAAM,EAAE,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;YAClC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC;YAChC,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;YACxC,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;QACtC,CAAC;IAEH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,UAAU,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QAC1E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,gFAAgF;AAChF,uCAAuC;AACvC,gFAAgF;AAEhF,OAAO;KACJ,OAAO,CAAC,oBAAoB,CAAC;KAC7B,WAAW,CAAC,yBAAyB,CAAC;KACtC,MAAM,CAAC,KAAK,EAAE,QAAiB,EAAE,EAAE;IAClC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,GAAG,CAAC,CAAC;QACrC,MAAM,GAAG,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;QAClC,MAAM,QAAQ,GAAG,qBAAqB,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;QAEtF,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC;QAErE,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,CAAC,GAAG,CAAC,QAAQ;gBAClB,CAAC,CAAC,WAAW,QAAQ,aAAa;gBAClC,CAAC,CAAC,oCAAoC,CACvC,CAAC;YACF,OAAO;QACT,CAAC;QAED,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;QACjD,OAAO,CAAC,GAAG,CAAC,WAAW,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,UAAU,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;QACtC,OAAO,CAAC,GAAG,CAAC,WAAW,MAAM,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACvE,OAAO,CAAC,GAAG,CAAC,UAAU,WAAW,CAAC,SAAS,IAAI,WAAW,CAAC,KAAK,KAAK,WAAW,CAAC,UAAU,IAAI,CAAC,CAAC;IAEnG,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,UAAU,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QAC1E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,gFAAgF;AAChF,mCAAmC;AACnC,gFAAgF;AAEhF,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,yBAAyB,CAAC;KACtC,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,GAAG,CAAC,CAAC;QACrC,MAAM,GAAG,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;QAClC,MAAM,QAAQ,GAAG,qBAAqB,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;QAEtF,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC;QAE/C,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3B,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;YACjC,OAAO;QACT,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC/B,KAAK,MAAM,EAAE,IAAI,SAAS,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC;YACzE,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC7C,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,EAAE,KAAK,MAAM,CAAC,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,WAAW,CAAC,SAAS,IAAI,MAAM,CAAC,WAAW,CAAC,KAAK,SAAS,CAAC,CAAC;YAC5H,CAAC;QACH,CAAC;IAEH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,UAAU,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QAC1E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,gFAAgF;AAChF,kCAAkC;AAClC,gFAAgF;AAEhF,OAAO;KACJ,OAAO,CAAC,SAAS,CAAC;KAClB,WAAW,CAAC,uBAAuB,CAAC;KACpC,MAAM,CAAC,GAAG,EAAE;IACX,OAAO,CAAC,GAAG,CAAC,aAAa,OAAO,EAAE,CAAC,CAAC;AACtC,CAAC,CAAC,CAAC;AAEL,OAAO,CAAC,KAAK,EAAE,CAAC"}
|
package/package.json
CHANGED
|
@@ -0,0 +1,308 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: /speclife-retrofit
|
|
3
|
+
id: speclife-retrofit
|
|
4
|
+
category: SpecLife
|
|
5
|
+
description: Formalize ad-hoc changes on main into a proper spec-tracked change for review.
|
|
6
|
+
---
|
|
7
|
+
# /speclife retrofit
|
|
8
|
+
|
|
9
|
+
Formalize ad-hoc changes made on main into a spec-tracked change with PR for review and release.
|
|
10
|
+
|
|
11
|
+
## ⚡ Execution
|
|
12
|
+
|
|
13
|
+
**When this command is invoked, IMMEDIATELY execute the workflow below.**
|
|
14
|
+
|
|
15
|
+
- Do NOT skip steps or ask for confirmation before starting
|
|
16
|
+
- If description is missing, prompt the user
|
|
17
|
+
- If no changes detected on main, error and explain
|
|
18
|
+
- Create spec, validate, branch, commit, archive, and create PR
|
|
19
|
+
- **STOP after PR created—do NOT auto-invoke `/speclife land`**
|
|
20
|
+
|
|
21
|
+
## Usage
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
/speclife retrofit "<description>" # Formalize changes with spec
|
|
25
|
+
/speclife retrofit # Interactive (prompt for description)
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Goal
|
|
29
|
+
|
|
30
|
+
Convert ad-hoc changes on main into a proper spec-tracked workflow:
|
|
31
|
+
1. Document the change with a spec (proposal + tasks)
|
|
32
|
+
2. Move changes to a spec branch for review
|
|
33
|
+
3. Archive the spec
|
|
34
|
+
4. Create PR for approval before merging back
|
|
35
|
+
|
|
36
|
+
This bridges quick ad-hoc work with the spec-driven process.
|
|
37
|
+
|
|
38
|
+
## When to Use
|
|
39
|
+
|
|
40
|
+
- Made changes on main without going through `/speclife start`
|
|
41
|
+
- Want to properly document and review ad-hoc changes
|
|
42
|
+
- Need to create a release-worthy PR from untracked work
|
|
43
|
+
|
|
44
|
+
## Prerequisites
|
|
45
|
+
|
|
46
|
+
Must be on `main` branch with one of:
|
|
47
|
+
- Uncommitted changes (modified/staged files)
|
|
48
|
+
- Recent commits not yet pushed
|
|
49
|
+
|
|
50
|
+
```bash
|
|
51
|
+
# Validation
|
|
52
|
+
BRANCH=$(git branch --show-current)
|
|
53
|
+
[[ "$BRANCH" != "main" ]] && error "Must be on main branch"
|
|
54
|
+
|
|
55
|
+
# Check for changes
|
|
56
|
+
UNCOMMITTED=$(git status --porcelain)
|
|
57
|
+
UNPUSHED=$(git log origin/main..HEAD --oneline 2>/dev/null)
|
|
58
|
+
|
|
59
|
+
[[ -z "$UNCOMMITTED" && -z "$UNPUSHED" ]] && error "No changes to retrofit"
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
## Core Steps
|
|
63
|
+
|
|
64
|
+
### 1. Detect Changes
|
|
65
|
+
|
|
66
|
+
```bash
|
|
67
|
+
# Show what will be retrofitted
|
|
68
|
+
echo "Changes to retrofit:"
|
|
69
|
+
git status --short # Uncommitted changes
|
|
70
|
+
git log origin/main..HEAD --oneline # Unpushed commits (if any)
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
### 2. Derive change-id
|
|
74
|
+
|
|
75
|
+
Convert description to kebab-case:
|
|
76
|
+
- "Update ship command to use two commits" → `update-ship-two-commits`
|
|
77
|
+
- Prefix with verb: add-, fix-, update-, remove-, refactor-
|
|
78
|
+
- Keep it short (3-5 words max)
|
|
79
|
+
|
|
80
|
+
```bash
|
|
81
|
+
CHANGE_ID=<derived-from-description>
|
|
82
|
+
SPEC_DIR="openspec/changes/${CHANGE_ID}"
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
### 3. Create Spec
|
|
86
|
+
|
|
87
|
+
Invoke `/openspec-proposal` with the description:
|
|
88
|
+
- Creates `openspec/changes/<change-id>/proposal.md`
|
|
89
|
+
- Creates `openspec/changes/<change-id>/tasks.md`
|
|
90
|
+
- Tasks should reflect what was ALREADY DONE (mark completed)
|
|
91
|
+
|
|
92
|
+
**Important:** The proposal documents what was implemented, not what needs to be done.
|
|
93
|
+
|
|
94
|
+
### 4. Validate Spec
|
|
95
|
+
|
|
96
|
+
```bash
|
|
97
|
+
openspec validate <change-id>
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
Fix any validation errors before proceeding.
|
|
101
|
+
|
|
102
|
+
### 5. Create Spec Branch
|
|
103
|
+
|
|
104
|
+
```bash
|
|
105
|
+
# Create and switch to spec branch (carries uncommitted changes)
|
|
106
|
+
git checkout -b spec/<change-id>
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
Note: Uncommitted changes automatically move to the new branch.
|
|
110
|
+
|
|
111
|
+
### 6. Commit Implementation + Spec
|
|
112
|
+
|
|
113
|
+
Read proposal.md for commit message, then:
|
|
114
|
+
|
|
115
|
+
```bash
|
|
116
|
+
git add -A
|
|
117
|
+
git commit -m "<type>: <description>"
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
This commit includes:
|
|
121
|
+
- The ad-hoc implementation changes
|
|
122
|
+
- The spec files (proposal.md, tasks.md)
|
|
123
|
+
|
|
124
|
+
### 7. Archive Spec
|
|
125
|
+
|
|
126
|
+
Run `/openspec-archive`:
|
|
127
|
+
- Moves spec to `openspec/changes/archive/<date>-<change-id>/`
|
|
128
|
+
- May require updating `project.md` (follow archive prompts)
|
|
129
|
+
|
|
130
|
+
### 8. Commit Archive
|
|
131
|
+
|
|
132
|
+
```bash
|
|
133
|
+
git add -A
|
|
134
|
+
git commit -m "chore: archive <change-id> spec"
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
### 9. Push and Create PR
|
|
138
|
+
|
|
139
|
+
```bash
|
|
140
|
+
git push -u origin spec/<change-id>
|
|
141
|
+
gh pr create --fill --base main
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
### 10. Reset Main (Safety)
|
|
145
|
+
|
|
146
|
+
After successful PR creation, main should be clean:
|
|
147
|
+
|
|
148
|
+
```bash
|
|
149
|
+
# Main is already clean because:
|
|
150
|
+
# - Uncommitted changes moved to spec branch
|
|
151
|
+
# - We're now on spec branch, not main
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
### 11. Report and STOP
|
|
155
|
+
|
|
156
|
+
```
|
|
157
|
+
✓ Detected changes in: <list of changed files>
|
|
158
|
+
✓ Created spec at openspec/changes/<change-id>/
|
|
159
|
+
✓ Validated spec
|
|
160
|
+
✓ Created branch spec/<change-id>
|
|
161
|
+
✓ Committed: "<type>: <description>"
|
|
162
|
+
✓ Archived spec
|
|
163
|
+
✓ Committed: "chore: archive <change-id> spec"
|
|
164
|
+
✓ Pushed to origin/spec/<change-id>
|
|
165
|
+
✓ Created PR #XX: <url>
|
|
166
|
+
|
|
167
|
+
Your changes are now on spec/<change-id> (main is unchanged).
|
|
168
|
+
|
|
169
|
+
Next: After approval, run /speclife land
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
**⛔ STOP HERE.** Do NOT proceed to merge. Wait for:
|
|
173
|
+
1. PR review and approval
|
|
174
|
+
2. User to invoke `/speclife land`
|
|
175
|
+
|
|
176
|
+
---
|
|
177
|
+
|
|
178
|
+
<!-- REFERENCE SECTIONS - Read only when needed -->
|
|
179
|
+
|
|
180
|
+
## Appendix: Examples
|
|
181
|
+
|
|
182
|
+
**Basic retrofit:**
|
|
183
|
+
```
|
|
184
|
+
User: /speclife retrofit "update ship command workflow"
|
|
185
|
+
|
|
186
|
+
Agent:
|
|
187
|
+
ℹ️ On main branch
|
|
188
|
+
✓ Detected changes:
|
|
189
|
+
- openspec/commands/speclife/ship.md (modified)
|
|
190
|
+
✓ Derived change-id: update-ship-workflow
|
|
191
|
+
✓ Created spec at openspec/changes/update-ship-workflow/
|
|
192
|
+
✓ Validated spec
|
|
193
|
+
✓ Created branch spec/update-ship-workflow
|
|
194
|
+
✓ Committed: "docs: update ship command workflow"
|
|
195
|
+
✓ Archived spec
|
|
196
|
+
✓ Committed: "chore: archive update-ship-workflow spec"
|
|
197
|
+
✓ Pushed to origin/spec/update-ship-workflow
|
|
198
|
+
✓ Created PR #47
|
|
199
|
+
|
|
200
|
+
Next: After approval, run /speclife land
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
**With unpushed commits:**
|
|
204
|
+
```
|
|
205
|
+
User: /speclife retrofit "add retrofit command"
|
|
206
|
+
|
|
207
|
+
Agent:
|
|
208
|
+
ℹ️ On main branch
|
|
209
|
+
✓ Detected changes:
|
|
210
|
+
- 2 unpushed commits
|
|
211
|
+
- openspec/commands/speclife/retrofit.md (new file)
|
|
212
|
+
✓ Derived change-id: add-retrofit-command
|
|
213
|
+
✓ Created spec at openspec/changes/add-retrofit-command/
|
|
214
|
+
...
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
**Interactive:**
|
|
218
|
+
```
|
|
219
|
+
User: /speclife retrofit
|
|
220
|
+
|
|
221
|
+
Agent:
|
|
222
|
+
ℹ️ Detected uncommitted changes:
|
|
223
|
+
- src/api.ts (modified)
|
|
224
|
+
- src/utils.ts (modified)
|
|
225
|
+
|
|
226
|
+
What do these changes do? (describe for the spec)
|
|
227
|
+
|
|
228
|
+
User: Add rate limiting to API endpoints
|
|
229
|
+
|
|
230
|
+
Agent:
|
|
231
|
+
✓ Derived change-id: add-rate-limiting
|
|
232
|
+
...
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
## Appendix: Error Handling
|
|
236
|
+
|
|
237
|
+
**Not on main:**
|
|
238
|
+
```
|
|
239
|
+
❌ Must be on main branch to retrofit.
|
|
240
|
+
Current branch: feature/something
|
|
241
|
+
|
|
242
|
+
Either:
|
|
243
|
+
1. Switch to main: git checkout main
|
|
244
|
+
2. Use /speclife ship for non-main branches
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
**No changes to retrofit:**
|
|
248
|
+
```
|
|
249
|
+
❌ No changes to retrofit.
|
|
250
|
+
|
|
251
|
+
Working directory is clean and no unpushed commits.
|
|
252
|
+
|
|
253
|
+
Make some changes first, then run /speclife retrofit
|
|
254
|
+
```
|
|
255
|
+
|
|
256
|
+
**Spec already exists:**
|
|
257
|
+
```
|
|
258
|
+
❌ Spec 'update-ship-workflow' already exists.
|
|
259
|
+
|
|
260
|
+
Either:
|
|
261
|
+
1. Choose a different description
|
|
262
|
+
2. Remove existing: rm -rf openspec/changes/update-ship-workflow/
|
|
263
|
+
3. Use /speclife start "resume update-ship-workflow" to continue existing
|
|
264
|
+
```
|
|
265
|
+
|
|
266
|
+
**Validation failed:**
|
|
267
|
+
```
|
|
268
|
+
❌ Spec validation failed:
|
|
269
|
+
- proposal.md: Missing "What" section
|
|
270
|
+
|
|
271
|
+
Fix issues and retry.
|
|
272
|
+
```
|
|
273
|
+
|
|
274
|
+
## Appendix: Comparison with Other Commands
|
|
275
|
+
|
|
276
|
+
| Command | Starting Point | Creates Spec? | Flow |
|
|
277
|
+
|---------|---------------|---------------|------|
|
|
278
|
+
| `/speclife start` | Clean main | Yes (before implementation) | Spec → Implement → Ship |
|
|
279
|
+
| `/speclife retrofit` | Main with changes | Yes (after implementation) | Implement → Spec → Ship |
|
|
280
|
+
| `/speclife ship` | Spec branch | No (uses existing) | Ship existing work |
|
|
281
|
+
|
|
282
|
+
## Appendix: What Gets Committed
|
|
283
|
+
|
|
284
|
+
**First commit** (implementation + spec):
|
|
285
|
+
```
|
|
286
|
+
<type>: <description>
|
|
287
|
+
|
|
288
|
+
- Implementation changes (the ad-hoc work)
|
|
289
|
+
- openspec/changes/<change-id>/proposal.md
|
|
290
|
+
- openspec/changes/<change-id>/tasks.md
|
|
291
|
+
```
|
|
292
|
+
|
|
293
|
+
**Second commit** (archive):
|
|
294
|
+
```
|
|
295
|
+
chore: archive <change-id> spec
|
|
296
|
+
|
|
297
|
+
- Move spec to archive/
|
|
298
|
+
- Update project.md (if applicable)
|
|
299
|
+
```
|
|
300
|
+
|
|
301
|
+
## Notes
|
|
302
|
+
|
|
303
|
+
- Retrofit is for MAIN branch only (ad-hoc changes)
|
|
304
|
+
- For changes on feature branches, use `/speclife ship` instead
|
|
305
|
+
- The spec documents what WAS done, not what NEEDS to be done
|
|
306
|
+
- Tasks in tasks.md should be marked as completed
|
|
307
|
+
- Main branch stays clean (changes move to spec branch)
|
|
308
|
+
|
|
@@ -27,9 +27,9 @@ Create a PR from your current branch. Works with spec branches and ad-hoc branch
|
|
|
27
27
|
|
|
28
28
|
**Quick flow:**
|
|
29
29
|
1. Detect branch type (spec vs ad-hoc)
|
|
30
|
-
2. For spec branches: validate
|
|
31
|
-
3.
|
|
32
|
-
4.
|
|
30
|
+
2. For spec branches: validate → commit changes → archive → commit archive
|
|
31
|
+
3. For ad-hoc branches: stage, commit
|
|
32
|
+
4. Push, create/update PR
|
|
33
33
|
|
|
34
34
|
## Mode Detection
|
|
35
35
|
|
|
@@ -50,8 +50,19 @@ Note: Spec mode is determined by branch name prefix (`spec/`), not worktree exis
|
|
|
50
50
|
### 1. Spec Branch Only
|
|
51
51
|
If spec branch detected:
|
|
52
52
|
- Run `openspec validate <change-id>`
|
|
53
|
-
- Run `openspec archive <change-id>`
|
|
54
53
|
- Read proposal.md for commit message
|
|
54
|
+
- Commit the implementation changes:
|
|
55
|
+
```bash
|
|
56
|
+
git add -A
|
|
57
|
+
git commit -m "<type>: <description>"
|
|
58
|
+
```
|
|
59
|
+
- Run `/openspec-archive` (may require updating project.md)
|
|
60
|
+
- Commit the archive changes:
|
|
61
|
+
```bash
|
|
62
|
+
git add -A
|
|
63
|
+
git commit -m "chore: archive <change-id> spec"
|
|
64
|
+
```
|
|
65
|
+
- Skip to step 3 (push only, no additional commit needed)
|
|
55
66
|
|
|
56
67
|
### 2. Ad-hoc Branch Only
|
|
57
68
|
- Infer commit type from branch name (`fix/*` → `fix:`, `feat/*` → `feat:`)
|
|
@@ -59,8 +70,11 @@ If spec branch detected:
|
|
|
59
70
|
|
|
60
71
|
### 3. All Branches
|
|
61
72
|
```bash
|
|
73
|
+
# For ad-hoc branches only (spec branches already committed above):
|
|
62
74
|
git add -A
|
|
63
75
|
git commit -m "<type>: <description>" # if uncommitted changes
|
|
76
|
+
|
|
77
|
+
# All branches:
|
|
64
78
|
git push -u origin <branch>
|
|
65
79
|
```
|
|
66
80
|
|
|
@@ -136,8 +150,10 @@ User: /speclife ship
|
|
|
136
150
|
Agent:
|
|
137
151
|
ℹ️ Spec branch: spec/add-oauth-login
|
|
138
152
|
✓ Validated spec
|
|
139
|
-
✓ Archived to openspec/changes/archive/
|
|
140
153
|
✓ Committed: "feat: add OAuth login"
|
|
154
|
+
✓ Archived to openspec/changes/archive/
|
|
155
|
+
✓ Committed: "chore: archive add-oauth-login spec"
|
|
156
|
+
✓ Pushed to origin/spec/add-oauth-login
|
|
141
157
|
✓ Created PR #42
|
|
142
158
|
```
|
|
143
159
|
|