@boyingliu01/xp-gate 0.8.19 → 0.8.21
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/lib/init.js +2 -2
- package/lib/install-skill.js +13 -4
- package/lib/principles.js +5 -0
- package/mock-policy/AGENTS.md +3 -3
- package/mutation/AGENTS.md +3 -3
- package/package.json +1 -1
- package/plugins/claude-code/.claude-plugin/plugin.json +1 -1
- package/plugins/claude-code/skills/delphi-review/AGENTS.md +3 -3
- package/plugins/claude-code/skills/sprint-flow/AGENTS.md +3 -3
- package/plugins/claude-code/skills/sprint-flow/SKILL.md +135 -1091
- package/plugins/claude-code/skills/sprint-flow/references/orchestration-rules.md +333 -0
- package/plugins/claude-code/skills/sprint-flow/references/phase-1-plan.md +17 -46
- package/plugins/claude-code/skills/sprint-flow/references/phase-2-build.md +4 -193
- package/plugins/claude-code/skills/sprint-flow/references/phase-3-review.md +13 -30
- package/plugins/claude-code/skills/sprint-flow/references/phase-6-ship.md +4 -181
- package/plugins/claude-code/skills/sprint-flow/references/phase-7-land.md +4 -135
- package/plugins/claude-code/skills/sprint-flow/references/phase-8-cleanup.md +4 -187
- package/plugins/claude-code/skills/sprint-flow/references/phase-minus-1-isolate.md +58 -0
- package/plugins/claude-code/skills/test-specification-alignment/AGENTS.md +3 -3
- package/plugins/opencode/package.json +1 -1
- package/plugins/opencode/skills/delphi-review/AGENTS.md +3 -3
- package/plugins/opencode/skills/sprint-flow/AGENTS.md +3 -3
- package/plugins/opencode/skills/sprint-flow/SKILL.md +135 -1091
- package/plugins/opencode/skills/sprint-flow/references/orchestration-rules.md +333 -0
- package/plugins/opencode/skills/sprint-flow/references/phase-1-plan.md +17 -46
- package/plugins/opencode/skills/sprint-flow/references/phase-2-build.md +4 -193
- package/plugins/opencode/skills/sprint-flow/references/phase-3-review.md +13 -30
- package/plugins/opencode/skills/sprint-flow/references/phase-6-ship.md +4 -181
- package/plugins/opencode/skills/sprint-flow/references/phase-7-land.md +4 -135
- package/plugins/opencode/skills/sprint-flow/references/phase-8-cleanup.md +4 -187
- package/plugins/opencode/skills/sprint-flow/references/phase-minus-1-isolate.md +58 -0
- package/plugins/opencode/skills/test-specification-alignment/AGENTS.md +3 -3
- package/plugins/qoder/bin/xp-gate-check +5 -1
- package/plugins/qoder/skills/delphi-review/AGENTS.md +3 -3
- package/plugins/qoder/skills/sprint-flow/AGENTS.md +3 -3
- package/plugins/qoder/skills/test-specification-alignment/AGENTS.md +3 -3
- package/principles/AGENTS.md +3 -3
- package/skills/delphi-review/AGENTS.md +3 -3
- package/skills/sprint-flow/AGENTS.md +3 -3
- package/skills/sprint-flow/SKILL.md +135 -1091
- package/skills/sprint-flow/references/orchestration-rules.md +333 -0
- package/skills/sprint-flow/references/phase-1-plan.md +17 -46
- package/skills/sprint-flow/references/phase-2-build.md +4 -193
- package/skills/sprint-flow/references/phase-3-review.md +13 -30
- package/skills/sprint-flow/references/phase-6-ship.md +4 -181
- package/skills/sprint-flow/references/phase-7-land.md +4 -135
- package/skills/sprint-flow/references/phase-8-cleanup.md +4 -187
- package/skills/sprint-flow/references/phase-minus-1-isolate.md +58 -0
- package/skills/test-specification-alignment/AGENTS.md +3 -3
package/lib/init.js
CHANGED
|
@@ -335,7 +335,7 @@ async function installLocal(args) {
|
|
|
335
335
|
ensureConfigDir();
|
|
336
336
|
|
|
337
337
|
const manifest = generateManifest(srcDir, projectRoot);
|
|
338
|
-
updateConfig({ lastInit: new Date().toISOString(), mode: 'local', manifest });
|
|
338
|
+
updateConfig({ lastInit: new Date().toISOString(), mode: 'local', templateDir: TEMPLATE_DIR, manifest });
|
|
339
339
|
|
|
340
340
|
injectKarpathyPrinciples(projectRoot);
|
|
341
341
|
configureOpenCodePlugin(srcDir, projectRoot);
|
|
@@ -388,7 +388,7 @@ async function setupGlobal(args) {
|
|
|
388
388
|
ensureConfigDir();
|
|
389
389
|
|
|
390
390
|
const manifest = generateGlobalManifest(srcDir);
|
|
391
|
-
updateConfig({ lastInit: new Date().toISOString(), mode: 'global', manifest });
|
|
391
|
+
updateConfig({ lastInit: new Date().toISOString(), mode: 'global', templateDir: TEMPLATE_DIR, manifest });
|
|
392
392
|
|
|
393
393
|
console.log('\nGlobal setup complete!');
|
|
394
394
|
console.log('All git repositories will now use xp-gate quality gates.');
|
package/lib/install-skill.js
CHANGED
|
@@ -3,12 +3,21 @@ const path = require('path');
|
|
|
3
3
|
const https = require('https');
|
|
4
4
|
const http = require('http');
|
|
5
5
|
const { execSync } = require('child_process');
|
|
6
|
-
const { checkDeps
|
|
6
|
+
const { checkDeps } = require('./detect-deps.js');
|
|
7
7
|
const { downloadFromGitHub } = require('./download-skill.js');
|
|
8
8
|
const { rollback } = require('./rollback.js');
|
|
9
|
-
const { HOME_DIR, CONFIG_DIR } = require('./shared-paths.js');
|
|
9
|
+
const { HOME_DIR, CONFIG_DIR, detectPlatform } = require('./shared-paths.js');
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
function getSkillsDir() {
|
|
12
|
+
const platform = detectPlatform();
|
|
13
|
+
if (platform === 'qoder') {
|
|
14
|
+
return path.join(HOME_DIR, '.qoder', 'skills');
|
|
15
|
+
}
|
|
16
|
+
if (platform === 'claude-code') {
|
|
17
|
+
return path.join(HOME_DIR, '.claude', 'skills');
|
|
18
|
+
}
|
|
19
|
+
return path.join(HOME_DIR, '.config', 'opencode', 'skills');
|
|
20
|
+
}
|
|
12
21
|
|
|
13
22
|
const SKILLS_REGISTRY = {
|
|
14
23
|
'sprint-flow': { repo: 'boyingliu01/xp-gate', path: 'skills/sprint-flow' },
|
|
@@ -43,7 +52,7 @@ async function installSkill(name, options = {}) {
|
|
|
43
52
|
return 1;
|
|
44
53
|
}
|
|
45
54
|
|
|
46
|
-
const targetDir = path.join(
|
|
55
|
+
const targetDir = path.join(getSkillsDir(), name);
|
|
47
56
|
if (fs.existsSync(targetDir) && !force) {
|
|
48
57
|
console.error(`Error: ${name} is already installed`);
|
|
49
58
|
console.error('Use --force to overwrite');
|
package/lib/principles.js
CHANGED
|
@@ -10,8 +10,13 @@ const path = require('path');
|
|
|
10
10
|
// - ../../src/principles/index.ts (installed under node_modules/@boyingliu01/xp-gate)
|
|
11
11
|
function findPrinciplesEntry() {
|
|
12
12
|
const candidates = [
|
|
13
|
+
// npm package bundled layout: lib/principles.js → principles/index.ts
|
|
14
|
+
path.resolve(__dirname, '..', 'principles', 'index.ts'),
|
|
15
|
+
// Development layout: lib/principles.js → src/principles/index.ts
|
|
13
16
|
path.resolve(__dirname, '..', '..', '..', 'src', 'principles', 'index.ts'),
|
|
17
|
+
// npm package installed under node_modules/@boyingliu01/xp-gate
|
|
14
18
|
path.resolve(__dirname, '..', '..', 'src', 'principles', 'index.ts'),
|
|
19
|
+
// Running from repo root
|
|
15
20
|
path.resolve(process.cwd(), 'src', 'principles', 'index.ts'),
|
|
16
21
|
];
|
|
17
22
|
for (const c of candidates) {
|
package/mock-policy/AGENTS.md
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
# SRC/MOCK-POLICY KNOWLEDGE BASE
|
|
2
2
|
|
|
3
3
|
**Generated:** 2026-06-17
|
|
4
|
-
**Commit:**
|
|
5
|
-
**Branch:**
|
|
6
|
-
**Version:** 0.8.
|
|
4
|
+
**Commit:** c0c52f4
|
|
5
|
+
**Branch:** main
|
|
6
|
+
**Version:** 0.8.21.0
|
|
7
7
|
|
|
8
8
|
## OVERVIEW
|
|
9
9
|
Mock layering policy enforcement — Gate M3 of pre-push hook. Ensures integration tests use real implementations for internal dependencies, mock external dependencies, and annotate pending mocks with removal plans. Combines project scope scanning, mock decision engine, and per-file validation into a single pipeline.
|
package/mutation/AGENTS.md
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
# SRC/MUTATION KNOWLEDGE BASE
|
|
2
2
|
|
|
3
3
|
**Generated:** 2026-06-17
|
|
4
|
-
**Commit:**
|
|
5
|
-
**Branch:**
|
|
6
|
-
**Version:** 0.8.
|
|
4
|
+
**Commit:** c0c52f4
|
|
5
|
+
**Branch:** main
|
|
6
|
+
**Version:** 0.8.21.0
|
|
7
7
|
|
|
8
8
|
## OVERVIEW
|
|
9
9
|
**Gate M** (incremental mutation testing) + **Gate M2** helpers (test-layer detection used by `src/mock-policy/`). Pre-push quality gate. TypeScript-only; uses Stryker.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "xp-gate",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.21",
|
|
4
4
|
"displayName": "XP-Gate",
|
|
5
5
|
"description": "Extreme Programming quality gates + AI workflow skills for Claude Code. Includes 10 quality gates (Gate 0-9), Sprint Flow (11 phases), and Delphi multi-expert review (>=90% consensus).",
|
|
6
6
|
"author": {
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
# SKILLS/DELPHI-REVIEW KNOWLEDGE BASE
|
|
2
2
|
|
|
3
3
|
**Generated:** 2026-06-17
|
|
4
|
-
**Commit:**
|
|
5
|
-
**Branch:**
|
|
6
|
-
**Version:** 0.8.
|
|
4
|
+
**Commit:** c0c52f4
|
|
5
|
+
**Branch:** main
|
|
6
|
+
**Version:** 0.8.21.0
|
|
7
7
|
|
|
8
8
|
## OVERVIEW
|
|
9
9
|
Delphi Consensus Review — multi-round anonymous expert review (≥90% threshold, 3 experts from ≥2 providers, domestic models only). Supports design + code-walkthrough modes.
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
# SKILLS/SPRINT-FLOW KNOWLEDGE BASE
|
|
2
2
|
|
|
3
3
|
**Generated:** 2026-06-17
|
|
4
|
-
**Commit:**
|
|
5
|
-
**Branch:**
|
|
6
|
-
**Version:** 0.8.
|
|
4
|
+
**Commit:** c0c52f4
|
|
5
|
+
**Branch:** main
|
|
6
|
+
**Version:** 0.8.21.0
|
|
7
7
|
|
|
8
8
|
## OVERVIEW
|
|
9
9
|
**11-phase** development pipeline: ISOLATE → AUTO-ESTIMATE → THINK → PLAN → BUILD → REVIEW → USER ACCEPTANCE → FEEDBACK → SHIP → LAND → CLEANUP. Phase 2 default build mode is **ralph-loop** (REQ-level iteration, 40-67% token savings vs parallel). HARD-GATE in Phase 1: design must pass Delphi review (≥90% consensus) before any coding.
|