@metasession.co/devaudit-cli 0.1.70 → 0.1.72
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 +41 -3
- package/dist/index.js.map +1 -1
- package/package.json +4 -2
- package/sdlc/files/_common/scripts/derive-release-version.sh +7 -0
- package/sdlc/files/_common/scripts/generate-bundled-changes.sh +88 -0
- package/sdlc/files/_common/scripts/generate-bundled-changes.test.sh +183 -0
- package/sdlc/files/_common/scripts/validate-commits.sh +23 -0
- package/sdlc/files/_common/skills/e2e-test-engineer/SKILL.md +14 -0
- package/sdlc/files/_common/skills/sdlc-implementer/SKILL.md +111 -9
- package/sdlc/files/ci/ci.yml.template +41 -3
- package/sdlc/files/ci/compliance-evidence.yml.template +59 -41
- package/sdlc/files/ci/incident-export.yml.template +18 -8
- package/sdlc/files/stacks/node/hooks/pre-push +118 -2
package/dist/index.js
CHANGED
|
@@ -56,7 +56,7 @@ function emitJsonResult(payload) {
|
|
|
56
56
|
|
|
57
57
|
// package.json
|
|
58
58
|
var package_default = {
|
|
59
|
-
version: "0.1.
|
|
59
|
+
version: "0.1.72"};
|
|
60
60
|
|
|
61
61
|
// src/lib/version.ts
|
|
62
62
|
var CLI_VERSION = package_default.version;
|
|
@@ -2397,6 +2397,43 @@ async function syncCiTemplates(ctx) {
|
|
|
2397
2397
|
}
|
|
2398
2398
|
return { name: "CI workflows", filesSynced: count, message: `${count} generated` };
|
|
2399
2399
|
}
|
|
2400
|
+
var SENTINEL_ENTRIES = [
|
|
2401
|
+
".e2e-gate-passed",
|
|
2402
|
+
".sdlc-implementer-invoked"
|
|
2403
|
+
];
|
|
2404
|
+
var MARKER = "# DevAudit sentinel files (devaudit-installer#226)";
|
|
2405
|
+
async function syncGitignore(ctx) {
|
|
2406
|
+
const gitignorePath = join(ctx.projectPath, ".gitignore");
|
|
2407
|
+
let content = "";
|
|
2408
|
+
let count = 0;
|
|
2409
|
+
if (await exists(gitignorePath)) {
|
|
2410
|
+
content = await promises.readFile(gitignorePath, "utf8");
|
|
2411
|
+
}
|
|
2412
|
+
const lines = content.split("\n");
|
|
2413
|
+
const existing = new Set(lines.map((l) => l.trim()));
|
|
2414
|
+
const toAdd = [];
|
|
2415
|
+
let hasMarker = lines.some((l) => l.trim() === MARKER);
|
|
2416
|
+
for (const entry of SENTINEL_ENTRIES) {
|
|
2417
|
+
if (!existing.has(entry)) {
|
|
2418
|
+
toAdd.push(entry);
|
|
2419
|
+
}
|
|
2420
|
+
}
|
|
2421
|
+
if (toAdd.length > 0) {
|
|
2422
|
+
if (!hasMarker) {
|
|
2423
|
+
toAdd.unshift("", MARKER);
|
|
2424
|
+
hasMarker = true;
|
|
2425
|
+
}
|
|
2426
|
+
lines.push(...toAdd);
|
|
2427
|
+
content = lines.join("\n");
|
|
2428
|
+
await promises.writeFile(gitignorePath, content, "utf8");
|
|
2429
|
+
count = toAdd.filter((l) => !l.startsWith("#") && l.trim() !== "").length;
|
|
2430
|
+
}
|
|
2431
|
+
return {
|
|
2432
|
+
name: "gitignore",
|
|
2433
|
+
filesSynced: count,
|
|
2434
|
+
message: count > 0 ? "added sentinel entries" : "sentinel entries already present"
|
|
2435
|
+
};
|
|
2436
|
+
}
|
|
2400
2437
|
var TIER_1_DOCS = ["Test_Policy.md", "Test_Strategy.md", "Test_Architecture.md"];
|
|
2401
2438
|
async function runValidation(projectPath) {
|
|
2402
2439
|
const warnings = [];
|
|
@@ -2441,7 +2478,8 @@ var SECTION_RUNNERS = [
|
|
|
2441
2478
|
{ key: "2e", run: syncIssueTemplates },
|
|
2442
2479
|
{ key: "2e-ii", run: syncSkills },
|
|
2443
2480
|
{ key: "2e-iii", run: syncEvidenceHelper },
|
|
2444
|
-
{ key: "2f", run: syncCiTemplates }
|
|
2481
|
+
{ key: "2f", run: syncCiTemplates },
|
|
2482
|
+
{ key: "2g", run: syncGitignore }
|
|
2445
2483
|
];
|
|
2446
2484
|
async function syncProject(projectPath) {
|
|
2447
2485
|
const absPath = resolve(projectPath);
|
|
@@ -2829,7 +2867,7 @@ async function runUpdate(options) {
|
|
|
2829
2867
|
log.log("");
|
|
2830
2868
|
log.log("Next steps for each consuming project:");
|
|
2831
2869
|
log.log(" 1. Review the diff: git diff");
|
|
2832
|
-
log.log(" 2. Commit: git add -A && git commit -m 'chore: sync SDLC templates from DevAudit'");
|
|
2870
|
+
log.log(" 2. Commit: git add -A && git commit -m 'chore: sync SDLC templates from DevAudit [skip ci]'");
|
|
2833
2871
|
log.log(" 3. Push to develop");
|
|
2834
2872
|
log.log("");
|
|
2835
2873
|
log.warn("Do NOT auto-commit \u2014 review the changes first.");
|