agent-work-loop 0.6.41 → 0.6.44

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.
Files changed (50) hide show
  1. package/dist/{brief-GQRHGJQN.js → brief-I2EQVY3F.js} +5 -5
  2. package/dist/{changelog-HZMH3RPD.js → changelog-UBIZQHQO.js} +5 -5
  3. package/dist/{chunk-OJ7YO3MY.js → chunk-236TTTK3.js} +2 -2
  4. package/dist/{chunk-XBUKFMNN.js → chunk-2FQ5HCDI.js} +41 -13
  5. package/dist/{chunk-G6JX5EYW.js → chunk-3LPCP55B.js} +61 -10
  6. package/dist/{chunk-HFRQCP26.js → chunk-3N3QH4PK.js} +4 -4
  7. package/dist/{chunk-6F4VAVKF.js → chunk-4BUPV5VU.js} +3 -3
  8. package/dist/{chunk-B76434VM.js → chunk-DNDODLP2.js} +2 -2
  9. package/dist/{chunk-SUF5ISJM.js → chunk-FGHILN3D.js} +9 -1
  10. package/dist/{chunk-4ZLARTXS.js → chunk-GYXIREXZ.js} +47 -3
  11. package/dist/{chunk-NOU677FX.js → chunk-K2JV27JR.js} +1 -1
  12. package/dist/{chunk-OWILAE4M.js → chunk-L4VWHK4D.js} +53 -39
  13. package/dist/{chunk-2XQZQP7Z.js → chunk-LBZNBCAY.js} +6 -7
  14. package/dist/{chunk-CSBKWYFK.js → chunk-O7PUNJVM.js} +5 -5
  15. package/dist/{chunk-7TMAQRJS.js → chunk-SJG22DAK.js} +27 -6
  16. package/dist/{chunk-FKBBGXGF.js → chunk-SKJZSRVR.js} +5 -5
  17. package/dist/{chunk-7D4T7HFK.js → chunk-SNWJWX5K.js} +126 -6
  18. package/dist/{chunk-UNANHUG3.js → chunk-WOH6WML7.js} +2 -2
  19. package/dist/cli.js +53 -43
  20. package/dist/{commit-SU6CTBU3.js → commit-I5ULIUHW.js} +6 -6
  21. package/dist/{config-Z4G5SBWJ.js → config-6VD46H24.js} +9 -3
  22. package/dist/{doctor-GHWUUAWV.js → doctor-QQLQOP3Y.js} +8 -8
  23. package/dist/{evolve-SQJ5LIE4.js → evolve-MXGX33GB.js} +7 -7
  24. package/dist/{feedback-TPITVUZL.js → feedback-K3P6667T.js} +5 -5
  25. package/dist/{gotchas-UEZG3HVO.js → gotchas-HF5Q2MOA.js} +7 -7
  26. package/dist/{hold-recheck-STHUHCOU.js → hold-recheck-CBSGGRBM.js} +6 -17
  27. package/dist/{init-AVVD77XM.js → init-3B4ZRGWY.js} +2 -2
  28. package/dist/lane-BJ2NJYAH.js +39 -0
  29. package/dist/{loop-summary-L4UTUOPY.js → loop-summary-RZQBTKVY.js} +49 -7
  30. package/dist/{metrics-SOYVRSNM.js → metrics-6SZQAG3C.js} +4 -4
  31. package/dist/{record-V6V5XPPA.js → record-UU4WPT2Z.js} +5 -5
  32. package/dist/{remove-6VQS4ST6.js → remove-UOAMHEUC.js} +16 -16
  33. package/dist/{review-42SXUBZE.js → review-DXSGXZLX.js} +15 -15
  34. package/dist/{rules-ASJFXFGG.js → rules-QDAC6BUX.js} +8 -8
  35. package/dist/{state-6TNG2EC5.js → state-DZC7JVEK.js} +4 -4
  36. package/dist/status-ZZEF4NYL.js +29 -0
  37. package/dist/{update-3AYB3V4I.js → update-CKGPHO5B.js} +2 -2
  38. package/dist/{verify-ZVZCJ3LH.js → verify-LOTTWOHB.js} +10 -10
  39. package/dist/version-check-SILVRBMJ.js +14 -0
  40. package/dist/{work-TVUOH7GQ.js → work-RCV5H7TL.js} +14 -14
  41. package/engine/skills/claude/awl-loop/SKILL.md +16 -0
  42. package/engine/skills/claude/awl-loop/reference.md +4 -0
  43. package/engine/skills/claude/awl-pipeline/SKILL.md +74 -0
  44. package/engine/skills/claude/awl-pipeline-exec/SKILL.md +8 -1
  45. package/engine/skills/claude/awl-pipeline-review/SKILL.md +7 -1
  46. package/engine/version.json +1 -1
  47. package/package.json +1 -1
  48. package/dist/lane-JTE45KFF.js +0 -41
  49. package/dist/status-43UVJLVD.js +0 -40
  50. package/dist/version-check-OKCLT4BF.js +0 -14
@@ -1,4 +1,5 @@
1
1
  import {
2
+ DEFAULT_FEEDBACK_PATH,
2
3
  KNOWN_LANGUAGES,
3
4
  KNOWN_NAMING_CONVENTIONS,
4
5
  SETTABLE_KEYS,
@@ -6,17 +7,20 @@ import {
6
7
  applyConfigValue,
7
8
  interactiveEditMenu,
8
9
  loadConfig,
10
+ multiProjectFooter,
9
11
  parseConfigKey,
10
12
  parseVerifyValue,
11
13
  requireConfig,
12
14
  resolveProjectRoot,
15
+ resolveProjectScope,
13
16
  runConfig,
14
17
  runConfigSet,
15
18
  validateConfig
16
- } from "./chunk-7D4T7HFK.js";
17
- import "./chunk-7TMAQRJS.js";
18
- import "./chunk-SUF5ISJM.js";
19
+ } from "./chunk-SNWJWX5K.js";
20
+ import "./chunk-SJG22DAK.js";
21
+ import "./chunk-FGHILN3D.js";
19
22
  export {
23
+ DEFAULT_FEEDBACK_PATH,
20
24
  KNOWN_LANGUAGES,
21
25
  KNOWN_NAMING_CONVENTIONS,
22
26
  SETTABLE_KEYS,
@@ -24,10 +28,12 @@ export {
24
28
  applyConfigValue,
25
29
  interactiveEditMenu,
26
30
  loadConfig,
31
+ multiProjectFooter,
27
32
  parseConfigKey,
28
33
  parseVerifyValue,
29
34
  requireConfig,
30
35
  resolveProjectRoot,
36
+ resolveProjectScope,
31
37
  runConfig,
32
38
  runConfigSet,
33
39
  validateConfig
@@ -8,14 +8,14 @@ import {
8
8
  gitHasCommits,
9
9
  renderText,
10
10
  runDoctor
11
- } from "./chunk-OWILAE4M.js";
12
- import "./chunk-HFRQCP26.js";
13
- import "./chunk-B76434VM.js";
14
- import "./chunk-6F4VAVKF.js";
15
- import "./chunk-UNANHUG3.js";
16
- import "./chunk-7D4T7HFK.js";
17
- import "./chunk-7TMAQRJS.js";
18
- import "./chunk-SUF5ISJM.js";
11
+ } from "./chunk-L4VWHK4D.js";
12
+ import "./chunk-4BUPV5VU.js";
13
+ import "./chunk-WOH6WML7.js";
14
+ import "./chunk-3N3QH4PK.js";
15
+ import "./chunk-DNDODLP2.js";
16
+ import "./chunk-SNWJWX5K.js";
17
+ import "./chunk-SJG22DAK.js";
18
+ import "./chunk-FGHILN3D.js";
19
19
  export {
20
20
  collectChecks,
21
21
  computeFileSizeOutliers,
@@ -13,13 +13,13 @@ import {
13
13
  runEvolveCollect,
14
14
  runEvolveRecord,
15
15
  writeGeneration
16
- } from "./chunk-FKBBGXGF.js";
17
- import "./chunk-4ZLARTXS.js";
18
- import "./chunk-6F4VAVKF.js";
19
- import "./chunk-UNANHUG3.js";
20
- import "./chunk-7D4T7HFK.js";
21
- import "./chunk-7TMAQRJS.js";
22
- import "./chunk-SUF5ISJM.js";
16
+ } from "./chunk-SKJZSRVR.js";
17
+ import "./chunk-GYXIREXZ.js";
18
+ import "./chunk-4BUPV5VU.js";
19
+ import "./chunk-WOH6WML7.js";
20
+ import "./chunk-SNWJWX5K.js";
21
+ import "./chunk-SJG22DAK.js";
22
+ import "./chunk-FGHILN3D.js";
23
23
  export {
24
24
  GOTCHA_RELATION_TYPES,
25
25
  acquireLock,
@@ -1,15 +1,15 @@
1
1
  import {
2
2
  readRecords
3
- } from "./chunk-6F4VAVKF.js";
4
- import "./chunk-UNANHUG3.js";
5
- import "./chunk-7D4T7HFK.js";
6
- import "./chunk-7TMAQRJS.js";
3
+ } from "./chunk-4BUPV5VU.js";
4
+ import "./chunk-WOH6WML7.js";
5
+ import "./chunk-SNWJWX5K.js";
6
+ import "./chunk-SJG22DAK.js";
7
7
  import {
8
8
  caps,
9
9
  makeColors,
10
10
  sectionBox,
11
11
  signal
12
- } from "./chunk-SUF5ISJM.js";
12
+ } from "./chunk-FGHILN3D.js";
13
13
 
14
14
  // src/commands/feedback.ts
15
15
  var SEVERITY_RANK = { high: 0, medium: 1, low: 2 };
@@ -1,16 +1,16 @@
1
1
  import {
2
2
  loadGotchaList
3
- } from "./chunk-FKBBGXGF.js";
4
- import "./chunk-4ZLARTXS.js";
5
- import "./chunk-6F4VAVKF.js";
6
- import "./chunk-UNANHUG3.js";
7
- import "./chunk-7D4T7HFK.js";
8
- import "./chunk-7TMAQRJS.js";
3
+ } from "./chunk-SKJZSRVR.js";
4
+ import "./chunk-GYXIREXZ.js";
5
+ import "./chunk-4BUPV5VU.js";
6
+ import "./chunk-WOH6WML7.js";
7
+ import "./chunk-SNWJWX5K.js";
8
+ import "./chunk-SJG22DAK.js";
9
9
  import {
10
10
  caps,
11
11
  makeColors,
12
12
  sectionBox
13
- } from "./chunk-SUF5ISJM.js";
13
+ } from "./chunk-FGHILN3D.js";
14
14
 
15
15
  // src/commands/gotchas.ts
16
16
  function loadGotchas() {
@@ -1,29 +1,18 @@
1
1
  import {
2
2
  pipelineLanes
3
- } from "./chunk-G6JX5EYW.js";
4
- import "./chunk-2XQZQP7Z.js";
5
- import "./chunk-XBUKFMNN.js";
6
- import "./chunk-D5OINC3G.js";
7
- import "./chunk-CSBKWYFK.js";
8
- import "./chunk-NOU677FX.js";
9
- import "./chunk-OWILAE4M.js";
10
- import "./chunk-HFRQCP26.js";
11
- import "./chunk-B76434VM.js";
12
- import "./chunk-OJ7YO3MY.js";
13
- import "./chunk-FKBBGXGF.js";
14
- import "./chunk-4ZLARTXS.js";
15
- import "./chunk-6F4VAVKF.js";
16
- import "./chunk-UNANHUG3.js";
3
+ } from "./chunk-3LPCP55B.js";
4
+ import "./chunk-4BUPV5VU.js";
5
+ import "./chunk-WOH6WML7.js";
17
6
  import {
18
7
  resolveProjectRoot
19
- } from "./chunk-7D4T7HFK.js";
20
- import "./chunk-7TMAQRJS.js";
8
+ } from "./chunk-SNWJWX5K.js";
9
+ import "./chunk-SJG22DAK.js";
21
10
  import {
22
11
  caps,
23
12
  makeColors,
24
13
  sectionBox,
25
14
  signal
26
- } from "./chunk-SUF5ISJM.js";
15
+ } from "./chunk-FGHILN3D.js";
27
16
 
28
17
  // src/commands/hold-recheck.ts
29
18
  import fs from "fs";
@@ -45,8 +45,8 @@ import {
45
45
  writeConfig,
46
46
  writeSkillsVersionStamp,
47
47
  writeState
48
- } from "./chunk-7TMAQRJS.js";
49
- import "./chunk-SUF5ISJM.js";
48
+ } from "./chunk-SJG22DAK.js";
49
+ import "./chunk-FGHILN3D.js";
50
50
  export {
51
51
  LANG_OPTIONS,
52
52
  LANG_VALUES,
@@ -0,0 +1,39 @@
1
+ import {
2
+ branchOf,
3
+ collectLanes,
4
+ laneBranchMap,
5
+ parseWorktreeBranches,
6
+ renderLaneList,
7
+ runLaneList,
8
+ runLaneNew,
9
+ runLaneRemove,
10
+ unmergedCommitCount,
11
+ worktreeUntracked
12
+ } from "./chunk-LBZNBCAY.js";
13
+ import "./chunk-2FQ5HCDI.js";
14
+ import "./chunk-D5OINC3G.js";
15
+ import "./chunk-236TTTK3.js";
16
+ import "./chunk-SKJZSRVR.js";
17
+ import "./chunk-GYXIREXZ.js";
18
+ import "./chunk-O7PUNJVM.js";
19
+ import "./chunk-K2JV27JR.js";
20
+ import "./chunk-L4VWHK4D.js";
21
+ import "./chunk-4BUPV5VU.js";
22
+ import "./chunk-WOH6WML7.js";
23
+ import "./chunk-3N3QH4PK.js";
24
+ import "./chunk-DNDODLP2.js";
25
+ import "./chunk-SNWJWX5K.js";
26
+ import "./chunk-SJG22DAK.js";
27
+ import "./chunk-FGHILN3D.js";
28
+ export {
29
+ branchOf,
30
+ collectLanes,
31
+ laneBranchMap,
32
+ parseWorktreeBranches,
33
+ renderLaneList,
34
+ runLaneList,
35
+ runLaneNew,
36
+ runLaneRemove,
37
+ unmergedCommitCount,
38
+ worktreeUntracked
39
+ };
@@ -6,24 +6,27 @@ import {
6
6
  computeDurationMs,
7
7
  fmtDuration,
8
8
  loadGenerations
9
- } from "./chunk-4ZLARTXS.js";
9
+ } from "./chunk-GYXIREXZ.js";
10
10
  import {
11
11
  collectDeferred,
12
12
  readRecords
13
- } from "./chunk-6F4VAVKF.js";
13
+ } from "./chunk-4BUPV5VU.js";
14
14
  import {
15
15
  loadState
16
- } from "./chunk-UNANHUG3.js";
16
+ } from "./chunk-WOH6WML7.js";
17
17
  import {
18
- requireConfig
19
- } from "./chunk-7D4T7HFK.js";
20
- import "./chunk-7TMAQRJS.js";
18
+ loadConfig,
19
+ multiProjectFooter,
20
+ requireConfig,
21
+ resolveProjectScope
22
+ } from "./chunk-SNWJWX5K.js";
23
+ import "./chunk-SJG22DAK.js";
21
24
  import {
22
25
  caps,
23
26
  makeColors,
24
27
  padEndDisplay,
25
28
  sectionBox
26
- } from "./chunk-SUF5ISJM.js";
29
+ } from "./chunk-FGHILN3D.js";
27
30
 
28
31
  // src/commands/loop-summary.ts
29
32
  function gateAuto(rec) {
@@ -325,6 +328,45 @@ function runLoopSummary(opts) {
325
328
  runLoopSummaryBatch(opts);
326
329
  return;
327
330
  }
331
+ const scope = resolveProjectScope();
332
+ if (scope.mode === "multi" && scope.projects) {
333
+ const c = caps();
334
+ const color = makeColors(c.color);
335
+ const perProject = scope.projects.map((p) => {
336
+ const loaded = loadConfig(p.path);
337
+ const projectName = loaded.config?.project;
338
+ const state2 = loadState(p.path);
339
+ const current2 = typeof state2.workitem === "string" ? state2.workitem : null;
340
+ const workitem2 = opts.workitem ?? current2;
341
+ const records2 = workitem2 ? readRecords({ workitem: workitem2 }).filter((r) => r.project === projectName) : [];
342
+ const criteria2 = criteriaFor(state2, workitem2, current2);
343
+ const costDelta2 = computeCostDelta(
344
+ startCostOf(state2, workitem2, current2),
345
+ readCostSnapshot(opts.usagePath)
346
+ );
347
+ const summary2 = assembleLoopSummary(workitem2, records2, criteria2, costDelta2);
348
+ return { name: p.name, path: p.path, summary: summary2 };
349
+ });
350
+ if (opts.json) {
351
+ const projects = perProject.map(({ name, path, summary: summary2 }) => ({
352
+ name,
353
+ path,
354
+ ...summaryToJson(summary2)
355
+ }));
356
+ process.stdout.write(`${JSON.stringify({ multiProject: true, projects }, null, 2)}
357
+ `);
358
+ return;
359
+ }
360
+ const blocks = perProject.map(
361
+ ({ name, path, summary: summary2 }) => `${color.bold(`\uD504\uB85C\uC81D\uD2B8: ${name} (${path})`)}
362
+ ${renderLoopSummary(summary2, c)}`
363
+ );
364
+ process.stdout.write(`${blocks.join("\n\n")}
365
+ `);
366
+ process.stdout.write(`${multiProjectFooter(scope.projects, "awl loop-summary", c)}
367
+ `);
368
+ return;
369
+ }
328
370
  const { projectRoot } = requireConfig();
329
371
  const state = loadState(projectRoot);
330
372
  const current = typeof state.workitem === "string" ? state.workitem : null;
@@ -8,10 +8,10 @@ import {
8
8
  renderMetrics,
9
9
  renderMetricsCaveat,
10
10
  runMetrics
11
- } from "./chunk-4ZLARTXS.js";
12
- import "./chunk-7D4T7HFK.js";
13
- import "./chunk-7TMAQRJS.js";
14
- import "./chunk-SUF5ISJM.js";
11
+ } from "./chunk-GYXIREXZ.js";
12
+ import "./chunk-SNWJWX5K.js";
13
+ import "./chunk-SJG22DAK.js";
14
+ import "./chunk-FGHILN3D.js";
15
15
  export {
16
16
  computeDurationMs,
17
17
  experimentKey,
@@ -29,11 +29,11 @@ import {
29
29
  runRecords,
30
30
  selectMonthFiles,
31
31
  shouldDefer
32
- } from "./chunk-6F4VAVKF.js";
33
- import "./chunk-UNANHUG3.js";
34
- import "./chunk-7D4T7HFK.js";
35
- import "./chunk-7TMAQRJS.js";
36
- import "./chunk-SUF5ISJM.js";
32
+ } from "./chunk-4BUPV5VU.js";
33
+ import "./chunk-WOH6WML7.js";
34
+ import "./chunk-SNWJWX5K.js";
35
+ import "./chunk-SJG22DAK.js";
36
+ import "./chunk-FGHILN3D.js";
37
37
  export {
38
38
  AWL_FEEDBACK_AREAS,
39
39
  AWL_FEEDBACK_SEVERITIES,
@@ -1,33 +1,33 @@
1
1
  import {
2
- WORKTREES_DIR,
3
2
  branchOf,
4
3
  collectLanes,
5
4
  laneBranchMap,
6
5
  unmergedCommitCount,
7
6
  worktreeUntracked
8
- } from "./chunk-2XQZQP7Z.js";
7
+ } from "./chunk-LBZNBCAY.js";
9
8
  import {
10
9
  removeGitWorktree,
11
10
  worktreeDirtyTracked
12
- } from "./chunk-XBUKFMNN.js";
11
+ } from "./chunk-2FQ5HCDI.js";
13
12
  import "./chunk-D5OINC3G.js";
14
- import "./chunk-CSBKWYFK.js";
15
- import "./chunk-NOU677FX.js";
16
- import "./chunk-OWILAE4M.js";
17
- import "./chunk-HFRQCP26.js";
18
- import "./chunk-B76434VM.js";
19
- import "./chunk-OJ7YO3MY.js";
20
- import "./chunk-FKBBGXGF.js";
21
- import "./chunk-4ZLARTXS.js";
22
- import "./chunk-6F4VAVKF.js";
23
- import "./chunk-UNANHUG3.js";
13
+ import "./chunk-236TTTK3.js";
14
+ import "./chunk-SKJZSRVR.js";
15
+ import "./chunk-GYXIREXZ.js";
16
+ import "./chunk-O7PUNJVM.js";
17
+ import "./chunk-K2JV27JR.js";
18
+ import "./chunk-L4VWHK4D.js";
19
+ import "./chunk-4BUPV5VU.js";
20
+ import "./chunk-WOH6WML7.js";
21
+ import "./chunk-3N3QH4PK.js";
22
+ import "./chunk-DNDODLP2.js";
24
23
  import {
25
24
  resolveProjectRoot
26
- } from "./chunk-7D4T7HFK.js";
25
+ } from "./chunk-SNWJWX5K.js";
27
26
  import {
28
27
  packageEngineDir
29
- } from "./chunk-7TMAQRJS.js";
28
+ } from "./chunk-SJG22DAK.js";
30
29
  import {
30
+ WORKTREES_DIR,
31
31
  caps,
32
32
  engineDir,
33
33
  globalRoot,
@@ -42,7 +42,7 @@ import {
42
42
  sectionBox,
43
43
  signal,
44
44
  templatesDir
45
- } from "./chunk-SUF5ISJM.js";
45
+ } from "./chunk-FGHILN3D.js";
46
46
 
47
47
  // src/commands/remove.ts
48
48
  import fs from "fs";
@@ -1,30 +1,30 @@
1
- import {
2
- runVerifyChecks
3
- } from "./chunk-CSBKWYFK.js";
4
- import "./chunk-NOU677FX.js";
5
- import "./chunk-OWILAE4M.js";
6
- import "./chunk-HFRQCP26.js";
7
- import "./chunk-B76434VM.js";
8
1
  import {
9
2
  filterRules,
10
3
  loadRules
11
- } from "./chunk-OJ7YO3MY.js";
12
- import "./chunk-FKBBGXGF.js";
13
- import "./chunk-4ZLARTXS.js";
14
- import "./chunk-6F4VAVKF.js";
4
+ } from "./chunk-236TTTK3.js";
5
+ import "./chunk-SKJZSRVR.js";
6
+ import "./chunk-GYXIREXZ.js";
7
+ import {
8
+ runVerifyChecks
9
+ } from "./chunk-O7PUNJVM.js";
10
+ import "./chunk-K2JV27JR.js";
11
+ import "./chunk-L4VWHK4D.js";
12
+ import "./chunk-4BUPV5VU.js";
15
13
  import {
16
14
  loadState
17
- } from "./chunk-UNANHUG3.js";
15
+ } from "./chunk-WOH6WML7.js";
16
+ import "./chunk-3N3QH4PK.js";
17
+ import "./chunk-DNDODLP2.js";
18
18
  import {
19
19
  requireConfig,
20
20
  run
21
- } from "./chunk-7D4T7HFK.js";
22
- import "./chunk-7TMAQRJS.js";
21
+ } from "./chunk-SNWJWX5K.js";
22
+ import "./chunk-SJG22DAK.js";
23
23
  import {
24
24
  caps,
25
25
  makeColors,
26
26
  sectionBox
27
- } from "./chunk-SUF5ISJM.js";
27
+ } from "./chunk-FGHILN3D.js";
28
28
 
29
29
  // src/commands/review.ts
30
30
  import crypto from "crypto";
@@ -10,14 +10,14 @@ import {
10
10
  runRulesPromote,
11
11
  suggestLinter,
12
12
  validatePromoteOpts
13
- } from "./chunk-OJ7YO3MY.js";
14
- import "./chunk-FKBBGXGF.js";
15
- import "./chunk-4ZLARTXS.js";
16
- import "./chunk-6F4VAVKF.js";
17
- import "./chunk-UNANHUG3.js";
18
- import "./chunk-7D4T7HFK.js";
19
- import "./chunk-7TMAQRJS.js";
20
- import "./chunk-SUF5ISJM.js";
13
+ } from "./chunk-236TTTK3.js";
14
+ import "./chunk-SKJZSRVR.js";
15
+ import "./chunk-GYXIREXZ.js";
16
+ import "./chunk-4BUPV5VU.js";
17
+ import "./chunk-WOH6WML7.js";
18
+ import "./chunk-SNWJWX5K.js";
19
+ import "./chunk-SJG22DAK.js";
20
+ import "./chunk-FGHILN3D.js";
21
21
  export {
22
22
  RULE_LOAD_LIMIT,
23
23
  activeRulesDir,
@@ -14,10 +14,10 @@ import {
14
14
  stateLockFile,
15
15
  statePath,
16
16
  writeState
17
- } from "./chunk-UNANHUG3.js";
18
- import "./chunk-7D4T7HFK.js";
19
- import "./chunk-7TMAQRJS.js";
20
- import "./chunk-SUF5ISJM.js";
17
+ } from "./chunk-WOH6WML7.js";
18
+ import "./chunk-SNWJWX5K.js";
19
+ import "./chunk-SJG22DAK.js";
20
+ import "./chunk-FGHILN3D.js";
21
21
  export {
22
22
  acquireStateLock,
23
23
  applyVerificationAttempts,
@@ -0,0 +1,29 @@
1
+ import {
2
+ buildStatus,
3
+ checkMissingAcCommits,
4
+ classifyAncestorExit,
5
+ collectPipelineLaneGroups,
6
+ markerBaseName,
7
+ pipelineLanes,
8
+ readDirNames,
9
+ renderPipelineGroups,
10
+ renderStatus,
11
+ runStatus
12
+ } from "./chunk-3LPCP55B.js";
13
+ import "./chunk-4BUPV5VU.js";
14
+ import "./chunk-WOH6WML7.js";
15
+ import "./chunk-SNWJWX5K.js";
16
+ import "./chunk-SJG22DAK.js";
17
+ import "./chunk-FGHILN3D.js";
18
+ export {
19
+ buildStatus,
20
+ checkMissingAcCommits,
21
+ classifyAncestorExit,
22
+ collectPipelineLaneGroups,
23
+ markerBaseName,
24
+ pipelineLanes,
25
+ readDirNames,
26
+ renderPipelineGroups,
27
+ renderStatus,
28
+ runStatus
29
+ };
@@ -2,7 +2,7 @@ import {
2
2
  listRegisteredProjects,
3
3
  packageEngineDir,
4
4
  syncExistingInstall
5
- } from "./chunk-7TMAQRJS.js";
5
+ } from "./chunk-SJG22DAK.js";
6
6
  import {
7
7
  caps,
8
8
  engineDir,
@@ -10,7 +10,7 @@ import {
10
10
  makeSymbols,
11
11
  sectionBox,
12
12
  signal
13
- } from "./chunk-SUF5ISJM.js";
13
+ } from "./chunk-FGHILN3D.js";
14
14
 
15
15
  // src/commands/update.ts
16
16
  import fs from "fs";
@@ -11,16 +11,16 @@ import {
11
11
  substituteRelatedCmd,
12
12
  verifyBaselinePath,
13
13
  writeVerifyBaseline
14
- } from "./chunk-CSBKWYFK.js";
15
- import "./chunk-NOU677FX.js";
16
- import "./chunk-OWILAE4M.js";
17
- import "./chunk-HFRQCP26.js";
18
- import "./chunk-B76434VM.js";
19
- import "./chunk-6F4VAVKF.js";
20
- import "./chunk-UNANHUG3.js";
21
- import "./chunk-7D4T7HFK.js";
22
- import "./chunk-7TMAQRJS.js";
23
- import "./chunk-SUF5ISJM.js";
14
+ } from "./chunk-O7PUNJVM.js";
15
+ import "./chunk-K2JV27JR.js";
16
+ import "./chunk-L4VWHK4D.js";
17
+ import "./chunk-4BUPV5VU.js";
18
+ import "./chunk-WOH6WML7.js";
19
+ import "./chunk-3N3QH4PK.js";
20
+ import "./chunk-DNDODLP2.js";
21
+ import "./chunk-SNWJWX5K.js";
22
+ import "./chunk-SJG22DAK.js";
23
+ import "./chunk-FGHILN3D.js";
24
24
  export {
25
25
  buildVerifyBaseline,
26
26
  compareSinceBaseline,
@@ -0,0 +1,14 @@
1
+ import {
2
+ gatherVersionInputs,
3
+ renderVersionCheck,
4
+ runVersionCheck
5
+ } from "./chunk-3N3QH4PK.js";
6
+ import "./chunk-DNDODLP2.js";
7
+ import "./chunk-SNWJWX5K.js";
8
+ import "./chunk-SJG22DAK.js";
9
+ import "./chunk-FGHILN3D.js";
10
+ export {
11
+ gatherVersionInputs,
12
+ renderVersionCheck,
13
+ runVersionCheck
14
+ };
@@ -20,21 +20,21 @@ import {
20
20
  summarizeWorkitems,
21
21
  withCostAtStart,
22
22
  worktreeDirtyTracked
23
- } from "./chunk-XBUKFMNN.js";
23
+ } from "./chunk-2FQ5HCDI.js";
24
24
  import "./chunk-D5OINC3G.js";
25
- import "./chunk-CSBKWYFK.js";
26
- import "./chunk-NOU677FX.js";
27
- import "./chunk-OWILAE4M.js";
28
- import "./chunk-HFRQCP26.js";
29
- import "./chunk-B76434VM.js";
30
- import "./chunk-OJ7YO3MY.js";
31
- import "./chunk-FKBBGXGF.js";
32
- import "./chunk-4ZLARTXS.js";
33
- import "./chunk-6F4VAVKF.js";
34
- import "./chunk-UNANHUG3.js";
35
- import "./chunk-7D4T7HFK.js";
36
- import "./chunk-7TMAQRJS.js";
37
- import "./chunk-SUF5ISJM.js";
25
+ import "./chunk-236TTTK3.js";
26
+ import "./chunk-SKJZSRVR.js";
27
+ import "./chunk-GYXIREXZ.js";
28
+ import "./chunk-O7PUNJVM.js";
29
+ import "./chunk-K2JV27JR.js";
30
+ import "./chunk-L4VWHK4D.js";
31
+ import "./chunk-4BUPV5VU.js";
32
+ import "./chunk-WOH6WML7.js";
33
+ import "./chunk-3N3QH4PK.js";
34
+ import "./chunk-DNDODLP2.js";
35
+ import "./chunk-SNWJWX5K.js";
36
+ import "./chunk-SJG22DAK.js";
37
+ import "./chunk-FGHILN3D.js";
38
38
  export {
39
39
  DEFAULT_GIT_WORKTREE_TIMEOUT_MS,
40
40
  abandonWorkitem,
@@ -57,6 +57,18 @@ awl evolve
57
57
  3. **중단한다.** 더러운 변경이 무엇인지 모르겠거나 위험해 보이면, 사람에게 확인부터 받는다.
58
58
  - 이 확인은 [조사]보다도, 게이트 1보다도 먼저 한다 — 시작한 뒤에 알면 이미 늦다.
59
59
 
60
+ ### 피드백 모드 (`--fb`/`--feedback` 또는 `awl config`의 `feedback.enabled`)
61
+
62
+ 목표 서술 안에 `--fb`/`--feedback` 토큰이 있으면(위치 무관) 떼어내고, 나머지를 목표로 쓴다. 이번
63
+ 세션 한정 피드백 모드가 켜진다. `awl config`의 `feedback.enabled`가 `true`면 플래그 없이도 켜진다
64
+ (전역 기본). 첫 응답에 상태를 명시한다 — 플래그로 켰으면 "피드백 모드 켜짐(--fb)", config로
65
+ 켜졌으면 "피드백 모드 켜짐(전역 config 설정)". 둘 다 꺼져 있으면 언급하지 않는다.
66
+
67
+ 켜져 있으면, 워크아이템 진행 중(작업 대상 코드가 아니라) awl/awl-loop 스킬·CLI 자체의 설계 갭·
68
+ 버그·마찰을 발견할 때마다 누적해뒀다가 게이트2 완료 직후(아래 evolve 직전)에 한 번에 정리해
69
+ 기록한다. 경로·이름·문서 형식·`awl record awl-feedback`과의 구분은 `awl-pipeline` SKILL.md의
70
+ "피드백 모드" 절을 그대로 따른다(실물 중복 방지 — 여기서는 참조만).
71
+
60
72
  ### 목표 도착
61
73
 
62
74
  **완료 조건 없는 목표는 구현 태스크가 아니다. 번역 태스크다.**
@@ -251,6 +263,10 @@ awl verify --json
251
263
 
252
264
  게이트 2를 통과한 뒤 워크아이템을 닫을 때 1회만 참조 — 교훈 추출, awl 도구 자체 피드백(awl-feedback) 절차는 [reference.md](reference.md#evolve-배움의-흐름을-닫는다-워크아이템-단위) 참고.
253
265
 
266
+ **피드백 모드가 켜져 있고 누적한 관찰이 있으면**, `awl evolve`를 부르기 전에 위 "피드백 모드" 절대로
267
+ 한 번에 정리해 기록한다(관찰이 없으면 아무것도 안 쓴다). `awl-feedback`(구조화, 이 프로젝트 로컬)과는
268
+ 별개로 남긴다 — 겹치지 않는다.
269
+
254
270
  ---
255
271
 
256
272
  ## 리뷰어
@@ -73,6 +73,10 @@ SKILL.md 본문에서 조건부·저빈도로 분류된 섹션의 상세. 매
73
73
 
74
74
  리뷰어는 코드를 고치지 않는다. 지적만 한다. 지적은 새 완료 조건이 되어 루프에 편입된다.
75
75
 
76
+ 리뷰어 서브에이전트의 완료를 사람에게 보고할 때(`@<이름> ... finished` 류 문구를 옮길 때)는 맨 앞에
77
+ `date '+[%y%m%d / %H:%M:%S]'`로 얻은 24시간제 타임스탬프(예: `[260721 / 12:42:03]`)를 붙인다. 실제
78
+ 시각은 반드시 `date` 명령으로 조회한다 — 추정해서 쓰지 않는다.
79
+
76
80
  ---
77
81
 
78
82
  ## evolve — 배움의 흐름을 닫는다 (워크아이템 단위)