create-issflow 1.10.0 → 1.10.1
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/package.json +1 -1
- package/template/.issflow/hooks/package.json +3 -0
- package/template/.issflow/hooks/verify-approval.js +1 -1
- package/template/.issflow/templates/automation/feature-docker.js +13 -3
- package/template/.issflow/skills/ui-ux-pro-max/scripts/__pycache__/core.cpython-313.pyc +0 -0
- package/template/.issflow/skills/ui-ux-pro-max/scripts/__pycache__/design_system.cpython-313.pyc +0 -0
- package/template/.issflow/skills/ui-ux-pro-max/scripts/__pycache__/reasoning_contract.cpython-313.pyc +0 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "create-issflow",
|
|
3
|
-
"version": "1.10.
|
|
3
|
+
"version": "1.10.1",
|
|
4
4
|
"description": "Scaffold the iStartSoftFlow AI-coding workflow into a project. Stack-agnostic, tool-agnostic (Claude Code, Codex, Cursor, Gemini, Aider), non-destructive.",
|
|
5
5
|
"bin": {
|
|
6
6
|
"create-issflow": "bin/cli.js"
|
|
@@ -17,7 +17,7 @@ function main(args) {
|
|
|
17
17
|
const base = args[baseIndex + 1];
|
|
18
18
|
if (!base || base.startsWith('--')) throw new Error('Missing --base value');
|
|
19
19
|
const mergeBase = execFileSync('git', ['merge-base', base, 'HEAD'], { cwd: root, encoding: 'utf8' }).trim();
|
|
20
|
-
const diff = execFileSync('git', ['diff', '--name-only', '--diff-filter=
|
|
20
|
+
const diff = execFileSync('git', ['diff', '--name-only', '--diff-filter=ACMRTD', mergeBase, 'HEAD'], { cwd: root, encoding: 'utf8' });
|
|
21
21
|
changedFiles = diff.split(/\r?\n/).filter(Boolean);
|
|
22
22
|
} else if (filesIndex >= 0) {
|
|
23
23
|
const files = args[filesIndex + 1];
|
|
@@ -18,9 +18,15 @@
|
|
|
18
18
|
// own doc + slug. Results come back as commits on feature/<slug> (visible from the
|
|
19
19
|
// main repo); remove the dir with `git worktree remove` after merge.
|
|
20
20
|
'use strict';
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
21
|
+
// Dynamic imports work in both CommonJS and ESM project scopes.
|
|
22
|
+
Promise.all([
|
|
23
|
+
import('node:fs'),
|
|
24
|
+
import('node:path'),
|
|
25
|
+
import('node:child_process'),
|
|
26
|
+
]).then(([fsModule, pathModule, childModule]) => {
|
|
27
|
+
const fs = fsModule.default;
|
|
28
|
+
const path = pathModule.default;
|
|
29
|
+
const { spawnSync } = childModule;
|
|
24
30
|
|
|
25
31
|
const IMAGE = process.env.ISSFLOW_IMAGE || 'issflow-runner';
|
|
26
32
|
const argv = process.argv.slice(2);
|
|
@@ -105,3 +111,7 @@ args.push(IMAGE, '-p', `/feature ${doc}`, '--dangerously-skip-permissions');
|
|
|
105
111
|
const res = run('docker', args);
|
|
106
112
|
if (res.status !== 0) die(`run exited with status ${res.status} — see output above; blockers land in docs/features/<slug>/BLOCKED.md`);
|
|
107
113
|
console.log('feature-docker: done. Review the feature branch, then run /uat with the TEST-PLAN.');
|
|
114
|
+
}).catch((error) => {
|
|
115
|
+
console.error('feature-docker: ' + error.message);
|
|
116
|
+
process.exitCode = 1;
|
|
117
|
+
});
|
|
Binary file
|