@stackbilt/cli 0.12.1 → 0.15.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/dist/__tests__/adf-init.test.d.ts +2 -0
- package/dist/__tests__/adf-init.test.d.ts.map +1 -0
- package/dist/__tests__/adf-init.test.js +116 -0
- package/dist/__tests__/adf-init.test.js.map +1 -0
- package/dist/__tests__/bootstrap.test.js +63 -0
- package/dist/__tests__/bootstrap.test.js.map +1 -1
- package/dist/__tests__/context.test.d.ts +2 -0
- package/dist/__tests__/context.test.d.ts.map +1 -0
- package/dist/__tests__/context.test.js +137 -0
- package/dist/__tests__/context.test.js.map +1 -0
- package/dist/__tests__/deprecated-commands.test.d.ts +2 -0
- package/dist/__tests__/deprecated-commands.test.d.ts.map +1 -0
- package/dist/__tests__/deprecated-commands.test.js +59 -0
- package/dist/__tests__/deprecated-commands.test.js.map +1 -0
- package/dist/__tests__/login.test.js +24 -1
- package/dist/__tests__/login.test.js.map +1 -1
- package/dist/__tests__/stamp-policies.test.d.ts +2 -0
- package/dist/__tests__/stamp-policies.test.d.ts.map +1 -0
- package/dist/__tests__/stamp-policies.test.js +120 -0
- package/dist/__tests__/stamp-policies.test.js.map +1 -0
- package/dist/commands/adf.d.ts.map +1 -1
- package/dist/commands/adf.js +38 -15
- package/dist/commands/adf.js.map +1 -1
- package/dist/commands/architect.d.ts.map +1 -1
- package/dist/commands/architect.js +2 -0
- package/dist/commands/architect.js.map +1 -1
- package/dist/commands/bootstrap.d.ts.map +1 -1
- package/dist/commands/bootstrap.js +153 -5
- package/dist/commands/bootstrap.js.map +1 -1
- package/dist/commands/context.d.ts +27 -0
- package/dist/commands/context.d.ts.map +1 -0
- package/dist/commands/context.js +650 -0
- package/dist/commands/context.js.map +1 -0
- package/dist/commands/deprecation-warning.d.ts +4 -0
- package/dist/commands/deprecation-warning.d.ts.map +1 -0
- package/dist/commands/deprecation-warning.js +20 -0
- package/dist/commands/deprecation-warning.js.map +1 -0
- package/dist/commands/drift.js +2 -4
- package/dist/commands/drift.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +1 -0
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/login.d.ts.map +1 -1
- package/dist/commands/login.js +2 -7
- package/dist/commands/login.js.map +1 -1
- package/dist/commands/run.d.ts.map +1 -1
- package/dist/commands/run.js +2 -0
- package/dist/commands/run.js.map +1 -1
- package/dist/commands/scaffold.d.ts.map +1 -1
- package/dist/commands/scaffold.js +2 -0
- package/dist/commands/scaffold.js.map +1 -1
- package/dist/commands/serve.d.ts.map +1 -1
- package/dist/commands/serve.js +34 -3
- package/dist/commands/serve.js.map +1 -1
- package/dist/commands/stamp-policies.d.ts +15 -0
- package/dist/commands/stamp-policies.d.ts.map +1 -0
- package/dist/commands/stamp-policies.js +127 -0
- package/dist/commands/stamp-policies.js.map +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +18 -0
- package/dist/index.js.map +1 -1
- package/package.json +11 -10
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* charter stamp-policies
|
|
4
|
+
*
|
|
5
|
+
* Stamps supply chain CI policies onto a target repo:
|
|
6
|
+
* 1. Patches floating action pins (@vN) to full commit SHAs
|
|
7
|
+
* 2. Adds .github/workflows/supply-chain.yml (SBOM + dep-review callers)
|
|
8
|
+
* 3. Installs .charter/patterns/floating-action-pins.json
|
|
9
|
+
* 4. Updates .charter/config.json to enable drift on workflow YAML files
|
|
10
|
+
*
|
|
11
|
+
* Reusable workflows sourced from Stackbilt-dev/stackbilt_llc (Stackbilt-dev/stackbilt_llc#11).
|
|
12
|
+
* All output commits should carry: Governed-By: Stackbilt-dev/stackbilt_llc#11
|
|
13
|
+
*/
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.stampPoliciesCommand = stampPoliciesCommand;
|
|
16
|
+
const node_child_process_1 = require("node:child_process");
|
|
17
|
+
const index_1 = require("../index");
|
|
18
|
+
const flags_1 = require("../flags");
|
|
19
|
+
const policies_1 = require("@stackbilt/policies");
|
|
20
|
+
async function stampPoliciesCommand(options, args) {
|
|
21
|
+
const repoPath = (0, flags_1.getFlag)(args, '--path') ?? '.';
|
|
22
|
+
const dryRun = args.includes('--dry-run');
|
|
23
|
+
const fixPins = !args.includes('--no-fix-pins');
|
|
24
|
+
const explicitRef = (0, flags_1.getFlag)(args, '--policy-repo-ref');
|
|
25
|
+
const envRef = process.env.CHARTER_POLICY_REPO_REF?.trim();
|
|
26
|
+
const recoveryCommand = 'npx charter stamp-policies --policy-repo-ref <sha>';
|
|
27
|
+
let policyRepoRef;
|
|
28
|
+
if (explicitRef) {
|
|
29
|
+
policyRepoRef = explicitRef;
|
|
30
|
+
}
|
|
31
|
+
else if (envRef) {
|
|
32
|
+
policyRepoRef = envRef;
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
const resolved = await resolveStackbiltLlcRef();
|
|
36
|
+
if (!resolved) {
|
|
37
|
+
if (options.format === 'json') {
|
|
38
|
+
console.log(JSON.stringify({
|
|
39
|
+
status: 'ERROR',
|
|
40
|
+
error: {
|
|
41
|
+
code: 'POLICY_REPO_REF_UNRESOLVED',
|
|
42
|
+
message: 'Could not resolve Stackbilt-dev/stackbilt_llc HEAD SHA.',
|
|
43
|
+
hint: 'Pass --policy-repo-ref <sha> or set CHARTER_POLICY_REPO_REF.',
|
|
44
|
+
recoveryCommand,
|
|
45
|
+
},
|
|
46
|
+
}, null, 2));
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
console.error(' [error] Could not resolve Stackbilt-dev/stackbilt_llc HEAD SHA.\n' +
|
|
50
|
+
' Pass --policy-repo-ref <sha> to override.\n' +
|
|
51
|
+
` Recovery: ${recoveryCommand}`);
|
|
52
|
+
}
|
|
53
|
+
return index_1.EXIT_CODE.RUNTIME_ERROR;
|
|
54
|
+
}
|
|
55
|
+
policyRepoRef = resolved;
|
|
56
|
+
}
|
|
57
|
+
if (!options.ciMode) {
|
|
58
|
+
console.log(`\n charter stamp-policies`);
|
|
59
|
+
console.log(` Path: ${repoPath}`);
|
|
60
|
+
console.log(` Dry run: ${dryRun}`);
|
|
61
|
+
console.log(` Fix pins: ${fixPins}`);
|
|
62
|
+
console.log(` Policy repo ref: ${policyRepoRef.slice(0, 12)}...`);
|
|
63
|
+
if (dryRun)
|
|
64
|
+
console.log('\n [dry-run] No files will be written.\n');
|
|
65
|
+
}
|
|
66
|
+
let result;
|
|
67
|
+
try {
|
|
68
|
+
result = await (0, policies_1.applyPolicies)(repoPath, { dryRun, fixPins, policyRepoRef });
|
|
69
|
+
}
|
|
70
|
+
catch (err) {
|
|
71
|
+
console.error(` [error] ${err instanceof Error ? err.message : String(err)}`);
|
|
72
|
+
return index_1.EXIT_CODE.RUNTIME_ERROR;
|
|
73
|
+
}
|
|
74
|
+
if (options.format === 'json') {
|
|
75
|
+
console.log(JSON.stringify({
|
|
76
|
+
status: result.alreadyCompliant ? 'COMPLIANT' : 'UPDATED',
|
|
77
|
+
dryRun,
|
|
78
|
+
pinsPatched: result.pinsPatched,
|
|
79
|
+
workflowsPatched: result.workflowsPatched,
|
|
80
|
+
supplyChainWorkflowAdded: result.supplyChainWorkflowAdded,
|
|
81
|
+
charterConfigUpdated: result.charterConfigUpdated,
|
|
82
|
+
alreadyCompliant: result.alreadyCompliant,
|
|
83
|
+
policyRepoRef,
|
|
84
|
+
}, null, 2));
|
|
85
|
+
return index_1.EXIT_CODE.SUCCESS;
|
|
86
|
+
}
|
|
87
|
+
if (result.alreadyCompliant) {
|
|
88
|
+
console.log('\n [ok] Repo is already compliant — nothing to do.\n');
|
|
89
|
+
return index_1.EXIT_CODE.SUCCESS;
|
|
90
|
+
}
|
|
91
|
+
console.log('\n Changes' + (dryRun ? ' (dry-run — not written)' : '') + ':');
|
|
92
|
+
if (result.pinsPatched > 0) {
|
|
93
|
+
console.log(`\n Pinned ${result.pinsPatched} floating action tag(s) to commit SHAs:`);
|
|
94
|
+
for (const wf of result.workflowsPatched) {
|
|
95
|
+
console.log(` ${wf}`);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
if (result.supplyChainWorkflowAdded) {
|
|
99
|
+
console.log(`\n Added: .github/workflows/supply-chain.yml`);
|
|
100
|
+
console.log(` SBOM: Stackbilt-dev/stackbilt_llc/.github/workflows/supply-chain-sbom.yml@${policyRepoRef.slice(0, 12)}...`);
|
|
101
|
+
console.log(` Dep review: Stackbilt-dev/stackbilt_llc/.github/workflows/supply-chain-dep-review.yml@${policyRepoRef.slice(0, 12)}...`);
|
|
102
|
+
}
|
|
103
|
+
if (result.charterConfigUpdated) {
|
|
104
|
+
console.log(`\n Updated: .charter/ (drift pattern + config patch)`);
|
|
105
|
+
console.log(` Installed: .charter/patterns/floating-action-pins.json`);
|
|
106
|
+
console.log(` Config: drift.enabled = true, include += .github/workflows/*.yml`);
|
|
107
|
+
}
|
|
108
|
+
console.log('\n [!] Cross-repo reusable workflows in a private GitHub org require:');
|
|
109
|
+
console.log(' Org Settings → Actions → General → "Allow all actions and reusable workflows"');
|
|
110
|
+
console.log(' or the caller repo must be listed under allowed repositories.\n');
|
|
111
|
+
console.log(' Commit with:');
|
|
112
|
+
console.log(' Governed-By: Stackbilt-dev/stackbilt_llc#11\n');
|
|
113
|
+
return index_1.EXIT_CODE.SUCCESS;
|
|
114
|
+
}
|
|
115
|
+
function resolveStackbiltLlcRef() {
|
|
116
|
+
return new Promise((resolve) => {
|
|
117
|
+
(0, node_child_process_1.exec)('git ls-remote https://github.com/Stackbilt-dev/stackbilt_llc HEAD', { timeout: 20000 }, (err, stdout) => {
|
|
118
|
+
if (err || !stdout.trim()) {
|
|
119
|
+
resolve(null);
|
|
120
|
+
return;
|
|
121
|
+
}
|
|
122
|
+
const sha = stdout.trim().split('\t')[0];
|
|
123
|
+
resolve(sha.length === 40 ? sha : null);
|
|
124
|
+
});
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
//# sourceMappingURL=stamp-policies.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stamp-policies.js","sourceRoot":"","sources":["../../src/commands/stamp-policies.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAiGH,eAAO,MAAM,SAAS;;;;CAIZ,CAAC;AAEX,qBAAa,QAAS,SAAQ,KAAK;aAGf,QAAQ,EAAE,MAAM;gBADhC,OAAO,EAAE,MAAM,EACC,QAAQ,GAAE,MAAgC;CAK7D;AAED,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,MAAM,EAAE,OAAO,CAAC;IAChB,GAAG,EAAE,OAAO,CAAC;CACd;AAED,wBAAsB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAmIzD"}
|
package/dist/index.js
CHANGED
|
@@ -31,6 +31,8 @@ const run_1 = require("./commands/run");
|
|
|
31
31
|
const score_1 = require("./commands/score");
|
|
32
32
|
const blast_1 = require("./commands/blast");
|
|
33
33
|
const surface_1 = require("./commands/surface");
|
|
34
|
+
const context_1 = require("./commands/context");
|
|
35
|
+
const stamp_policies_1 = require("./commands/stamp-policies");
|
|
34
36
|
const telemetry_2 = require("./telemetry");
|
|
35
37
|
const flags_1 = require("./flags");
|
|
36
38
|
const package_json_1 = __importDefault(require("../package.json"));
|
|
@@ -43,6 +45,8 @@ Usage:
|
|
|
43
45
|
charter bootstrap [--ci github] [--preset <name>] [--yes] [--force] [--skip-install] [--skip-doctor]
|
|
44
46
|
One-command repo onboarding (detect + setup + ADF + install + doctor)
|
|
45
47
|
--security-sensitive adds SECURITY.md, hard security drift denies, and a security test check
|
|
48
|
+
charter context [--stdout-only] [--verbose] [--write]
|
|
49
|
+
Pre-digested repo brief for AI agents (routes, hotspots, governance)
|
|
46
50
|
charter setup [--ci github] [--preset <worker|frontend|backend|fullstack>] [--detect-only] [--no-dependency-sync]
|
|
47
51
|
Bootstrap .charter/ and optional CI workflow
|
|
48
52
|
charter init [--preset <worker|frontend|backend|fullstack>] [--guided]
|
|
@@ -53,6 +57,12 @@ Usage:
|
|
|
53
57
|
charter audit [--range <revset>]
|
|
54
58
|
Generate governance audit report
|
|
55
59
|
charter drift [--path <dir>] Scan files for pattern drift
|
|
60
|
+
charter stamp-policies [--path <dir>] [--dry-run] [--no-fix-pins] [--policy-repo-ref <sha>]
|
|
61
|
+
Stamp supply chain CI policies onto a target repo.
|
|
62
|
+
Patches floating action pins to commit SHAs and adds
|
|
63
|
+
supply-chain.yml caller (SBOM + dep-review reusables from
|
|
64
|
+
Stackbilt-dev/stackbilt_llc). Installs floating-action-pins
|
|
65
|
+
drift pattern and updates .charter/config.json.
|
|
56
66
|
charter classify <subject> Classify a change (SURFACE/LOCAL/CROSS_CUTTING)
|
|
57
67
|
charter hook install --commit-msg [--force]
|
|
58
68
|
Install git commit-msg hook for trailer normalization
|
|
@@ -90,6 +100,8 @@ Options:
|
|
|
90
100
|
--detect-only Setup only: print detected stack/preset and exit
|
|
91
101
|
--no-dependency-sync
|
|
92
102
|
Setup only: do not rewrite devDependencies["@stackbilt/cli"]
|
|
103
|
+
--no-deprecation-warning
|
|
104
|
+
Suppress deprecation warnings for login/architect/scaffold/run
|
|
93
105
|
`;
|
|
94
106
|
exports.EXIT_CODE = {
|
|
95
107
|
SUCCESS: 0,
|
|
@@ -153,6 +165,9 @@ async function run(args) {
|
|
|
153
165
|
case 'bootstrap':
|
|
154
166
|
exitCode = await (0, bootstrap_1.bootstrapCommand)(options, restArgs);
|
|
155
167
|
break;
|
|
168
|
+
case 'context':
|
|
169
|
+
exitCode = await (0, context_1.contextCommand)(options, restArgs);
|
|
170
|
+
break;
|
|
156
171
|
case 'setup':
|
|
157
172
|
exitCode = await (0, setup_1.setupCommand)(options, restArgs);
|
|
158
173
|
break;
|
|
@@ -168,6 +183,9 @@ async function run(args) {
|
|
|
168
183
|
case 'drift':
|
|
169
184
|
exitCode = await (0, drift_1.driftCommand)(options, restArgs);
|
|
170
185
|
break;
|
|
186
|
+
case 'stamp-policies':
|
|
187
|
+
exitCode = await (0, stamp_policies_1.stampPoliciesCommand)(options, restArgs);
|
|
188
|
+
break;
|
|
171
189
|
case 'classify':
|
|
172
190
|
exitCode = await (0, classify_1.classifyCommand)(options, restArgs);
|
|
173
191
|
break;
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stackbilt/cli",
|
|
3
3
|
"sideEffects": false,
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.15.1",
|
|
5
5
|
"description": "Charter CLI — repo-level governance checks + architecture scaffolding",
|
|
6
6
|
"bin": {
|
|
7
7
|
"charter": "./dist/bin.js",
|
|
@@ -37,15 +37,16 @@
|
|
|
37
37
|
},
|
|
38
38
|
"dependencies": {
|
|
39
39
|
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
40
|
-
"@stackbilt/
|
|
41
|
-
"@stackbilt/
|
|
42
|
-
"@stackbilt/classify": "
|
|
43
|
-
"@stackbilt/core": "
|
|
44
|
-
"@stackbilt/drift": "
|
|
45
|
-
"@stackbilt/
|
|
46
|
-
"@stackbilt/
|
|
47
|
-
"@stackbilt/
|
|
48
|
-
"@stackbilt/validate": "
|
|
40
|
+
"@stackbilt/blast": "0.15.1",
|
|
41
|
+
"@stackbilt/adf": "0.15.1",
|
|
42
|
+
"@stackbilt/classify": "0.15.1",
|
|
43
|
+
"@stackbilt/core": "0.15.1",
|
|
44
|
+
"@stackbilt/drift": "0.15.1",
|
|
45
|
+
"@stackbilt/policies": "0.15.1",
|
|
46
|
+
"@stackbilt/git": "0.15.1",
|
|
47
|
+
"@stackbilt/surface": "0.15.1",
|
|
48
|
+
"@stackbilt/validate": "0.15.1",
|
|
49
|
+
"@stackbilt/types": "0.15.1"
|
|
49
50
|
},
|
|
50
51
|
"license": "Apache-2.0",
|
|
51
52
|
"author": "Stackbilt LLC",
|