agent-work-loop 0.6.47 → 0.6.48
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/{brief-SGMFXOY2.js → brief-ODMUS5B3.js} +4 -4
- package/dist/{changelog-VNJ4EQ74.js → changelog-P35RSRT3.js} +4 -4
- package/dist/{chunk-FK3Q7UY2.js → chunk-2NETKDCV.js} +2 -2
- package/dist/{chunk-SFTVZFTQ.js → chunk-AVIUMBJZ.js} +3 -3
- package/dist/{chunk-MLTY3EE6.js → chunk-FLVRMRHX.js} +1 -1
- package/dist/{chunk-PUINOFOR.js → chunk-FPNV5L3Y.js} +3 -3
- package/dist/{chunk-YW64OU6W.js → chunk-HW2OSIB3.js} +1 -1
- package/dist/{chunk-SJG22DAK.js → chunk-IPNBHVGX.js} +30 -1
- package/dist/{chunk-ZRKOZQKP.js → chunk-ITZ52UYF.js} +4 -4
- package/dist/{chunk-NCS2EPDP.js → chunk-IUXE7EG3.js} +4 -4
- package/dist/{chunk-5HXSUU6Y.js → chunk-JY3DXRXV.js} +8 -8
- package/dist/{chunk-R4UNIGE5.js → chunk-KKFXZ3NV.js} +6 -6
- package/dist/{chunk-EHJYX57P.js → chunk-OQJIRLKN.js} +1 -1
- package/dist/{chunk-VVZOIFL4.js → chunk-RTALSPLK.js} +1 -1
- package/dist/{chunk-VE2GVNNS.js → chunk-RTZLAXTZ.js} +16 -5
- package/dist/{chunk-IVEV5L7P.js → chunk-TCIRO4GU.js} +1 -1
- package/dist/{chunk-R5JAYYQ6.js → chunk-UFVGXPJB.js} +4 -4
- package/dist/cli.js +44 -42
- package/dist/{commit-GPQATPEA.js → commit-7ONX22OG.js} +25 -7
- package/dist/{config-QTEKLFZP.js → config-KNSNSKU7.js} +2 -2
- package/dist/{doctor-3XCI22NM.js → doctor-UYO4Z6VC.js} +7 -7
- package/dist/{evolve-N3S32P5I.js → evolve-KSA5W6F3.js} +6 -6
- package/dist/{feedback-log-UCNJ2GVT.js → feedback-log-BIIFYX6D.js} +4 -4
- package/dist/{gotchas-PDG2ZZFQ.js → gotchas-US2HUCK2.js} +6 -6
- package/dist/{hold-recheck-UNAILFN5.js → hold-recheck-NYW2AGYK.js} +5 -5
- package/dist/{init-3B4ZRGWY.js → init-PEKMQY7D.js} +1 -1
- package/dist/{lane-5CU25EAJ.js → lane-647Q33RO.js} +14 -14
- package/dist/{loop-summary-CODZMRUY.js → loop-summary-BRRJ6V2U.js} +5 -5
- package/dist/{metrics-ZR7BPATB.js → metrics-C3UUN5U5.js} +3 -3
- package/dist/{record-TSB22DIO.js → record-MBGID3SX.js} +4 -4
- package/dist/{remove-SGQHBPW3.js → remove-46IZDWJ7.js} +14 -14
- package/dist/{review-RT7EPECQ.js → review-XBOUKZTN.js} +12 -12
- package/dist/{rules-QLUXNSCN.js → rules-JKR4DO6F.js} +7 -7
- package/dist/{state-6IIH7SW2.js → state-QVDADIXS.js} +3 -3
- package/dist/{status-2LPWVCHT.js → status-BJ4B6NKL.js} +5 -5
- package/dist/{update-CKGPHO5B.js → update-UXULNKWR.js} +1 -1
- package/dist/{verify-34G2WAQ4.js → verify-7KWUZCN7.js} +9 -9
- package/dist/{version-check-ZVQZAJ5X.js → version-check-Y3KBDUQ2.js} +4 -4
- package/dist/{work-XO5RGFTG.js → work-T5S4FNFZ.js} +13 -13
- package/engine/skills/claude/awl-pipeline/SKILL.md +1 -0
- package/engine/skills/claude/awl-pipeline-exec/SKILL.md +7 -4
- package/engine/skills/claude/awl-pipeline-review/SKILL.md +6 -3
- package/engine/version.json +1 -1
- package/package.json +1 -1
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import {
|
|
2
2
|
loadProjectName,
|
|
3
3
|
readRecords
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-2NETKDCV.js";
|
|
5
5
|
import {
|
|
6
6
|
loadState
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-RTZLAXTZ.js";
|
|
8
8
|
import {
|
|
9
9
|
resolveProjectRoot,
|
|
10
10
|
run
|
|
11
|
-
} from "./chunk-
|
|
12
|
-
import "./chunk-
|
|
11
|
+
} from "./chunk-FLVRMRHX.js";
|
|
12
|
+
import "./chunk-IPNBHVGX.js";
|
|
13
13
|
import "./chunk-FGHILN3D.js";
|
|
14
14
|
|
|
15
15
|
// src/commands/brief.ts
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import {
|
|
2
2
|
readRecords
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-2NETKDCV.js";
|
|
4
4
|
import {
|
|
5
5
|
loadState
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-RTZLAXTZ.js";
|
|
7
7
|
import {
|
|
8
8
|
resolveProjectRoot
|
|
9
|
-
} from "./chunk-
|
|
10
|
-
import "./chunk-
|
|
9
|
+
} from "./chunk-FLVRMRHX.js";
|
|
10
|
+
import "./chunk-IPNBHVGX.js";
|
|
11
11
|
import {
|
|
12
12
|
caps,
|
|
13
13
|
signal
|
|
@@ -2,11 +2,11 @@ import {
|
|
|
2
2
|
getCriterion,
|
|
3
3
|
loadState,
|
|
4
4
|
writeState
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-RTZLAXTZ.js";
|
|
6
6
|
import {
|
|
7
7
|
resolveProjectRoot,
|
|
8
8
|
run
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-FLVRMRHX.js";
|
|
10
10
|
import {
|
|
11
11
|
caps,
|
|
12
12
|
makeColors,
|
|
@@ -3,14 +3,14 @@ import {
|
|
|
3
3
|
getLatestVersionCached,
|
|
4
4
|
name,
|
|
5
5
|
version
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-HW2OSIB3.js";
|
|
7
7
|
import {
|
|
8
8
|
resolveProjectRoot
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-FLVRMRHX.js";
|
|
10
10
|
import {
|
|
11
11
|
packageEngineDir,
|
|
12
12
|
skillsVersionPath
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-IPNBHVGX.js";
|
|
14
14
|
import {
|
|
15
15
|
caps,
|
|
16
16
|
installedEngineVersion,
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import {
|
|
2
2
|
readRecords
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-2NETKDCV.js";
|
|
4
4
|
import {
|
|
5
5
|
loadState
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-RTZLAXTZ.js";
|
|
7
7
|
import {
|
|
8
8
|
multiProjectFooter,
|
|
9
9
|
resolveProjectScope,
|
|
10
10
|
run
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-FLVRMRHX.js";
|
|
12
12
|
import {
|
|
13
13
|
WORKTREES_DIR,
|
|
14
14
|
caps,
|
|
@@ -531,9 +531,38 @@ function ensureGitignore(projectRoot) {
|
|
|
531
531
|
fs.writeFileSync(gi, content);
|
|
532
532
|
return "added";
|
|
533
533
|
}
|
|
534
|
+
function safetyHookPath(projectRoot) {
|
|
535
|
+
const dotGit = path.join(projectRoot, ".git");
|
|
536
|
+
const dotGitStat = fs.statSync(dotGit);
|
|
537
|
+
if (dotGitStat.isDirectory()) {
|
|
538
|
+
return path.join(dotGit, "hooks", "pre-push");
|
|
539
|
+
}
|
|
540
|
+
if (!dotGitStat.isFile()) {
|
|
541
|
+
throw new Error(`${dotGit} is neither a directory nor a gitdir file`);
|
|
542
|
+
}
|
|
543
|
+
const gitdirMatch = fs.readFileSync(dotGit, "utf8").match(/^gitdir:\s*(.+?)\s*$/m);
|
|
544
|
+
if (!gitdirMatch) {
|
|
545
|
+
throw new Error(`${dotGit} does not contain a gitdir: line`);
|
|
546
|
+
}
|
|
547
|
+
const gitdir = gitdirMatch[1];
|
|
548
|
+
if (!gitdir) {
|
|
549
|
+
throw new Error(`${dotGit} has an empty gitdir: line`);
|
|
550
|
+
}
|
|
551
|
+
const worktreeGitDir = path.resolve(path.dirname(dotGit), gitdir);
|
|
552
|
+
const commonDirFile = path.join(worktreeGitDir, "commondir");
|
|
553
|
+
let commonGitDir = worktreeGitDir;
|
|
554
|
+
if (exists(commonDirFile)) {
|
|
555
|
+
const commonDir = fs.readFileSync(commonDirFile, "utf8").trim();
|
|
556
|
+
if (commonDir === "") {
|
|
557
|
+
throw new Error(`${commonDirFile} is empty`);
|
|
558
|
+
}
|
|
559
|
+
commonGitDir = path.resolve(worktreeGitDir, commonDir);
|
|
560
|
+
}
|
|
561
|
+
return path.join(commonGitDir, "hooks", "pre-push");
|
|
562
|
+
}
|
|
534
563
|
function installSafetyHook(projectRoot) {
|
|
535
564
|
try {
|
|
536
|
-
const hook =
|
|
565
|
+
const hook = safetyHookPath(projectRoot);
|
|
537
566
|
if (exists(hook))
|
|
538
567
|
return { installed: false, warning: "\uAE30\uC874 pre-push \uD6C5\uC774 \uC788\uC5B4 awl \uD6C5\uC744 \uB36E\uC5B4\uC4F0\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4." };
|
|
539
568
|
const template = path.join(packageEngineDir(), "templates", "pre-push.sample");
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import {
|
|
2
2
|
computeDurationMs
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-TCIRO4GU.js";
|
|
4
4
|
import {
|
|
5
5
|
computeCoverage,
|
|
6
6
|
readRecords
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-2NETKDCV.js";
|
|
8
8
|
import {
|
|
9
9
|
loadState
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-RTZLAXTZ.js";
|
|
11
11
|
import {
|
|
12
12
|
requireConfig
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-FLVRMRHX.js";
|
|
14
14
|
import {
|
|
15
15
|
caps,
|
|
16
16
|
generationsDir,
|
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
import {
|
|
2
2
|
protectedFilesMessage
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-RTALSPLK.js";
|
|
4
4
|
import {
|
|
5
5
|
gitDirtyFiles
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-KKFXZ3NV.js";
|
|
7
7
|
import {
|
|
8
8
|
applyVerificationAttempts,
|
|
9
9
|
loadState,
|
|
10
10
|
writeState
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-RTZLAXTZ.js";
|
|
12
12
|
import {
|
|
13
13
|
CommandNotFoundError,
|
|
14
14
|
VERIFY_ORDER,
|
|
15
15
|
requireConfig,
|
|
16
16
|
run
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-FLVRMRHX.js";
|
|
18
18
|
import {
|
|
19
19
|
caps,
|
|
20
20
|
makeColors,
|
|
@@ -4,37 +4,37 @@ import {
|
|
|
4
4
|
} from "./chunk-D5OINC3G.js";
|
|
5
5
|
import {
|
|
6
6
|
parseRuleFile
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-OQJIRLKN.js";
|
|
8
8
|
import {
|
|
9
9
|
nextGotchaId
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-ITZ52UYF.js";
|
|
11
11
|
import {
|
|
12
12
|
buildVerifyBaseline,
|
|
13
13
|
isCheckPassed,
|
|
14
14
|
runVerifyChecks,
|
|
15
15
|
writeVerifyBaseline
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-IUXE7EG3.js";
|
|
17
17
|
import {
|
|
18
18
|
gitBranch
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-KKFXZ3NV.js";
|
|
20
20
|
import {
|
|
21
21
|
loadProjectName
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-2NETKDCV.js";
|
|
23
23
|
import {
|
|
24
24
|
loadState,
|
|
25
25
|
migrateState,
|
|
26
26
|
writeState
|
|
27
|
-
} from "./chunk-
|
|
27
|
+
} from "./chunk-RTZLAXTZ.js";
|
|
28
28
|
import {
|
|
29
29
|
loadConfig,
|
|
30
30
|
multiProjectFooter,
|
|
31
31
|
resolveProjectRoot,
|
|
32
32
|
resolveProjectScope,
|
|
33
33
|
run
|
|
34
|
-
} from "./chunk-
|
|
34
|
+
} from "./chunk-FLVRMRHX.js";
|
|
35
35
|
import {
|
|
36
36
|
installClaudeSkill
|
|
37
|
-
} from "./chunk-
|
|
37
|
+
} from "./chunk-IPNBHVGX.js";
|
|
38
38
|
import {
|
|
39
39
|
caps,
|
|
40
40
|
feedback,
|
|
@@ -1,25 +1,25 @@
|
|
|
1
1
|
import {
|
|
2
2
|
loadProjectName,
|
|
3
3
|
readRecords
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-2NETKDCV.js";
|
|
5
5
|
import {
|
|
6
6
|
loadState,
|
|
7
7
|
readStateLock
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-RTZLAXTZ.js";
|
|
9
9
|
import {
|
|
10
10
|
gatherVersionInputs
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-AVIUMBJZ.js";
|
|
12
12
|
import {
|
|
13
13
|
checkVersions
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-HW2OSIB3.js";
|
|
15
15
|
import {
|
|
16
16
|
CommandNotFoundError,
|
|
17
17
|
run,
|
|
18
18
|
tokenize
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-FLVRMRHX.js";
|
|
20
20
|
import {
|
|
21
21
|
listRegisteredProjects
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-IPNBHVGX.js";
|
|
23
23
|
import {
|
|
24
24
|
caps,
|
|
25
25
|
clipToWidth,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
resolveProjectRoot
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-FLVRMRHX.js";
|
|
4
4
|
import {
|
|
5
5
|
caps,
|
|
6
6
|
makeColors,
|
|
@@ -232,13 +232,16 @@ function runStateSet(jsonPatch, opts = {}) {
|
|
|
232
232
|
process.exit(1);
|
|
233
233
|
}
|
|
234
234
|
let gateRejected = false;
|
|
235
|
+
let workitemRejected = false;
|
|
236
|
+
let activeWorkitem;
|
|
235
237
|
try {
|
|
236
238
|
const current = loadState(root);
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
239
|
+
activeWorkitem = typeof current.workitem === "string" ? current.workitem : void 0;
|
|
240
|
+
workitemRejected = opts.workitem !== void 0 && activeWorkitem !== opts.workitem;
|
|
241
|
+
if (!workitemRejected && p.phase === "loop" && opts.requireGateForLoop) {
|
|
242
|
+
gateRejected = !opts.requireGateForLoop(activeWorkitem);
|
|
240
243
|
}
|
|
241
|
-
if (!gateRejected) {
|
|
244
|
+
if (!workitemRejected && !gateRejected) {
|
|
242
245
|
const merged = mergeState(current, p);
|
|
243
246
|
writeState(root, merged);
|
|
244
247
|
process.stdout.write(`${JSON.stringify(merged, null, 2)}
|
|
@@ -247,6 +250,14 @@ function runStateSet(jsonPatch, opts = {}) {
|
|
|
247
250
|
} finally {
|
|
248
251
|
releaseStateLock(root, token);
|
|
249
252
|
}
|
|
253
|
+
if (workitemRejected) {
|
|
254
|
+
process.stderr.write(
|
|
255
|
+
`
|
|
256
|
+
\uD65C\uC131 \uC6CC\uD06C\uC544\uC774\uD15C\uC774 ${activeWorkitem ?? "(\uC5C6\uC74C)"}\uC73C\uB85C \uBC14\uB00C\uC5B4 \uC788\uC5B4 ${opts.workitem} \uB300\uC0C1 \uAC31\uC2E0\uC744 \uAC70\uBD80\uD588\uC2B5\uB2C8\uB2E4.
|
|
257
|
+
`
|
|
258
|
+
);
|
|
259
|
+
process.exit(1);
|
|
260
|
+
}
|
|
250
261
|
if (gateRejected) {
|
|
251
262
|
process.stderr.write(
|
|
252
263
|
"\n \uAC8C\uC774\uD2B8 1 \uC2B9\uC778 \uAE30\uB85D\uC774 \uC5C6\uC2B5\uB2C8\uB2E4. awl record gate \uB85C \uACC4\uD68D\uC744 \uC2B9\uC778(approved)\uD55C \uB4A4 \uB2E4\uC2DC \uC2DC\uB3C4\uD558\uC138\uC694.\n"
|
|
@@ -5,18 +5,18 @@ import {
|
|
|
5
5
|
runWorkNew,
|
|
6
6
|
sanitizeForGit,
|
|
7
7
|
worktreeDirtyTracked
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-JY3DXRXV.js";
|
|
9
9
|
import {
|
|
10
10
|
loadProjectName
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-2NETKDCV.js";
|
|
12
12
|
import {
|
|
13
13
|
loadState,
|
|
14
14
|
writeState
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-RTZLAXTZ.js";
|
|
16
16
|
import {
|
|
17
17
|
resolveProjectRoot,
|
|
18
18
|
run
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-FLVRMRHX.js";
|
|
20
20
|
import {
|
|
21
21
|
WORKTREES_DIR,
|
|
22
22
|
caps,
|