autonomous-sdlc-harness 0.6.4 → 0.6.6
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/commands/init.js +65 -5
- package/dist/commands/init.js.map +1 -1
- package/dist/config/check.js +10 -1
- package/dist/config/check.js.map +1 -1
- package/dist/config/model.js +13 -0
- package/dist/config/model.js.map +1 -1
- package/dist/core/paths.js +1 -1
- package/dist/core/writer.js +1 -1
- package/dist/detect/signals.js +1 -1
- package/dist/doctor/checks.js +7 -7
- package/dist/doctor/checks.js.map +1 -1
- package/dist/generators/githubWorkflows.js +3 -3
- package/dist/generators/githubWorkflows.js.map +1 -1
- package/dist/generators/harnessConfig.js +10 -5
- package/dist/generators/harnessConfig.js.map +1 -1
- package/dist/generators/scripts.js +1 -1
- package/dist/machine/plugins.js +1 -1
- package/dist/machine/registry.js +2 -2
- package/dist/retrieval/models.js +10 -3
- package/dist/retrieval/models.js.map +1 -1
- package/dist/retrieval/refresh.js +6 -2
- package/dist/retrieval/refresh.js.map +1 -1
- package/package.json +1 -1
- package/templates/github/workflows/harness-control.yml +85 -27
- package/templates/github/workflows/harness-resume.yml +41 -22
- package/templates/github/workflows/harness-run.yml +95 -34
- package/templates/github/workflows/harness-trigger.yml +31 -18
- package/templates/scripts/autonomous-watcher.sh +6 -6
- package/templates/scripts/cleanup-merged-worktrees.sh +1 -1
- package/templates/scripts/lib/harness-run-lib.sh +2 -2
- package/templates/scripts/remote-run.sh +108 -30
- package/templates/state-dir/autonomous_inbox/README.md +1 -1
package/dist/doctor/checks.js
CHANGED
|
@@ -1327,7 +1327,7 @@ function pidIsAlive(pid) {
|
|
|
1327
1327
|
* bare pid walk there would count a `parked`, `paused` or `failed` record whose pid happens to have
|
|
1328
1328
|
* been reused.
|
|
1329
1329
|
*
|
|
1330
|
-
* An absent, unreadable or
|
|
1330
|
+
* An absent, unreadable or unparsable registry counts `0`: this is a report, and a repository whose
|
|
1331
1331
|
* artifact tree cannot be read is better described as "none observed" than as a fault. It reads one
|
|
1332
1332
|
* file and writes nothing.
|
|
1333
1333
|
*/
|
|
@@ -3635,24 +3635,24 @@ const IGNORE_RULES_CHECK = {
|
|
|
3635
3635
|
// Hidden with its negation still in the block, hidden with no negation left at all, and not
|
|
3636
3636
|
// answered — three states with three different sentences to write.
|
|
3637
3637
|
const shadowed = [];
|
|
3638
|
-
const
|
|
3638
|
+
const unlisted = [];
|
|
3639
3639
|
const untested = [];
|
|
3640
3640
|
for (const readme of contractFiles) {
|
|
3641
3641
|
const verdict = pathIsIgnored(ctx.repoRoot, readme);
|
|
3642
3642
|
if (verdict === undefined)
|
|
3643
3643
|
untested.push(readme);
|
|
3644
3644
|
else if (verdict)
|
|
3645
|
-
(negated.has(readme) ? shadowed :
|
|
3645
|
+
(negated.has(readme) ? shadowed : unlisted).push(readme);
|
|
3646
3646
|
}
|
|
3647
|
-
const hidden = [...shadowed, ...
|
|
3647
|
+
const hidden = [...shadowed, ...unlisted];
|
|
3648
3648
|
if (hidden.length > 0) {
|
|
3649
3649
|
const one = hidden.length === 1;
|
|
3650
3650
|
const remedies = [
|
|
3651
3651
|
shadowed.length > 0
|
|
3652
3652
|
? `${nameList(shadowed)} ${shadowed.length === 1 ? 'is' : 'are'} excepted by a \`!\` negation the block still carries, and some rule in force matches the path *after* it — git resolves a path by the **last** pattern that matches, so the exception is inert: put the directory's contents rule — \`<dir>/*\` — back **above** its negation inside the managed block in ${path}, or delete the superseded rule that shadows it. No re-run removes or moves a line, so that edit is by hand`
|
|
3653
3653
|
: '',
|
|
3654
|
-
|
|
3655
|
-
? `the managed block carries no \`!<path>\` negation for ${nameList(
|
|
3654
|
+
unlisted.length > 0
|
|
3655
|
+
? `the managed block carries no \`!<path>\` negation for ${nameList(unlisted)} at all: the line that excepts ${unlisted.length === 1 ? "this directory's" : "these directories'"} committed contract file is missing from ${path}. Re-run \`${CLI} init\`, which merges it back in at its position inside the block`
|
|
3656
3656
|
: '',
|
|
3657
3657
|
].filter((part) => part !== '');
|
|
3658
3658
|
return fail(`git reports ${nameList(hidden)} ignored in this working tree, though the run-artifact tree generator commits ${one ? 'it' : 'each of them'} as the contract for what its directory holds: \`git add\` refuses ${one ? 'it' : 'them'} and ${one ? 'it stays' : 'they stay'} untracked while init, doctor and every git command report success. ${remedies.join('. ')}. Then \`git add\` each path named here`);
|
|
@@ -4391,7 +4391,7 @@ function lastNonEmptyLine(output) {
|
|
|
4391
4391
|
*
|
|
4392
4392
|
* **`spawnSync` rather than `execFileSync`**, for the reason `cli/src/commands/doctor.ts` →
|
|
4393
4393
|
* `runNotifier` states: `execFileSync` returns stdout and surfaces a child's stderr on the error path
|
|
4394
|
-
* only, and the child's corpus-coverage warnings — an unset or
|
|
4394
|
+
* only, and the child's corpus-coverage warnings — an unset or misspelled `docs.root`, a missing
|
|
4395
4395
|
* conventions document — are printed on stderr by a run that **succeeds**. This is the one check an
|
|
4396
4396
|
* adopter runs to answer "is retrieval set up correctly?", so a build over a corpus missing the whole
|
|
4397
4397
|
* documentation catalog must not read as an unqualified pass.
|