@aperant/framework 0.13.0-next.0 → 0.15.0

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 (241) hide show
  1. package/CHANGELOG.md +89 -3
  2. package/README.md +11 -1
  3. package/agents/apt-pr-review-i18n.md +190 -0
  4. package/agents/apt-pr-review-xplatform.md +189 -0
  5. package/dist/cli/commands/audit-branch-current.d.mts +27 -5
  6. package/dist/cli/commands/audit-branch-current.d.mts.map +1 -1
  7. package/dist/cli/commands/audit-branch-current.mjs +3 -3
  8. package/dist/cli/commands/audit-branch-current.mjs.map +1 -1
  9. package/dist/cli/commands/event.d.mts.map +1 -1
  10. package/dist/cli/commands/event.mjs +6 -4
  11. package/dist/cli/commands/event.mjs.map +1 -1
  12. package/dist/cli/commands/fan-out.d.mts.map +1 -1
  13. package/dist/cli/commands/fan-out.mjs +3 -1
  14. package/dist/cli/commands/fan-out.mjs.map +1 -1
  15. package/dist/cli/commands/features-audit.d.mts.map +1 -1
  16. package/dist/cli/commands/features-audit.mjs +6 -1
  17. package/dist/cli/commands/features-audit.mjs.map +1 -1
  18. package/dist/cli/commands/followups.d.mts +5 -0
  19. package/dist/cli/commands/followups.d.mts.map +1 -0
  20. package/dist/cli/commands/followups.mjs +266 -0
  21. package/dist/cli/commands/followups.mjs.map +1 -0
  22. package/dist/cli/commands/health-check.d.mts.map +1 -1
  23. package/dist/cli/commands/health-check.mjs +3 -1
  24. package/dist/cli/commands/health-check.mjs.map +1 -1
  25. package/dist/cli/commands/merge-detect.d.mts +29 -0
  26. package/dist/cli/commands/merge-detect.d.mts.map +1 -0
  27. package/dist/cli/commands/merge-detect.mjs +196 -0
  28. package/dist/cli/commands/merge-detect.mjs.map +1 -0
  29. package/dist/cli/commands/merge-integrate.d.mts +28 -0
  30. package/dist/cli/commands/merge-integrate.d.mts.map +1 -0
  31. package/dist/cli/commands/merge-integrate.mjs +383 -0
  32. package/dist/cli/commands/merge-integrate.mjs.map +1 -0
  33. package/dist/cli/commands/pr-review/detect-specialists.d.mts +58 -0
  34. package/dist/cli/commands/pr-review/detect-specialists.d.mts.map +1 -0
  35. package/dist/cli/commands/pr-review/detect-specialists.mjs +980 -0
  36. package/dist/cli/commands/pr-review/detect-specialists.mjs.map +1 -0
  37. package/dist/cli/commands/pr-review.d.mts.map +1 -1
  38. package/dist/cli/commands/pr-review.mjs +11 -2
  39. package/dist/cli/commands/pr-review.mjs.map +1 -1
  40. package/dist/cli/commands/precompact-hook.d.mts.map +1 -1
  41. package/dist/cli/commands/precompact-hook.mjs +10 -6
  42. package/dist/cli/commands/precompact-hook.mjs.map +1 -1
  43. package/dist/cli/commands/roadmap.d.mts.map +1 -1
  44. package/dist/cli/commands/roadmap.mjs +24 -11
  45. package/dist/cli/commands/roadmap.mjs.map +1 -1
  46. package/dist/cli/commands/seed.d.mts.map +1 -1
  47. package/dist/cli/commands/seed.mjs +3 -1
  48. package/dist/cli/commands/seed.mjs.map +1 -1
  49. package/dist/cli/commands/state.d.mts.map +1 -1
  50. package/dist/cli/commands/state.mjs +9 -3
  51. package/dist/cli/commands/state.mjs.map +1 -1
  52. package/dist/cli/commands/statusline.d.mts.map +1 -1
  53. package/dist/cli/commands/statusline.mjs +5 -1
  54. package/dist/cli/commands/statusline.mjs.map +1 -1
  55. package/dist/cli/commands/task.d.mts.map +1 -1
  56. package/dist/cli/commands/task.mjs +126 -23
  57. package/dist/cli/commands/task.mjs.map +1 -1
  58. package/dist/cli/commands/worktree.d.mts +1 -1
  59. package/dist/cli/commands/worktree.d.mts.map +1 -1
  60. package/dist/cli/commands/worktree.mjs +282 -83
  61. package/dist/cli/commands/worktree.mjs.map +1 -1
  62. package/dist/cli/config/post-merge-sweep.d.mts.map +1 -1
  63. package/dist/cli/config/post-merge-sweep.mjs +3 -2
  64. package/dist/cli/config/post-merge-sweep.mjs.map +1 -1
  65. package/dist/cli/config/share-policy.d.mts +3 -1
  66. package/dist/cli/config/share-policy.d.mts.map +1 -1
  67. package/dist/cli/config/share-policy.mjs +16 -3
  68. package/dist/cli/config/share-policy.mjs.map +1 -1
  69. package/dist/cli/config/upgrade-gitignore.d.mts.map +1 -1
  70. package/dist/cli/config/upgrade-gitignore.mjs +27 -5
  71. package/dist/cli/config/upgrade-gitignore.mjs.map +1 -1
  72. package/dist/cli/consistency/parse-qa.mjs +12 -1
  73. package/dist/cli/consistency/parse-qa.mjs.map +1 -1
  74. package/dist/cli/consistency/parse-review.d.mts +23 -0
  75. package/dist/cli/consistency/parse-review.d.mts.map +1 -1
  76. package/dist/cli/consistency/parse-review.mjs +36 -0
  77. package/dist/cli/consistency/parse-review.mjs.map +1 -1
  78. package/dist/cli/consistency/parse-spec.d.mts +16 -0
  79. package/dist/cli/consistency/parse-spec.d.mts.map +1 -1
  80. package/dist/cli/consistency/parse-spec.mjs +44 -0
  81. package/dist/cli/consistency/parse-spec.mjs.map +1 -1
  82. package/dist/cli/coordination/agent-identity.d.mts +5 -2
  83. package/dist/cli/coordination/agent-identity.d.mts.map +1 -1
  84. package/dist/cli/coordination/agent-identity.mjs +6 -4
  85. package/dist/cli/coordination/agent-identity.mjs.map +1 -1
  86. package/dist/cli/coordination/store.d.mts +1 -1
  87. package/dist/cli/dispatch.d.mts.map +1 -1
  88. package/dist/cli/dispatch.mjs +4 -0
  89. package/dist/cli/dispatch.mjs.map +1 -1
  90. package/dist/cli/followups/derive.d.mts +63 -0
  91. package/dist/cli/followups/derive.d.mts.map +1 -0
  92. package/dist/cli/followups/derive.mjs +115 -0
  93. package/dist/cli/followups/derive.mjs.map +1 -0
  94. package/dist/cli/followups/schema.d.mts +165 -0
  95. package/dist/cli/followups/schema.d.mts.map +1 -0
  96. package/dist/cli/followups/schema.mjs +251 -0
  97. package/dist/cli/followups/schema.mjs.map +1 -0
  98. package/dist/cli/gate/context.d.mts +1 -1
  99. package/dist/cli/gate/gates/followups-adjudicated.d.mts +69 -0
  100. package/dist/cli/gate/gates/followups-adjudicated.d.mts.map +1 -0
  101. package/dist/cli/gate/gates/followups-adjudicated.mjs +141 -0
  102. package/dist/cli/gate/gates/followups-adjudicated.mjs.map +1 -0
  103. package/dist/cli/gate/gates/index.mjs +1 -0
  104. package/dist/cli/gate/gates/index.mjs.map +1 -1
  105. package/dist/cli/git/materialize-env.d.mts +39 -0
  106. package/dist/cli/git/materialize-env.d.mts.map +1 -0
  107. package/dist/cli/git/materialize-env.mjs +217 -0
  108. package/dist/cli/git/materialize-env.mjs.map +1 -0
  109. package/dist/cli/help.d.mts.map +1 -1
  110. package/dist/cli/help.mjs +9 -1
  111. package/dist/cli/help.mjs.map +1 -1
  112. package/dist/cli/install/legacy-paths.d.mts.map +1 -1
  113. package/dist/cli/install/legacy-paths.mjs +4 -0
  114. package/dist/cli/install/legacy-paths.mjs.map +1 -1
  115. package/dist/cli/roadmap/lifecycle.d.mts.map +1 -1
  116. package/dist/cli/roadmap/lifecycle.mjs +4 -1
  117. package/dist/cli/roadmap/lifecycle.mjs.map +1 -1
  118. package/dist/cli/task/ids.d.mts +9 -0
  119. package/dist/cli/task/ids.d.mts.map +1 -1
  120. package/dist/cli/task/ids.mjs +9 -0
  121. package/dist/cli/task/ids.mjs.map +1 -1
  122. package/dist/cli/task/index-md.d.mts +5 -0
  123. package/dist/cli/task/index-md.d.mts.map +1 -1
  124. package/dist/cli/task/index-md.mjs +12 -4
  125. package/dist/cli/task/index-md.mjs.map +1 -1
  126. package/dist/cli/util/io.d.mts +6 -0
  127. package/dist/cli/util/io.d.mts.map +1 -1
  128. package/dist/cli/util/io.mjs +16 -1
  129. package/dist/cli/util/io.mjs.map +1 -1
  130. package/dist/cli/util/project.d.mts +7 -2
  131. package/dist/cli/util/project.d.mts.map +1 -1
  132. package/dist/cli/util/project.mjs +11 -14
  133. package/dist/cli/util/project.mjs.map +1 -1
  134. package/dist/cli/util/state-paths.d.mts +19 -0
  135. package/dist/cli/util/state-paths.d.mts.map +1 -0
  136. package/dist/cli/util/state-paths.mjs +45 -0
  137. package/dist/cli/util/state-paths.mjs.map +1 -0
  138. package/dist/plugin/.claude-plugin/plugin.json +4 -1
  139. package/dist/plugin/agents/apt-pr-review-i18n.md +190 -0
  140. package/dist/plugin/agents/apt-pr-review-xplatform.md +189 -0
  141. package/dist/plugin/skills/apt/SKILL.md +13 -6
  142. package/dist/plugin/skills/apt-close-task/SKILL.md +48 -0
  143. package/dist/plugin/skills/apt-debug/SKILL.md +19 -9
  144. package/dist/plugin/skills/apt-execute/SKILL.md +3 -1
  145. package/dist/plugin/skills/apt-fan-out/SKILL.md +65 -1
  146. package/dist/plugin/skills/apt-merge-conflict-resolution/SKILL.md +227 -0
  147. package/dist/plugin/skills/apt-pr-review/SCHEMA.md +4 -2
  148. package/dist/plugin/skills/apt-pr-review/SKILL.md +117 -29
  149. package/dist/plugin/skills/apt-quick/SKILL.md +24 -1
  150. package/dist/plugin/skills/apt-review/SKILL.md +6 -0
  151. package/dist/plugin/skills/apt-run/SKILL.md +1 -1
  152. package/dist/plugin/skills/apt-setup/SKILL.md +21 -3
  153. package/dist/plugin/skills/apt-ship/SKILL.md +32 -11
  154. package/dist/plugin/skills/apt-terminal/SKILL.md +8 -0
  155. package/dist/plugin/skills/apt-triage/SKILL.md +4 -0
  156. package/dist/plugin/skills/apt-verify/SKILL.md +24 -0
  157. package/dist/plugin/skills/apt-watch-ci/SKILL.md +3 -1
  158. package/dist/types/config.d.ts +33 -0
  159. package/dist/types/config.d.ts.map +1 -1
  160. package/package.json +138 -138
  161. package/prompts/conductor-framework-context.md +1 -1
  162. package/prompts/github/pr_i18n_agent.md +279 -0
  163. package/prompts/github/pr_xplatform_agent.md +283 -0
  164. package/prompts/inbox-clarification.md +18 -11
  165. package/skills/apt/SKILL.md +9 -3
  166. package/skills/apt-close-task/SKILL.md +48 -0
  167. package/skills/apt-debug/SKILL.md +19 -9
  168. package/skills/apt-execute/SKILL.md +3 -1
  169. package/skills/apt-fan-out/SKILL.md +65 -1
  170. package/skills/apt-merge-conflict-resolution/SKILL.md +227 -0
  171. package/skills/apt-pr-review/SCHEMA.md +4 -2
  172. package/skills/apt-pr-review/SKILL.md +117 -29
  173. package/skills/apt-quick/SKILL.md +24 -1
  174. package/skills/apt-review/SKILL.md +6 -0
  175. package/skills/apt-run/SKILL.md +1 -1
  176. package/skills/apt-setup/SKILL.md +21 -3
  177. package/skills/apt-ship/SKILL.md +32 -11
  178. package/skills/apt-terminal/SKILL.md +8 -0
  179. package/skills/apt-triage/SKILL.md +4 -0
  180. package/skills/apt-verify/SKILL.md +24 -0
  181. package/skills/apt-watch-ci/SKILL.md +3 -1
  182. package/src/cli/commands/audit-branch-current.mjs +3 -3
  183. package/src/cli/commands/event.mjs +6 -4
  184. package/src/cli/commands/fan-out.mjs +3 -1
  185. package/src/cli/commands/features-audit.mjs +6 -1
  186. package/src/cli/commands/followups.mjs +303 -0
  187. package/src/cli/commands/health-check.mjs +3 -1
  188. package/src/cli/commands/merge-detect.mjs +203 -0
  189. package/src/cli/commands/merge-integrate.mjs +392 -0
  190. package/src/cli/commands/pr-review/__fixtures__/android-strings/app/src/main/res/values-fr/strings.xml +3 -0
  191. package/src/cli/commands/pr-review/__fixtures__/babel-js/package.json +4 -0
  192. package/src/cli/commands/pr-review/__fixtures__/c-ifdef/src/main.c +4 -0
  193. package/src/cli/commands/pr-review/__fixtures__/ci-matrix/.github/workflows/ci.yml +10 -0
  194. package/src/cli/commands/pr-review/__fixtures__/cmake-win/CMakeLists.txt +5 -0
  195. package/src/cli/commands/pr-review/__fixtures__/diffs/add-arb.patch +9 -0
  196. package/src/cli/commands/pr-review/__fixtures__/diffs/ci-single-os-dep.patch +13 -0
  197. package/src/cli/commands/pr-review/__fixtures__/diffs/ci-single-os-list-item-dep.patch +17 -0
  198. package/src/cli/commands/pr-review/__fixtures__/diffs/lone-weak-t.patch +8 -0
  199. package/src/cli/commands/pr-review/__fixtures__/diffs/monorepo-b.patch +7 -0
  200. package/src/cli/commands/pr-review/__fixtures__/diffs/two-weak-xpl.patch +12 -0
  201. package/src/cli/commands/pr-review/__fixtures__/dropped-underscore/src/app.js +2 -0
  202. package/src/cli/commands/pr-review/__fixtures__/electron-app/package.json +4 -0
  203. package/src/cli/commands/pr-review/__fixtures__/i18n-locale-file/src/locales/fr.json +1 -0
  204. package/src/cli/commands/pr-review/__fixtures__/monorepo/packages/a/locales/fr.json +1 -0
  205. package/src/cli/commands/pr-review/__fixtures__/monorepo/packages/b/src/index.ts +1 -0
  206. package/src/cli/commands/pr-review/__fixtures__/py-babel/pyproject.toml +3 -0
  207. package/src/cli/commands/pr-review/__fixtures__/qt-i18n-dir/i18n/app_fr.ts +11 -0
  208. package/src/cli/commands/pr-review/__fixtures__/rust-cli/Cargo.toml +7 -0
  209. package/src/cli/commands/pr-review/__fixtures__/rust-cli/src/main.rs +1 -0
  210. package/src/cli/commands/pr-review/__fixtures__/ts-dir/ts/foo.ts +3 -0
  211. package/src/cli/commands/pr-review/detect-specialists.mjs +1023 -0
  212. package/src/cli/commands/pr-review.mjs +12 -2
  213. package/src/cli/commands/precompact-hook.mjs +10 -6
  214. package/src/cli/commands/roadmap.mjs +24 -11
  215. package/src/cli/commands/seed.mjs +3 -1
  216. package/src/cli/commands/state.mjs +9 -3
  217. package/src/cli/commands/statusline.mjs +5 -1
  218. package/src/cli/commands/task.mjs +135 -23
  219. package/src/cli/commands/worktree.mjs +298 -81
  220. package/src/cli/config/post-merge-sweep.mjs +3 -2
  221. package/src/cli/config/share-policy.mjs +16 -3
  222. package/src/cli/config/upgrade-gitignore.mjs +27 -5
  223. package/src/cli/consistency/parse-qa.mjs +11 -1
  224. package/src/cli/consistency/parse-review.mjs +36 -0
  225. package/src/cli/consistency/parse-spec.mjs +43 -0
  226. package/src/cli/coordination/agent-identity.mjs +6 -4
  227. package/src/cli/dispatch.mjs +4 -0
  228. package/src/cli/followups/derive.mjs +123 -0
  229. package/src/cli/followups/schema.mjs +264 -0
  230. package/src/cli/gate/gates/followups-adjudicated.mjs +158 -0
  231. package/src/cli/gate/gates/index.mjs +1 -0
  232. package/src/cli/git/materialize-env.mjs +212 -0
  233. package/src/cli/help.mjs +9 -1
  234. package/src/cli/install/legacy-paths.mjs +4 -0
  235. package/src/cli/roadmap/lifecycle.mjs +4 -1
  236. package/src/cli/task/ids.mjs +9 -0
  237. package/src/cli/task/index-md.mjs +12 -4
  238. package/src/cli/util/io.mjs +15 -1
  239. package/src/cli/util/project.mjs +11 -14
  240. package/src/cli/util/state-paths.mjs +45 -0
  241. package/prompts/followup_planner.md +0 -399
@@ -9,12 +9,14 @@
9
9
  import { execFileSync, execSync, spawnSync } from 'node:child_process';
10
10
  import { existsSync, mkdirSync, readdirSync, readFileSync } from 'node:fs';
11
11
  import { join, resolve } from 'node:path';
12
- import { getTaskIsolationConfig } from '../config/load.mjs';
12
+ import { getTaskIsolationConfig, loadProjectConfig } from '../config/load.mjs';
13
+ import { materializeProjectEnvCli } from '../git/materialize-env.mjs';
13
14
  import { detectWorktree } from '../git/worktree-detect.mjs';
14
15
  import { parseFlags } from '../util/args.mjs';
15
16
  import { resolveAptToolsBin } from '../util/bin-path.mjs';
16
17
  import { getSharedLockDir } from '../util/project.mjs';
17
18
  import { err, ok, UsageError } from '../util/result.mjs';
19
+ import { resolveMainRepoRoot } from '../util/state-paths.mjs';
18
20
  /**
19
21
  * Sentinel error class for helper-level usage failures inside cmdWorktree.
20
22
  * The dispatcher catches it and converts it into the standard err() envelope.
@@ -25,6 +27,101 @@ class WorktreeUsageError extends UsageError {
25
27
  this.name = 'WorktreeUsageError';
26
28
  }
27
29
  }
30
+ /**
31
+ * Resolve the effective autonomy for a `worktree create` invocation (ID-09b).
32
+ * Layered fallback: a `--autonomy <n>` flag (forwarded by the task.mjs auto-hook)
33
+ * wins; else the project config's `autonomy.default`; else 1 (the conservative
34
+ * confirm-by-default level). A non-numeric / out-of-range flag is ignored.
35
+ * @param {Map<string, string>} flags
36
+ * @param {string} targetDir
37
+ * @returns {number}
38
+ */
39
+ function resolveCreateAutonomy(flags, targetDir) {
40
+ const raw = flags.get('autonomy');
41
+ if (raw !== undefined && raw !== null && raw !== '') {
42
+ const n = Number.parseInt(String(raw), 10);
43
+ if (Number.isFinite(n) && n >= 0 && n <= 3)
44
+ return n;
45
+ }
46
+ try {
47
+ const cfg = loadProjectConfig(targetDir);
48
+ const def = cfg?.autonomy?.default;
49
+ if (Number.isFinite(def) && def >= 0 && def <= 3)
50
+ return def;
51
+ }
52
+ catch {
53
+ /* config unreadable — fall through to the conservative default */
54
+ }
55
+ return 1;
56
+ }
57
+ /**
58
+ * Resolve the current branch name (or 'HEAD' on detached/failure).
59
+ * @param {string} cwd
60
+ * @returns {string}
61
+ */
62
+ function currentBranchName(cwd) {
63
+ try {
64
+ return execSync('git rev-parse --abbrev-ref HEAD', { cwd, encoding: 'utf-8' }).trim() || 'HEAD';
65
+ }
66
+ catch {
67
+ return 'HEAD';
68
+ }
69
+ }
70
+ /**
71
+ * Main-detection chain — local refs only, no network (ID-02). Returns the
72
+ * detected default branch (e.g. `origin/main`, `main`, `master`) or null when
73
+ * the repo has no main/master ref anywhere. Extracted so the `current`-branch
74
+ * surfacing (ID-09b) can compare against the same detected default the
75
+ * `from_branch: main` path uses.
76
+ * @param {string} cwd
77
+ * @returns {string|null}
78
+ */
79
+ function detectDefaultBranch(cwd) {
80
+ const candidates = ['origin/HEAD', 'origin/main', 'origin/master', 'main', 'master'];
81
+ for (const ref of candidates) {
82
+ try {
83
+ const out = execSync(`git rev-parse --verify ${ref}`, {
84
+ cwd,
85
+ encoding: 'utf-8',
86
+ stdio: ['ignore', 'pipe', 'pipe'],
87
+ }).trim();
88
+ if (out) {
89
+ // origin/HEAD is a symref — resolve it to e.g. `origin/main`
90
+ // so the base branch we hand to `git worktree add` is usable.
91
+ if (ref === 'origin/HEAD') {
92
+ try {
93
+ const sym = execSync('git symbolic-ref refs/remotes/origin/HEAD', {
94
+ cwd,
95
+ encoding: 'utf-8',
96
+ stdio: ['ignore', 'pipe', 'pipe'],
97
+ }).trim();
98
+ return sym.replace(/^refs\/remotes\//, '') || ref;
99
+ }
100
+ catch {
101
+ return ref;
102
+ }
103
+ }
104
+ return ref;
105
+ }
106
+ }
107
+ catch {
108
+ // Ref doesn't exist — try the next one.
109
+ }
110
+ }
111
+ return null;
112
+ }
113
+ /**
114
+ * Normalize a detected default branch to its bare branch name for comparison
115
+ * with the current branch (e.g. `origin/main` → `main`). The current branch is
116
+ * always a local bare name, so strip a single leading remote segment.
117
+ * @param {string|null} ref
118
+ * @returns {string|null}
119
+ */
120
+ function bareBranchName(ref) {
121
+ if (!ref)
122
+ return null;
123
+ return ref.replace(/^origin\//, '');
124
+ }
28
125
  export function cmdDetectWorktree(projectDir) {
29
126
  if (!projectDir)
30
127
  return err('Usage: apt-tools detect-worktree <project-dir>');
@@ -39,9 +136,9 @@ export function cmdDetectWorktree(projectDir) {
39
136
  : 'Not a worktree — safe to use worktree isolation if needed.',
40
137
  });
41
138
  }
42
- export function cmdWorktree(subcommand, projectDir, extraArgs) {
139
+ export async function cmdWorktree(subcommand, projectDir, extraArgs) {
43
140
  if (!subcommand || !projectDir) {
44
- return err('Usage: apt-tools worktree <create|remove|list> <dir> [options]');
141
+ return err('Usage: apt-tools worktree <create|remove|list|sync-env> <dir> [options]');
45
142
  }
46
143
  const targetDir = resolve(projectDir);
47
144
  // Validate identifiers to prevent path traversal and injection
@@ -50,13 +147,15 @@ export function cmdWorktree(subcommand, projectDir, extraArgs) {
50
147
  try {
51
148
  switch (subcommand) {
52
149
  case 'create':
53
- return doCreate(subcommand, targetDir, extraArgs, SAFE_ID_PATTERN, SAFE_BRANCH_PATTERN);
150
+ return await doCreate(subcommand, targetDir, extraArgs, SAFE_ID_PATTERN, SAFE_BRANCH_PATTERN);
54
151
  case 'remove':
55
152
  return doRemove(subcommand, targetDir, extraArgs, SAFE_ID_PATTERN);
56
153
  case 'list':
57
154
  return doList(targetDir);
155
+ case 'sync-env':
156
+ return await doSyncEnv(targetDir, extraArgs, SAFE_ID_PATTERN);
58
157
  default:
59
- return err('Unknown worktree subcommand: ' + subcommand + '. Use create, remove, or list.');
158
+ return err('Unknown worktree subcommand: ' + subcommand + '. Use create, remove, list, or sync-env.');
60
159
  }
61
160
  }
62
161
  catch (e) {
@@ -65,7 +164,7 @@ export function cmdWorktree(subcommand, projectDir, extraArgs) {
65
164
  throw e;
66
165
  }
67
166
  }
68
- function doCreate(_subcommand, targetDir, extraArgs, SAFE_ID_PATTERN, SAFE_BRANCH_PATTERN) {
167
+ async function doCreate(_subcommand, targetDir, extraArgs, SAFE_ID_PATTERN, SAFE_BRANCH_PATTERN) {
69
168
  const flags = parseFlags(extraArgs);
70
169
  const subtaskId = flags.get('subtask');
71
170
  const taskId = flags.get('task');
@@ -81,13 +180,20 @@ function doCreate(_subcommand, targetDir, extraArgs, SAFE_ID_PATTERN, SAFE_BRANC
81
180
  if (!SAFE_ID_PATTERN.test(taskId)) {
82
181
  throw new WorktreeUsageError('Invalid task ID: must match [a-zA-Z0-9_-]. Got: ' + taskId);
83
182
  }
183
+ // state-fork-fix ID-09a: ANCHOR AT MAIN. Task-mode worktree creation can
184
+ // now run from inside a worktree (the sub-agent / dropped-cd model) — it
185
+ // retargets to the main repo instead of hard-erroring. The worktree path,
186
+ // the mkdirSync parent, the `git worktree add` cwd, AND the scope state-read
187
+ // ALL resolve off this one anchorRoot so they can never drift.
188
+ const anchorRoot = resolveMainRepoRoot(targetDir);
84
189
  // C28 — scope propagation into worktree path. If --scope is not
85
190
  // passed, look it up from state.json so external callers keep
86
- // working without knowing the scope.
191
+ // working without knowing the scope. Reads off anchorRoot (the main
192
+ // board), since an empty worktree board would mis-resolve the scope.
87
193
  let taskScope = flags.get('scope');
88
194
  if (!taskScope) {
89
195
  try {
90
- const sp = join(targetDir, '.aperant', 'state.json');
196
+ const sp = join(anchorRoot, '.aperant', 'state.json');
91
197
  if (existsSync(sp)) {
92
198
  const st = JSON.parse(readFileSync(sp, 'utf-8'));
93
199
  taskScope = st?.active_tasks?.[taskId]?.scope || 'project';
@@ -112,59 +218,53 @@ function doCreate(_subcommand, targetDir, extraArgs, SAFE_ID_PATTERN, SAFE_BRANC
112
218
  throw new WorktreeUsageError('Invalid branch name: must match [a-zA-Z0-9_-/.]. Got: ' + taskBranch);
113
219
  }
114
220
  // Resolve base branch: --from beats config beats default chain.
221
+ // state-fork-fix ID-09b: default to the repo DEFAULT branch and make a
222
+ // surprising non-default current base EXPLICIT. The discriminator is
223
+ // "did the user ask for `current` on THIS invocation (--from) vs. did it
224
+ // fall through from a `from_branch: current` config default?".
115
225
  const fromFlag = flags.get('from');
116
226
  const fromPref = fromFlag || isolation.from_branch || 'main';
227
+ // Resolve against the anchored MAIN repo (ID-09a) so the detected default
228
+ // + current branch are read from the same repo the worktree is added to.
117
229
  let baseBranch = fromPref;
230
+ let baseBranchSource = null;
231
+ let baseBranchNote = null;
118
232
  if (fromPref === 'current' || fromPref === 'HEAD') {
119
- // Explicit opt-in to chaining onto the user's current branch (AC8).
120
- try {
121
- baseBranch =
122
- execSync('git rev-parse --abbrev-ref HEAD', {
123
- cwd: targetDir,
124
- encoding: 'utf-8',
125
- }).trim() || 'HEAD';
126
- }
127
- catch {
128
- baseBranch = 'HEAD';
233
+ // `current` = the INVOKING context's branch (the worktree/cwd you are
234
+ // on), NOT the main repo's — that is the branch the user would
235
+ // silently stack onto. Worktrees share refs, so this branch is still
236
+ // resolvable from anchorRoot when `git worktree add` runs.
237
+ const cur = currentBranchName(targetDir);
238
+ baseBranch = cur;
239
+ const detectedDefault = bareBranchName(detectDefaultBranch(anchorRoot));
240
+ const isNonDefault = !!detectedDefault && cur !== detectedDefault && cur !== 'HEAD';
241
+ // EXPLICIT --from current/HEAD is intentional stacking → silent (AC13).
242
+ // A from_branch:'current' CONFIG default resolving to a non-default
243
+ // branch is the SURPRISING case that surfaces autonomy-aware.
244
+ const explicitCurrent = !!fromFlag;
245
+ if (isNonDefault && !explicitCurrent) {
246
+ const autonomy = resolveCreateAutonomy(flags, targetDir);
247
+ if (autonomy <= 1) {
248
+ // Fail closed asking (C50/0.6.1 requires_input non-TTY contract):
249
+ // do NOT create until the caller re-invokes with explicit --from.
250
+ return ok({
251
+ status: 'requires_input',
252
+ command: 'worktree-create',
253
+ reason: 'non_default_base',
254
+ task_id: taskId,
255
+ scope: taskScope,
256
+ base_branch: cur,
257
+ default_branch: detectedDefault,
258
+ prompt: `base = ${cur} — fork from ${detectedDefault} instead? [${detectedDefault}/current]`,
259
+ });
260
+ }
261
+ // autonomy 2-3 — proceed, but LOG the chosen non-default base.
262
+ baseBranchSource = 'current-non-default';
263
+ baseBranchNote = `base branch '${cur}' is not the repo default '${detectedDefault}' (from_branch: current config default) — proceeding at autonomy ${autonomy}`;
129
264
  }
130
265
  }
131
266
  else if (fromPref === 'main') {
132
- // Main-detection chain — local refs only, no network (per ID-02).
133
- const candidates = ['origin/HEAD', 'origin/main', 'origin/master', 'main', 'master'];
134
- let resolved = null;
135
- for (const ref of candidates) {
136
- try {
137
- const out = execSync(`git rev-parse --verify ${ref}`, {
138
- cwd: targetDir,
139
- encoding: 'utf-8',
140
- stdio: ['ignore', 'pipe', 'pipe'],
141
- }).trim();
142
- if (out) {
143
- // origin/HEAD is a symref — resolve it to e.g. `origin/main`
144
- // so the base branch we hand to `git worktree add` is usable.
145
- if (ref === 'origin/HEAD') {
146
- try {
147
- const sym = execSync('git symbolic-ref refs/remotes/origin/HEAD', {
148
- cwd: targetDir,
149
- encoding: 'utf-8',
150
- stdio: ['ignore', 'pipe', 'pipe'],
151
- }).trim();
152
- resolved = sym.replace(/^refs\/remotes\//, '') || ref;
153
- }
154
- catch {
155
- resolved = ref;
156
- }
157
- }
158
- else {
159
- resolved = ref;
160
- }
161
- break;
162
- }
163
- }
164
- catch {
165
- // Ref doesn't exist — try the next one.
166
- }
167
- }
267
+ const resolved = detectDefaultBranch(anchorRoot);
168
268
  if (resolved) {
169
269
  baseBranch = resolved;
170
270
  }
@@ -172,16 +272,7 @@ function doCreate(_subcommand, targetDir, extraArgs, SAFE_ID_PATTERN, SAFE_BRANC
172
272
  // Degenerate repo (no main/master ref anywhere). Fall back to
173
273
  // current HEAD so users in detached or greenfield repos still
174
274
  // get a working worktree instead of a hard error.
175
- try {
176
- baseBranch =
177
- execSync('git rev-parse --abbrev-ref HEAD', {
178
- cwd: targetDir,
179
- encoding: 'utf-8',
180
- }).trim() || 'HEAD';
181
- }
182
- catch {
183
- baseBranch = 'HEAD';
184
- }
275
+ baseBranch = currentBranchName(anchorRoot);
185
276
  }
186
277
  }
187
278
  // Any other explicit fromPref value (e.g. `origin/main`, `feature/foo`,
@@ -189,24 +280,22 @@ function doCreate(_subcommand, targetDir, extraArgs, SAFE_ID_PATTERN, SAFE_BRANC
189
280
  if (!SAFE_BRANCH_PATTERN.test(baseBranch)) {
190
281
  throw new WorktreeUsageError('Invalid base branch: must match [a-zA-Z0-9_-/.]. Got: ' + baseBranch);
191
282
  }
192
- // Nested-worktree guard same rule as subtask mode.
193
- const wt = detectWorktree(targetDir);
194
- if (wt.is_worktree) {
195
- throw new WorktreeUsageError('Cannot create worktree: already inside a worktree at ' +
196
- wt.worktree_root +
197
- '. Nested worktrees are not supported.');
198
- }
199
- const worktreePath = join(targetDir, '.aperant', 'worktrees', taskScope, taskId);
283
+ // state-fork-fix ID-09a: NO nested-worktree hard-error in task mode. The
284
+ // task worktree is always created as a SIBLING under the MAIN repo's
285
+ // .aperant/worktrees/<scope>/<id> — invoking from inside a worktree (or a
286
+ // subdir) retargets to main instead of refusing. (The legacy subtask-mode
287
+ // path below keeps its nested-worktree refusal — back-compat only.)
288
+ const worktreePath = join(anchorRoot, '.aperant', 'worktrees', taskScope, taskId);
200
289
  if (existsSync(worktreePath)) {
201
290
  throw new WorktreeUsageError('Worktree already exists at ' +
202
291
  worktreePath +
203
292
  '. Remove it first with: apt-tools worktree remove <dir> --task ' +
204
293
  taskId);
205
294
  }
206
- mkdirSync(join(targetDir, '.aperant', 'worktrees', taskScope), { recursive: true });
295
+ mkdirSync(join(anchorRoot, '.aperant', 'worktrees', taskScope), { recursive: true });
207
296
  try {
208
297
  execFileSync('git', ['worktree', 'add', worktreePath, '-b', taskBranch, baseBranch], {
209
- cwd: targetDir,
298
+ cwd: anchorRoot,
210
299
  encoding: 'utf-8',
211
300
  stdio: 'pipe',
212
301
  });
@@ -214,6 +303,18 @@ function doCreate(_subcommand, targetDir, extraArgs, SAFE_ID_PATTERN, SAFE_BRANC
214
303
  catch (e) {
215
304
  throw new WorktreeUsageError('Failed to create worktree: ' + (e.stderr || e.message).trim());
216
305
  }
306
+ // Materialize the project's stored env blobs into the fresh worktree
307
+ // (#354) — best-effort, traversal-guarded inside the helper, never aborts
308
+ // worktree creation. Surfaced on the envelope as `env_materialized`.
309
+ let envMaterialized = null;
310
+ try {
311
+ envMaterialized = await materializeProjectEnvCli(worktreePath, targetDir, flags.get('project-id'));
312
+ }
313
+ catch {
314
+ // Defense in depth: the helper already swallows errors, but if it ever
315
+ // rejects we still must not fail the create.
316
+ envMaterialized = null;
317
+ }
217
318
  // Best-effort push: honor --push flag or config.push_on_create.
218
319
  // Never abort on failure — users may have no network / no remote.
219
320
  const shouldPush = pushOptIn || isolation.push_on_create === true;
@@ -247,10 +348,16 @@ function doCreate(_subcommand, targetDir, extraArgs, SAFE_ID_PATTERN, SAFE_BRANC
247
348
  // resolution (env override → process.argv[1] → monorepo →
248
349
  // consumer-install → $PATH). This file no longer reads
249
350
  // process.argv[1] directly.
351
+ // state-fork-fix ID-09a: pass anchorRoot (NOT raw targetDir) as the
352
+ // project-dir. With the nested-worktree guard removed, doCreate can
353
+ // run from inside a worktree, and worktree-install writes EPHEMERAL
354
+ // tasks/<id>/install/ logs + a stubbed $HOME + a detached --finalize
355
+ // re-spawn off its project-dir — anchoring at main keeps those off the
356
+ // forked worktree board, consistent with the main-anchored worktreePath.
250
357
  const wtInstallArgs = [
251
- resolveAptToolsBin(targetDir),
358
+ resolveAptToolsBin(anchorRoot),
252
359
  'worktree-install',
253
- targetDir,
360
+ anchorRoot,
254
361
  '--task',
255
362
  taskId,
256
363
  '--worktree',
@@ -326,6 +433,14 @@ function doCreate(_subcommand, targetDir, extraArgs, SAFE_ID_PATTERN, SAFE_BRANC
326
433
  createOut.install = installBlock;
327
434
  if (installWarning)
328
435
  createOut.install_warning = installWarning;
436
+ if (envMaterialized)
437
+ createOut.env_materialized = envMaterialized;
438
+ // ID-09b: when proceeding with a non-default current base at autonomy 2-3,
439
+ // LOG the chosen base on the success envelope.
440
+ if (baseBranchSource)
441
+ createOut.base_branch_source = baseBranchSource;
442
+ if (baseBranchNote)
443
+ createOut.base_branch_note = baseBranchNote;
329
444
  return ok(createOut);
330
445
  }
331
446
  // Subtask-mode (legacy) create.
@@ -390,10 +505,13 @@ function doRemove(_subcommand, targetDir, extraArgs, SAFE_ID_PATTERN) {
390
505
  // C28 — resolve scope for {scope}/{task-id} path. Accept --scope,
391
506
  // else read state.json, else fall back to scanning the worktree
392
507
  // dir (handles orphaned worktrees whose task record is gone).
508
+ // state-fork-fix: anchor at main, matching doCreate (ID-09a).
509
+ const anchorRoot = resolveMainRepoRoot(targetDir);
393
510
  let taskScope = flags.get('scope') || null;
394
511
  if (!taskScope) {
395
512
  try {
396
- const sp = join(targetDir, '.aperant', 'state.json');
513
+ // state-fork-fix: ephemeral scope read resolves to the main board.
514
+ const sp = join(anchorRoot, '.aperant', 'state.json');
397
515
  if (existsSync(sp)) {
398
516
  const st = JSON.parse(readFileSync(sp, 'utf-8'));
399
517
  taskScope = st?.active_tasks?.[taskId]?.scope || null;
@@ -406,7 +524,7 @@ function doRemove(_subcommand, targetDir, extraArgs, SAFE_ID_PATTERN) {
406
524
  if (!taskScope) {
407
525
  // Scan scope subdirs for a match.
408
526
  try {
409
- const root = join(targetDir, '.aperant', 'worktrees');
527
+ const root = join(anchorRoot, '.aperant', 'worktrees');
410
528
  if (existsSync(root)) {
411
529
  for (const entry of readdirSync(root, { withFileTypes: true })) {
412
530
  if (entry.isDirectory() && existsSync(join(root, entry.name, taskId))) {
@@ -421,12 +539,15 @@ function doRemove(_subcommand, targetDir, extraArgs, SAFE_ID_PATTERN) {
421
539
  }
422
540
  }
423
541
  taskScope = taskScope || 'project';
424
- const worktreePath = join(targetDir, '.aperant', 'worktrees', taskScope, taskId);
542
+ if (!SAFE_ID_PATTERN.test(taskScope)) {
543
+ throw new WorktreeUsageError('Invalid scope: must match [a-zA-Z0-9_-]. Got: ' + taskScope);
544
+ }
545
+ const worktreePath = join(anchorRoot, '.aperant', 'worktrees', taskScope, taskId);
425
546
  const args = ['worktree', 'remove', worktreePath];
426
547
  if (force)
427
548
  args.push('--force');
428
549
  try {
429
- execFileSync('git', args, { cwd: targetDir, encoding: 'utf-8', stdio: 'pipe' });
550
+ execFileSync('git', args, { cwd: anchorRoot, encoding: 'utf-8', stdio: 'pipe' });
430
551
  }
431
552
  catch (e) {
432
553
  throw new WorktreeUsageError('Failed to remove worktree: ' + (e.stderr || e.message).trim());
@@ -437,7 +558,7 @@ function doRemove(_subcommand, targetDir, extraArgs, SAFE_ID_PATTERN) {
437
558
  const taskBranch = `${isolation.branch_prefix || 'apt'}/${taskId}`;
438
559
  try {
439
560
  execFileSync('git', ['branch', '-D', taskBranch], {
440
- cwd: targetDir,
561
+ cwd: anchorRoot,
441
562
  encoding: 'utf-8',
442
563
  stdio: 'pipe',
443
564
  });
@@ -481,10 +602,12 @@ function doRemove(_subcommand, targetDir, extraArgs, SAFE_ID_PATTERN) {
481
602
  });
482
603
  }
483
604
  function doList(targetDir) {
605
+ // state-fork-fix: anchor at main so the prefix and git output share the same root.
606
+ const anchorRoot = resolveMainRepoRoot(targetDir);
484
607
  let rawOutput;
485
608
  try {
486
609
  rawOutput = execSync('git worktree list --porcelain', {
487
- cwd: targetDir,
610
+ cwd: anchorRoot,
488
611
  encoding: 'utf-8',
489
612
  stdio: 'pipe',
490
613
  });
@@ -494,7 +617,7 @@ function doList(targetDir) {
494
617
  }
495
618
  // Parse porcelain output — each worktree block separated by blank line
496
619
  const worktrees = [];
497
- const aperantPrefix = join(targetDir, '.aperant', 'worktrees');
620
+ const aperantPrefix = join(anchorRoot, '.aperant', 'worktrees');
498
621
  const blocks = rawOutput.trim().split('\n\n');
499
622
  for (const block of blocks) {
500
623
  const lines = block.trim().split('\n');
@@ -537,4 +660,80 @@ function doList(targetDir) {
537
660
  worktrees: worktrees,
538
661
  });
539
662
  }
663
+ /**
664
+ * `apt-tools worktree sync-env <dir> --task <id> [--scope <scope>] [--project-id <id>]`
665
+ *
666
+ * Re-materialize the project's stored env blobs into an existing task worktree
667
+ * (ID-07). The store is the source of truth — sync-env OVERWRITES the worktree
668
+ * files; there is no two-way merge. Used for long-lived worktrees that drifted
669
+ * after the source env changed in the store.
670
+ */
671
+ async function doSyncEnv(targetDir, extraArgs, SAFE_ID_PATTERN) {
672
+ const flags = parseFlags(extraArgs);
673
+ const taskId = flags.get('task');
674
+ if (!taskId) {
675
+ throw new WorktreeUsageError('Usage: apt-tools worktree sync-env <dir> --task <id> [--scope <scope>] [--project-id <id>]');
676
+ }
677
+ if (!SAFE_ID_PATTERN.test(taskId)) {
678
+ throw new WorktreeUsageError('Invalid task ID: must match [a-zA-Z0-9_-]. Got: ' + taskId);
679
+ }
680
+ // state-fork-fix: anchor at main, matching doCreate (ID-09a).
681
+ const anchorRoot = resolveMainRepoRoot(targetDir);
682
+ // Resolve scope the same way doRemove does: --scope, else state.json, else
683
+ // scan the worktrees dir for a matching task subdir.
684
+ let taskScope = flags.get('scope') || null;
685
+ if (!taskScope) {
686
+ try {
687
+ // state-fork-fix: ephemeral scope read resolves to the main board.
688
+ const sp = join(anchorRoot, '.aperant', 'state.json');
689
+ if (existsSync(sp)) {
690
+ const st = JSON.parse(readFileSync(sp, 'utf-8'));
691
+ taskScope = st?.active_tasks?.[taskId]?.scope || null;
692
+ }
693
+ }
694
+ catch {
695
+ /* ignore */
696
+ }
697
+ }
698
+ if (!taskScope) {
699
+ try {
700
+ const root = join(anchorRoot, '.aperant', 'worktrees');
701
+ if (existsSync(root)) {
702
+ for (const entry of readdirSync(root, { withFileTypes: true })) {
703
+ if (entry.isDirectory() && existsSync(join(root, entry.name, taskId))) {
704
+ taskScope = entry.name;
705
+ break;
706
+ }
707
+ }
708
+ }
709
+ }
710
+ catch {
711
+ /* ignore */
712
+ }
713
+ }
714
+ taskScope = (taskScope || 'project').trim() || 'project';
715
+ // Validate scope BEFORE it is joined into the worktree path (mirrors
716
+ // doCreate). An unvalidated scope (e.g. `--scope ../../etc`) would let the
717
+ // resolved worktree root escape `.aperant/worktrees/`, and sync-env writes
718
+ // secret env blobs into that root — so reject anything outside [a-zA-Z0-9_-].
719
+ if (!SAFE_ID_PATTERN.test(taskScope)) {
720
+ throw new WorktreeUsageError('Invalid scope: must match [a-zA-Z0-9_-]. Got: ' + taskScope);
721
+ }
722
+ const worktreePath = join(anchorRoot, '.aperant', 'worktrees', taskScope, taskId);
723
+ if (!existsSync(worktreePath)) {
724
+ throw new WorktreeUsageError('Worktree not found at ' +
725
+ worktreePath +
726
+ '. Create it first with: apt-tools worktree create <dir> --task ' +
727
+ taskId);
728
+ }
729
+ const result = await materializeProjectEnvCli(worktreePath, targetDir, flags.get('project-id'));
730
+ return ok({
731
+ status: 'ok',
732
+ command: 'worktree-sync-env',
733
+ task_id: taskId,
734
+ scope: taskScope,
735
+ worktree_path: worktreePath,
736
+ env_materialized: result,
737
+ });
738
+ }
540
739
  //# sourceMappingURL=worktree.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"worktree.mjs","sourceRoot":"","sources":["../../../src/cli/commands/worktree.mjs"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worktree.mjs","sourceRoot":"","sources":["../../../src/cli/commands/worktree.mjs"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"post-merge-sweep.d.mts","sourceRoot":"","sources":["../../../src/cli/config/post-merge-sweep.mjs"],"names":[],"mappings":"AA4EA;;;;;;GAMG;AACH;;;;WAmBC;AAED;;;;;;GAMG;AACH,oEAUC;AAED;;;;;GAKG;AACH,8EAQC;AAED;;;;;;;GAOG;AACH,wDAYC;AAED;;;;;;GAMG;AACH;;;EAWC;AAcD;;;;;;;GAOG;AACH,kFAiBC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwFC"}
1
+ {"version":3,"file":"post-merge-sweep.d.mts","sourceRoot":"","sources":["../../../src/cli/config/post-merge-sweep.mjs"],"names":[],"mappings":"AA6EA;;;;;;GAMG;AACH;;;;WAmBC;AAED;;;;;;GAMG;AACH,oEAUC;AAED;;;;;GAKG;AACH,8EAQC;AAED;;;;;;;GAOG;AACH,wDAYC;AAED;;;;;;GAMG;AACH;;;EAWC;AAcD;;;;;;;GAOG;AACH,kFAiBC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwFC"}
@@ -36,6 +36,7 @@ import { spawn } from 'node:child_process';
36
36
  import { closeSync, existsSync, openSync, readFileSync, statSync, writeSync } from 'node:fs';
37
37
  import { dirname, join, resolve } from 'node:path';
38
38
  import { fileURLToPath } from 'node:url';
39
+ import { resolveMainRepoRoot } from '../util/state-paths.mjs';
39
40
  /**
40
41
  * Hot-path commands whose stderr feeds back into LLM-facing routers /
41
42
  * detectors — chatty hook output would pollute classification signal.
@@ -78,7 +79,7 @@ function getCooldownMs() {
78
79
  * @internal
79
80
  */
80
81
  export function readShippedCandidates(projectRoot) {
81
- const statePath = join(projectRoot, '.aperant', 'state.json');
82
+ const statePath = join(resolveMainRepoRoot(projectRoot), '.aperant', 'state.json');
82
83
  if (!existsSync(statePath))
83
84
  return null;
84
85
  let state;
@@ -111,7 +112,7 @@ export function readShippedCandidates(projectRoot) {
111
112
  * @internal
112
113
  */
113
114
  export function readPendingNarrationCount(projectRoot) {
114
- const statePath = join(projectRoot, '.aperant', 'state.json');
115
+ const statePath = join(resolveMainRepoRoot(projectRoot), '.aperant', 'state.json');
115
116
  if (!existsSync(statePath))
116
117
  return 0;
117
118
  try {