dorfl 0.14.2 → 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 (418) hide show
  1. package/dist/advance-ci-template.d.ts +17 -16
  2. package/dist/advance-ci-template.d.ts.map +1 -1
  3. package/dist/advance-ci-template.js +42 -53
  4. package/dist/advance-ci-template.js.map +1 -1
  5. package/dist/advance-drivers.d.ts +8 -0
  6. package/dist/advance-drivers.d.ts.map +1 -1
  7. package/dist/advance-drivers.js +28 -4
  8. package/dist/advance-drivers.js.map +1 -1
  9. package/dist/advance-isolated.d.ts.map +1 -1
  10. package/dist/advance-isolated.js +3 -2
  11. package/dist/advance-isolated.js.map +1 -1
  12. package/dist/advance-lifecycle-template.d.ts +41 -40
  13. package/dist/advance-lifecycle-template.d.ts.map +1 -1
  14. package/dist/advance-lifecycle-template.js +309 -489
  15. package/dist/advance-lifecycle-template.js.map +1 -1
  16. package/dist/advance-loop-driver.d.ts.map +1 -1
  17. package/dist/advance-loop-driver.js +3 -2
  18. package/dist/advance-loop-driver.js.map +1 -1
  19. package/dist/advance-treeless-publish.d.ts +31 -0
  20. package/dist/advance-treeless-publish.d.ts.map +1 -1
  21. package/dist/advance-treeless-publish.js +40 -0
  22. package/dist/advance-treeless-publish.js.map +1 -1
  23. package/dist/advance.d.ts +63 -3
  24. package/dist/advance.d.ts.map +1 -1
  25. package/dist/advance.js +80 -12
  26. package/dist/advance.js.map +1 -1
  27. package/dist/advancing-lock.d.ts +9 -0
  28. package/dist/advancing-lock.d.ts.map +1 -1
  29. package/dist/advancing-lock.js +21 -1
  30. package/dist/advancing-lock.js.map +1 -1
  31. package/dist/agent-env.d.ts +61 -0
  32. package/dist/agent-env.d.ts.map +1 -0
  33. package/dist/agent-env.js +144 -0
  34. package/dist/agent-env.js.map +1 -0
  35. package/dist/agent-stop.d.ts +35 -0
  36. package/dist/agent-stop.d.ts.map +1 -1
  37. package/dist/agent-stop.js +62 -0
  38. package/dist/agent-stop.js.map +1 -1
  39. package/dist/apply-merge-action.d.ts +76 -34
  40. package/dist/apply-merge-action.d.ts.map +1 -1
  41. package/dist/apply-merge-action.js +339 -129
  42. package/dist/apply-merge-action.js.map +1 -1
  43. package/dist/apply-stuck-action.js +2 -2
  44. package/dist/apply-stuck-action.js.map +1 -1
  45. package/dist/ci-agent-result.d.ts +151 -0
  46. package/dist/ci-agent-result.d.ts.map +1 -0
  47. package/dist/ci-agent-result.js +314 -0
  48. package/dist/ci-agent-result.js.map +1 -0
  49. package/dist/ci-handoff-apply.d.ts +162 -0
  50. package/dist/ci-handoff-apply.d.ts.map +1 -0
  51. package/dist/ci-handoff-apply.js +497 -0
  52. package/dist/ci-handoff-apply.js.map +1 -0
  53. package/dist/ci-handoff-format.d.ts +369 -0
  54. package/dist/ci-handoff-format.d.ts.map +1 -0
  55. package/dist/ci-handoff-format.js +646 -0
  56. package/dist/ci-handoff-format.js.map +1 -0
  57. package/dist/ci-handoff-lfs.d.ts +146 -0
  58. package/dist/ci-handoff-lfs.d.ts.map +1 -0
  59. package/dist/ci-handoff-lfs.js +397 -0
  60. package/dist/ci-handoff-lfs.js.map +1 -0
  61. package/dist/ci-handoff.d.ts +99 -0
  62. package/dist/ci-handoff.d.ts.map +1 -0
  63. package/dist/ci-handoff.js +277 -0
  64. package/dist/ci-handoff.js.map +1 -0
  65. package/dist/ci-lock-outputs.d.ts +93 -0
  66. package/dist/ci-lock-outputs.d.ts.map +1 -0
  67. package/dist/ci-lock-outputs.js +223 -0
  68. package/dist/ci-lock-outputs.js.map +1 -0
  69. package/dist/ci-phase-build.d.ts +178 -0
  70. package/dist/ci-phase-build.d.ts.map +1 -0
  71. package/dist/ci-phase-build.js +989 -0
  72. package/dist/ci-phase-build.js.map +1 -0
  73. package/dist/ci-phase-driver.d.ts +247 -0
  74. package/dist/ci-phase-driver.d.ts.map +1 -0
  75. package/dist/ci-phase-driver.js +370 -0
  76. package/dist/ci-phase-driver.js.map +1 -0
  77. package/dist/ci-phase-intake.d.ts +172 -0
  78. package/dist/ci-phase-intake.d.ts.map +1 -0
  79. package/dist/ci-phase-intake.js +555 -0
  80. package/dist/ci-phase-intake.js.map +1 -0
  81. package/dist/ci-phase-tasking.d.ts +205 -0
  82. package/dist/ci-phase-tasking.d.ts.map +1 -0
  83. package/dist/ci-phase-tasking.js +906 -0
  84. package/dist/ci-phase-tasking.js.map +1 -0
  85. package/dist/ci-phase-treeless.d.ts +224 -0
  86. package/dist/ci-phase-treeless.d.ts.map +1 -0
  87. package/dist/ci-phase-treeless.js +1482 -0
  88. package/dist/ci-phase-treeless.js.map +1 -0
  89. package/dist/ci-read-token.d.ts +47 -0
  90. package/dist/ci-read-token.d.ts.map +1 -0
  91. package/dist/ci-read-token.js +80 -0
  92. package/dist/ci-read-token.js.map +1 -0
  93. package/dist/cli.d.ts.map +1 -1
  94. package/dist/cli.js +447 -22
  95. package/dist/cli.js.map +1 -1
  96. package/dist/close-job-template.d.ts +10 -1
  97. package/dist/close-job-template.d.ts.map +1 -1
  98. package/dist/close-job-template.js +46 -14
  99. package/dist/close-job-template.js.map +1 -1
  100. package/dist/close-job.d.ts +20 -5
  101. package/dist/close-job.d.ts.map +1 -1
  102. package/dist/close-job.js +65 -12
  103. package/dist/close-job.js.map +1 -1
  104. package/dist/complete.d.ts.map +1 -1
  105. package/dist/complete.js +20 -1
  106. package/dist/complete.js.map +1 -1
  107. package/dist/config.d.ts +41 -44
  108. package/dist/config.d.ts.map +1 -1
  109. package/dist/config.js +2 -4
  110. package/dist/config.js.map +1 -1
  111. package/dist/continue-branch.d.ts +63 -15
  112. package/dist/continue-branch.d.ts.map +1 -1
  113. package/dist/continue-branch.js +75 -8
  114. package/dist/continue-branch.js.map +1 -1
  115. package/dist/crashed-run-save.d.ts +73 -0
  116. package/dist/crashed-run-save.d.ts.map +1 -0
  117. package/dist/crashed-run-save.js +86 -0
  118. package/dist/crashed-run-save.js.map +1 -0
  119. package/dist/cwd-section.d.ts.map +1 -1
  120. package/dist/cwd-section.js +10 -2
  121. package/dist/cwd-section.js.map +1 -1
  122. package/dist/decision-engine.d.ts +10 -0
  123. package/dist/decision-engine.d.ts.map +1 -1
  124. package/dist/decision-engine.js.map +1 -1
  125. package/dist/do-config.d.ts +2 -24
  126. package/dist/do-config.d.ts.map +1 -1
  127. package/dist/do-config.js +1 -33
  128. package/dist/do-config.js.map +1 -1
  129. package/dist/do.d.ts +149 -1
  130. package/dist/do.d.ts.map +1 -1
  131. package/dist/do.js +115 -25
  132. package/dist/do.js.map +1 -1
  133. package/dist/dorfl-item-template.d.ts +98 -0
  134. package/dist/dorfl-item-template.d.ts.map +1 -0
  135. package/dist/dorfl-item-template.js +504 -0
  136. package/dist/dorfl-item-template.js.map +1 -0
  137. package/dist/env-config.d.ts.map +1 -1
  138. package/dist/env-config.js +7 -5
  139. package/dist/env-config.js.map +1 -1
  140. package/dist/frontmatter.d.ts +52 -0
  141. package/dist/frontmatter.d.ts.map +1 -1
  142. package/dist/frontmatter.js +136 -2
  143. package/dist/frontmatter.js.map +1 -1
  144. package/dist/gc.d.ts +13 -0
  145. package/dist/gc.d.ts.map +1 -1
  146. package/dist/gc.js +16 -2
  147. package/dist/gc.js.map +1 -1
  148. package/dist/git.d.ts +18 -1
  149. package/dist/git.d.ts.map +1 -1
  150. package/dist/git.js +70 -5
  151. package/dist/git.js.map +1 -1
  152. package/dist/harness.d.ts +44 -5
  153. package/dist/harness.d.ts.map +1 -1
  154. package/dist/harness.js +24 -1
  155. package/dist/harness.js.map +1 -1
  156. package/dist/index.d.ts +11 -4
  157. package/dist/index.d.ts.map +1 -1
  158. package/dist/index.js +7 -3
  159. package/dist/index.js.map +1 -1
  160. package/dist/install-ci-action-pins.d.ts +123 -0
  161. package/dist/install-ci-action-pins.d.ts.map +1 -0
  162. package/dist/install-ci-action-pins.js +190 -0
  163. package/dist/install-ci-action-pins.js.map +1 -0
  164. package/dist/install-ci-actions-pr-creation.d.ts +70 -0
  165. package/dist/install-ci-actions-pr-creation.d.ts.map +1 -0
  166. package/dist/install-ci-actions-pr-creation.js +106 -0
  167. package/dist/install-ci-actions-pr-creation.js.map +1 -0
  168. package/dist/install-ci-capabilities/dorfl-item.d.ts +12 -0
  169. package/dist/install-ci-capabilities/dorfl-item.d.ts.map +1 -0
  170. package/dist/install-ci-capabilities/dorfl-item.js +26 -0
  171. package/dist/install-ci-capabilities/dorfl-item.js.map +1 -0
  172. package/dist/install-ci-core.d.ts +155 -37
  173. package/dist/install-ci-core.d.ts.map +1 -1
  174. package/dist/install-ci-core.js +304 -200
  175. package/dist/install-ci-core.js.map +1 -1
  176. package/dist/install-ci-github.d.ts +47 -2
  177. package/dist/install-ci-github.d.ts.map +1 -1
  178. package/dist/install-ci-github.js +113 -1
  179. package/dist/install-ci-github.js.map +1 -1
  180. package/dist/install-ci.d.ts +25 -6
  181. package/dist/install-ci.d.ts.map +1 -1
  182. package/dist/install-ci.js +72 -36
  183. package/dist/install-ci.js.map +1 -1
  184. package/dist/intake-marker.d.ts +6 -1
  185. package/dist/intake-marker.d.ts.map +1 -1
  186. package/dist/intake-marker.js.map +1 -1
  187. package/dist/intake-triage.d.ts.map +1 -1
  188. package/dist/intake-triage.js +6 -2
  189. package/dist/intake-triage.js.map +1 -1
  190. package/dist/intake-trigger-template.d.ts +31 -25
  191. package/dist/intake-trigger-template.d.ts.map +1 -1
  192. package/dist/intake-trigger-template.js +107 -292
  193. package/dist/intake-trigger-template.js.map +1 -1
  194. package/dist/intake.d.ts +186 -4
  195. package/dist/intake.d.ts.map +1 -1
  196. package/dist/intake.js +533 -416
  197. package/dist/intake.js.map +1 -1
  198. package/dist/integration-core.d.ts +154 -1
  199. package/dist/integration-core.d.ts.map +1 -1
  200. package/dist/integration-core.js +759 -486
  201. package/dist/integration-core.js.map +1 -1
  202. package/dist/integrator.d.ts +12 -0
  203. package/dist/integrator.d.ts.map +1 -1
  204. package/dist/integrator.js +21 -0
  205. package/dist/integrator.js.map +1 -1
  206. package/dist/isolation.d.ts +12 -2
  207. package/dist/isolation.d.ts.map +1 -1
  208. package/dist/isolation.js +19 -8
  209. package/dist/isolation.js.map +1 -1
  210. package/dist/item-lock.d.ts +93 -11
  211. package/dist/item-lock.d.ts.map +1 -1
  212. package/dist/item-lock.js +233 -65
  213. package/dist/item-lock.js.map +1 -1
  214. package/dist/land-question-residue.d.ts +58 -0
  215. package/dist/land-question-residue.d.ts.map +1 -0
  216. package/dist/land-question-residue.js +95 -0
  217. package/dist/land-question-residue.js.map +1 -0
  218. package/dist/lifecycle-gather.d.ts +16 -0
  219. package/dist/lifecycle-gather.d.ts.map +1 -1
  220. package/dist/lifecycle-gather.js +54 -6
  221. package/dist/lifecycle-gather.js.map +1 -1
  222. package/dist/merge-answer.d.ts +41 -0
  223. package/dist/merge-answer.d.ts.map +1 -0
  224. package/dist/merge-answer.js +60 -0
  225. package/dist/merge-answer.js.map +1 -0
  226. package/dist/merge-question-surfacer.d.ts +105 -30
  227. package/dist/merge-question-surfacer.d.ts.map +1 -1
  228. package/dist/merge-question-surfacer.js +202 -91
  229. package/dist/merge-question-surfacer.js.map +1 -1
  230. package/dist/merge-question-tick.d.ts +64 -0
  231. package/dist/merge-question-tick.d.ts.map +1 -0
  232. package/dist/merge-question-tick.js +96 -0
  233. package/dist/merge-question-tick.js.map +1 -0
  234. package/dist/mint-adr.d.ts.map +1 -1
  235. package/dist/mint-adr.js +20 -2
  236. package/dist/mint-adr.js.map +1 -1
  237. package/dist/needs-attention.d.ts +72 -2
  238. package/dist/needs-attention.d.ts.map +1 -1
  239. package/dist/needs-attention.js +275 -38
  240. package/dist/needs-attention.js.map +1 -1
  241. package/dist/phase-recorder.d.ts +168 -0
  242. package/dist/phase-recorder.d.ts.map +1 -0
  243. package/dist/phase-recorder.js +218 -0
  244. package/dist/phase-recorder.js.map +1 -0
  245. package/dist/phase.d.ts +94 -0
  246. package/dist/phase.d.ts.map +1 -0
  247. package/dist/phase.js +148 -0
  248. package/dist/phase.js.map +1 -0
  249. package/dist/pi-harness.d.ts.map +1 -1
  250. package/dist/pi-harness.js +19 -6
  251. package/dist/pi-harness.js.map +1 -1
  252. package/dist/prepare.d.ts.map +1 -1
  253. package/dist/prepare.js +4 -0
  254. package/dist/prepare.js.map +1 -1
  255. package/dist/prompt.d.ts +4 -0
  256. package/dist/prompt.d.ts.map +1 -1
  257. package/dist/prompt.js +48 -1
  258. package/dist/prompt.js.map +1 -1
  259. package/dist/protocol/CLAIM-PROTOCOL.md +3 -1
  260. package/dist/protocol/WORK-CONTRACT.md +1 -1
  261. package/dist/reap-branches.d.ts +48 -0
  262. package/dist/reap-branches.d.ts.map +1 -1
  263. package/dist/reap-branches.js +64 -0
  264. package/dist/reap-branches.js.map +1 -1
  265. package/dist/ref-write.d.ts +198 -0
  266. package/dist/ref-write.d.ts.map +1 -0
  267. package/dist/ref-write.js +79 -0
  268. package/dist/ref-write.js.map +1 -0
  269. package/dist/repo-config.js +8 -8
  270. package/dist/repo-config.js.map +1 -1
  271. package/dist/repo-mirror.d.ts +36 -0
  272. package/dist/repo-mirror.d.ts.map +1 -1
  273. package/dist/repo-mirror.js +91 -1
  274. package/dist/repo-mirror.js.map +1 -1
  275. package/dist/review-verdict.d.ts +1 -1
  276. package/dist/review-verdict.js +1 -1
  277. package/dist/run.d.ts +7 -1
  278. package/dist/run.d.ts.map +1 -1
  279. package/dist/run.js +28 -4
  280. package/dist/run.js.map +1 -1
  281. package/dist/scan.d.ts +19 -1
  282. package/dist/scan.d.ts.map +1 -1
  283. package/dist/scan.js +21 -8
  284. package/dist/scan.js.map +1 -1
  285. package/dist/sidecar.d.ts +14 -0
  286. package/dist/sidecar.d.ts.map +1 -1
  287. package/dist/sidecar.js +21 -0
  288. package/dist/sidecar.js.map +1 -1
  289. package/dist/single-job-warning.d.ts +63 -0
  290. package/dist/single-job-warning.d.ts.map +1 -0
  291. package/dist/single-job-warning.js +110 -0
  292. package/dist/single-job-warning.js.map +1 -0
  293. package/dist/skills/setup/protocol/CLAIM-PROTOCOL.md +3 -1
  294. package/dist/skills/setup/protocol/WORK-CONTRACT.md +1 -1
  295. package/dist/spec-complete.d.ts +13 -6
  296. package/dist/spec-complete.d.ts.map +1 -1
  297. package/dist/spec-complete.js +23 -11
  298. package/dist/spec-complete.js.map +1 -1
  299. package/dist/start.d.ts.map +1 -1
  300. package/dist/start.js +47 -14
  301. package/dist/start.js.map +1 -1
  302. package/dist/status.d.ts +12 -0
  303. package/dist/status.d.ts.map +1 -1
  304. package/dist/status.js +11 -3
  305. package/dist/status.js.map +1 -1
  306. package/dist/tasking.d.ts +246 -1
  307. package/dist/tasking.d.ts.map +1 -1
  308. package/dist/tasking.js +452 -358
  309. package/dist/tasking.js.map +1 -1
  310. package/dist/triage-persist.d.ts.map +1 -1
  311. package/dist/triage-persist.js +21 -2
  312. package/dist/triage-persist.js.map +1 -1
  313. package/dist/verify-workflow-template.d.ts.map +1 -1
  314. package/dist/verify-workflow-template.js +8 -4
  315. package/dist/verify-workflow-template.js.map +1 -1
  316. package/dist/verify.d.ts.map +1 -1
  317. package/dist/verify.js +4 -0
  318. package/dist/verify.js.map +1 -1
  319. package/dist/watch-session.d.ts +42 -13
  320. package/dist/watch-session.d.ts.map +1 -1
  321. package/dist/watch-session.js +52 -23
  322. package/dist/watch-session.js.map +1 -1
  323. package/dist/work-layout.d.ts +10 -4
  324. package/dist/work-layout.d.ts.map +1 -1
  325. package/dist/work-layout.js +11 -3
  326. package/dist/work-layout.js.map +1 -1
  327. package/dist/workspace.d.ts +65 -4
  328. package/dist/workspace.d.ts.map +1 -1
  329. package/dist/workspace.js +159 -11
  330. package/dist/workspace.js.map +1 -1
  331. package/package.json +1 -1
  332. package/src/advance-ci-template.ts +80 -81
  333. package/src/advance-drivers.ts +45 -6
  334. package/src/advance-isolated.ts +3 -5
  335. package/src/advance-lifecycle-template.ts +375 -538
  336. package/src/advance-loop-driver.ts +3 -5
  337. package/src/advance-treeless-publish.ts +61 -0
  338. package/src/advance.ts +145 -15
  339. package/src/advancing-lock.ts +36 -1
  340. package/src/agent-env.ts +174 -0
  341. package/src/agent-stop.ts +81 -0
  342. package/src/apply-merge-action.ts +401 -154
  343. package/src/apply-stuck-action.ts +2 -2
  344. package/src/ci-agent-result.ts +421 -0
  345. package/src/ci-handoff-apply.ts +737 -0
  346. package/src/ci-handoff-format.ts +926 -0
  347. package/src/ci-handoff-lfs.ts +519 -0
  348. package/src/ci-handoff.ts +392 -0
  349. package/src/ci-lock-outputs.ts +273 -0
  350. package/src/ci-phase-build.ts +1328 -0
  351. package/src/ci-phase-driver.ts +548 -0
  352. package/src/ci-phase-intake.ts +861 -0
  353. package/src/ci-phase-tasking.ts +1255 -0
  354. package/src/ci-phase-treeless.ts +2028 -0
  355. package/src/ci-read-token.ts +90 -0
  356. package/src/cli.ts +591 -29
  357. package/src/close-job-template.ts +52 -15
  358. package/src/close-job.ts +77 -12
  359. package/src/complete.ts +19 -1
  360. package/src/config.ts +43 -48
  361. package/src/continue-branch.ts +121 -16
  362. package/src/crashed-run-save.ts +162 -0
  363. package/src/cwd-section.ts +10 -0
  364. package/src/decision-engine.ts +10 -0
  365. package/src/do-config.ts +2 -57
  366. package/src/do.ts +170 -28
  367. package/src/dorfl-item-template.ts +556 -0
  368. package/src/env-config.ts +7 -5
  369. package/src/frontmatter.ts +155 -2
  370. package/src/gc.ts +27 -2
  371. package/src/git.ts +83 -5
  372. package/src/harness.ts +58 -6
  373. package/src/index.ts +50 -1
  374. package/src/install-ci-action-pins.ts +209 -0
  375. package/src/install-ci-actions-pr-creation.ts +186 -0
  376. package/src/install-ci-capabilities/dorfl-item.ts +33 -0
  377. package/src/install-ci-core.ts +388 -233
  378. package/src/install-ci-github.ts +149 -1
  379. package/src/install-ci.ts +83 -37
  380. package/src/intake-marker.ts +6 -1
  381. package/src/intake-triage.ts +7 -3
  382. package/src/intake-trigger-template.ts +126 -327
  383. package/src/intake.ts +725 -544
  384. package/src/integration-core.ts +975 -523
  385. package/src/integrator.ts +28 -0
  386. package/src/isolation.ts +29 -10
  387. package/src/item-lock.ts +308 -92
  388. package/src/land-question-residue.ts +122 -0
  389. package/src/lifecycle-gather.ts +82 -10
  390. package/src/merge-answer.ts +82 -0
  391. package/src/merge-question-surfacer.ts +320 -112
  392. package/src/merge-question-tick.ts +182 -0
  393. package/src/mint-adr.ts +28 -2
  394. package/src/needs-attention.ts +350 -42
  395. package/src/phase-recorder.ts +350 -0
  396. package/src/phase.ts +177 -0
  397. package/src/pi-harness.ts +25 -5
  398. package/src/prepare.ts +4 -0
  399. package/src/prompt.ts +68 -1
  400. package/src/reap-branches.ts +107 -0
  401. package/src/ref-write.ts +324 -0
  402. package/src/repo-config.ts +8 -8
  403. package/src/repo-mirror.ts +107 -1
  404. package/src/review-verdict.ts +1 -1
  405. package/src/run.ts +47 -6
  406. package/src/scan.ts +37 -7
  407. package/src/sidecar.ts +36 -0
  408. package/src/single-job-warning.ts +135 -0
  409. package/src/spec-complete.ts +36 -14
  410. package/src/start.ts +55 -16
  411. package/src/status.ts +29 -3
  412. package/src/tasking.ts +593 -378
  413. package/src/triage-persist.ts +24 -2
  414. package/src/verify-workflow-template.ts +8 -4
  415. package/src/verify.ts +4 -0
  416. package/src/watch-session.ts +86 -28
  417. package/src/work-layout.ts +11 -3
  418. package/src/workspace.ts +210 -14
@@ -0,0 +1,70 @@
1
+ /**
2
+ * The "Allow GitHub Actions to create and approve pull requests" STEP for
3
+ * `install-ci` (task `install-ci-enables-actions-pr-creation`). A new GitHub
4
+ * repository has this setting OFF (`GET repos/<r>/actions/permissions/workflow`
5
+ * answers `can_approve_pull_request_reviews: false`), and with it off GitHub
6
+ * refuses every pull request the generated workflows try to open with the
7
+ * ambient `GITHUB_TOKEN`, so propose mode silently opens no PR. dorfl's own
8
+ * repository has it on, which is why this was only found in a fresh sandbox.
9
+ *
10
+ * BEHAVIOUR (mirrors the Tier-1 branch-protection step,
11
+ * `install-ci-branch-protection.ts`: auto-when-admin, instruct-otherwise):
12
+ *
13
+ * - READ the setting ({@link CIProviderContext.getActionsWorkflowPermissions}).
14
+ * Already on: leave it alone and say so.
15
+ * - Off (or unreadable) and the credential is repo-admin-scoped: SET it
16
+ * ({@link CIProviderContext.setActionsWorkflowPermissions}) with
17
+ * `can_approve_pull_request_reviews: true`, carrying the
18
+ * `default_workflow_permissions` value that was read so the GITHUB_TOKEN's
19
+ * default scope is preserved, never widened or narrowed.
20
+ * - Not admin (or unknown): never call the API; print the exact `gh api`
21
+ * command and the settings page instead. A rejected PUT is `failed` and
22
+ * prints the same command to retry by hand.
23
+ * - `--fake`: report what would be checked, call nothing.
24
+ *
25
+ * Never throws: a failure is reported in the result and the log, so install-ci's
26
+ * later steps still run.
27
+ */
28
+ import type { ActionsWorkflowPermissions, CIProviderContext } from './install-ci-core.js';
29
+ export type { ActionsWorkflowPermissions };
30
+ /**
31
+ * The exact `gh api` command a user runs to turn the setting on by hand. When
32
+ * the current `default_workflow_permissions` is known it is passed back
33
+ * unchanged; when it is not, the field is omitted, which leaves it as it is on
34
+ * GitHub (both PUT fields are optional). Pure string, no I/O.
35
+ */
36
+ export declare function formatManualActionsPrCreationCommand(repo: string, defaultWorkflowPermissions?: string): string;
37
+ /** Options for {@link installCIActionsPrCreationStep}. */
38
+ export interface ActionsPrCreationStepOptions {
39
+ /** The CI-provider seam (GitHub adapter in production; stub in tests). */
40
+ ctx: CIProviderContext;
41
+ /** Snapshot mode: never call the live API. */
42
+ fake?: boolean;
43
+ /** Sink for human-facing progress lines. */
44
+ log: (line: string) => void;
45
+ }
46
+ /** The outcome of one actions-PR-creation step run. */
47
+ export interface ActionsPrCreationStepResult {
48
+ /**
49
+ * - `already-enabled`: the setting was on; nothing was changed;
50
+ * - `set`: it was off (or unreadable), admin scope, the PUT succeeded;
51
+ * - `failed`: admin scope, the PUT was rejected (detail in `error`);
52
+ * - `instructed`: not admin (or unknown), the manual command was printed;
53
+ * - `skipped-no-repo`: the provider context has no `repo` known;
54
+ * - `skipped-no-seam`: the provider does not implement the seam;
55
+ * - `skipped-fake`: `--fake` snapshot mode (no real API touched).
56
+ */
57
+ status: 'already-enabled' | 'set' | 'failed' | 'instructed' | 'skipped-no-repo' | 'skipped-no-seam' | 'skipped-fake';
58
+ /** The permissions read before any change (`undefined` when unreadable). */
59
+ before?: ActionsWorkflowPermissions;
60
+ /** The detected admin-scope verdict (`true`/`false`/`undefined`=unknown). */
61
+ adminScope?: boolean;
62
+ /** The failure detail when `status === 'failed'`. */
63
+ error?: string;
64
+ }
65
+ /**
66
+ * Check, and when off and permitted, enable the repository setting that lets
67
+ * GitHub Actions create pull requests (see the module header).
68
+ */
69
+ export declare function installCIActionsPrCreationStep(options: ActionsPrCreationStepOptions): Promise<ActionsPrCreationStepResult>;
70
+ //# sourceMappingURL=install-ci-actions-pr-creation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install-ci-actions-pr-creation.d.ts","sourceRoot":"","sources":["../src/install-ci-actions-pr-creation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,KAAK,EACX,0BAA0B,EAC1B,iBAAiB,EACjB,MAAM,sBAAsB,CAAC;AAE9B,YAAY,EAAC,0BAA0B,EAAC,CAAC;AAEzC;;;;;GAKG;AACH,wBAAgB,oCAAoC,CACnD,IAAI,EAAE,MAAM,EACZ,0BAA0B,CAAC,EAAE,MAAM,GACjC,MAAM,CASR;AAED,0DAA0D;AAC1D,MAAM,WAAW,4BAA4B;IAC5C,0EAA0E;IAC1E,GAAG,EAAE,iBAAiB,CAAC;IACvB,8CAA8C;IAC9C,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,4CAA4C;IAC5C,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAC5B;AAED,uDAAuD;AACvD,MAAM,WAAW,2BAA2B;IAC3C;;;;;;;;OAQG;IACH,MAAM,EACH,iBAAiB,GACjB,KAAK,GACL,QAAQ,GACR,YAAY,GACZ,iBAAiB,GACjB,iBAAiB,GACjB,cAAc,CAAC;IAClB,4EAA4E;IAC5E,MAAM,CAAC,EAAE,0BAA0B,CAAC;IACpC,6EAA6E;IAC7E,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,qDAAqD;IACrD,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAID;;;GAGG;AACH,wBAAsB,8BAA8B,CACnD,OAAO,EAAE,4BAA4B,GACnC,OAAO,CAAC,2BAA2B,CAAC,CAqFtC"}
@@ -0,0 +1,106 @@
1
+ /**
2
+ * The "Allow GitHub Actions to create and approve pull requests" STEP for
3
+ * `install-ci` (task `install-ci-enables-actions-pr-creation`). A new GitHub
4
+ * repository has this setting OFF (`GET repos/<r>/actions/permissions/workflow`
5
+ * answers `can_approve_pull_request_reviews: false`), and with it off GitHub
6
+ * refuses every pull request the generated workflows try to open with the
7
+ * ambient `GITHUB_TOKEN`, so propose mode silently opens no PR. dorfl's own
8
+ * repository has it on, which is why this was only found in a fresh sandbox.
9
+ *
10
+ * BEHAVIOUR (mirrors the Tier-1 branch-protection step,
11
+ * `install-ci-branch-protection.ts`: auto-when-admin, instruct-otherwise):
12
+ *
13
+ * - READ the setting ({@link CIProviderContext.getActionsWorkflowPermissions}).
14
+ * Already on: leave it alone and say so.
15
+ * - Off (or unreadable) and the credential is repo-admin-scoped: SET it
16
+ * ({@link CIProviderContext.setActionsWorkflowPermissions}) with
17
+ * `can_approve_pull_request_reviews: true`, carrying the
18
+ * `default_workflow_permissions` value that was read so the GITHUB_TOKEN's
19
+ * default scope is preserved, never widened or narrowed.
20
+ * - Not admin (or unknown): never call the API; print the exact `gh api`
21
+ * command and the settings page instead. A rejected PUT is `failed` and
22
+ * prints the same command to retry by hand.
23
+ * - `--fake`: report what would be checked, call nothing.
24
+ *
25
+ * Never throws: a failure is reported in the result and the log, so install-ci's
26
+ * later steps still run.
27
+ */
28
+ /**
29
+ * The exact `gh api` command a user runs to turn the setting on by hand. When
30
+ * the current `default_workflow_permissions` is known it is passed back
31
+ * unchanged; when it is not, the field is omitted, which leaves it as it is on
32
+ * GitHub (both PUT fields are optional). Pure string, no I/O.
33
+ */
34
+ export function formatManualActionsPrCreationCommand(repo, defaultWorkflowPermissions) {
35
+ const keep = defaultWorkflowPermissions !== undefined
36
+ ? ` -f default_workflow_permissions=${defaultWorkflowPermissions}`
37
+ : '';
38
+ return (`gh api -X PUT repos/${repo}/actions/permissions/workflow ` +
39
+ `-F can_approve_pull_request_reviews=true${keep}`);
40
+ }
41
+ const LABEL = 'actions PR creation';
42
+ /**
43
+ * Check, and when off and permitted, enable the repository setting that lets
44
+ * GitHub Actions create pull requests (see the module header).
45
+ */
46
+ export async function installCIActionsPrCreationStep(options) {
47
+ const { ctx, log, fake } = options;
48
+ if (fake) {
49
+ log(`${LABEL}: skipped (--fake; would check that "Allow GitHub Actions to create and approve pull requests" is on, and enable it if not)`);
50
+ return { status: 'skipped-fake' };
51
+ }
52
+ if (!ctx.getActionsWorkflowPermissions ||
53
+ !ctx.setActionsWorkflowPermissions) {
54
+ log(`${LABEL}: skipped (provider does not implement the seam, non-GitHub host).`);
55
+ return { status: 'skipped-no-seam' };
56
+ }
57
+ if (!ctx.repo) {
58
+ log(`${LABEL}: skipped (repo unknown, pass --repo to enable).`);
59
+ return { status: 'skipped-no-repo' };
60
+ }
61
+ const repo = ctx.repo;
62
+ const before = await ctx
63
+ .getActionsWorkflowPermissions()
64
+ .catch(() => undefined);
65
+ if (before?.canApprovePullRequestReviews === true) {
66
+ log(`${LABEL}: "Allow GitHub Actions to create and approve pull requests" is already on for ${repo}.`);
67
+ return { status: 'already-enabled', before };
68
+ }
69
+ const keep = before?.defaultWorkflowPermissions;
70
+ const adminScope = ctx.getRepoAdminScope
71
+ ? await ctx.getRepoAdminScope().catch(() => undefined)
72
+ : undefined;
73
+ if (adminScope !== true) {
74
+ log(before === undefined
75
+ ? `${LABEL}: could not read "Allow GitHub Actions to create and approve pull requests" for ${repo}, and no admin-scoped credential was detected.`
76
+ : `${LABEL}: "Allow GitHub Actions to create and approve pull requests" is OFF for ${repo}, and no admin-scoped credential was detected.`);
77
+ log(' With it off, propose mode opens no pull request (GitHub refuses PRs created with GITHUB_TOKEN).');
78
+ log(' install-ci will NOT call the GitHub API. Run this yourself (admin token required):');
79
+ log(` ${formatManualActionsPrCreationCommand(repo, keep)}`);
80
+ log(` Manual UI fallback: https://github.com/${repo}/settings/actions ` +
81
+ '→ "Workflow permissions" → tick "Allow GitHub Actions to create and approve pull requests" → Save.');
82
+ return { status: 'instructed', before, adminScope };
83
+ }
84
+ try {
85
+ // Carry the default scope through unchanged; when it could not be read,
86
+ // omit it so GitHub keeps whatever it is.
87
+ await ctx.setActionsWorkflowPermissions({
88
+ canApprovePullRequestReviews: true,
89
+ ...(keep !== undefined ? { defaultWorkflowPermissions: keep } : {}),
90
+ });
91
+ }
92
+ catch (err) {
93
+ const error = err instanceof Error ? err.message : String(err);
94
+ log(`${LABEL}: FAILED (${error})`);
95
+ log(' With it off, propose mode opens no pull request (GitHub refuses PRs created with GITHUB_TOKEN).');
96
+ log(` Retry by hand (admin token required):\n` +
97
+ ` ${formatManualActionsPrCreationCommand(repo, keep)}`);
98
+ return { status: 'failed', before, adminScope, error };
99
+ }
100
+ log(`${LABEL}: enabled "Allow GitHub Actions to create and approve pull requests" on ${repo}` +
101
+ (keep !== undefined
102
+ ? ` (default_workflow_permissions kept as ${keep}).`
103
+ : '.'));
104
+ return { status: 'set', before, adminScope };
105
+ }
106
+ //# sourceMappingURL=install-ci-actions-pr-creation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install-ci-actions-pr-creation.js","sourceRoot":"","sources":["../src/install-ci-actions-pr-creation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * The SPLIT CI ITEM capability emitter (spec `ci-agent-job-without-write-token`,
3
+ * task `ci-split-generate-workflows`). A SELF-REGISTERING module (see
4
+ * `example-noop.ts`): it emits `dorfl-item.yml` (the lock, agent and apply jobs
5
+ * of ONE item) and `dorfl-item-dispatch.yml` (the per-item dispatch wrapper the
6
+ * advance tick starts), which the advance-lifecycle and intake workflows call.
7
+ *
8
+ * The workflow text lives in `dorfl-item-template.ts`; this file is the thin
9
+ * registry-wiring shim.
10
+ */
11
+ export {};
12
+ //# sourceMappingURL=dorfl-item.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dorfl-item.d.ts","sourceRoot":"","sources":["../../src/install-ci-capabilities/dorfl-item.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * The SPLIT CI ITEM capability emitter (spec `ci-agent-job-without-write-token`,
3
+ * task `ci-split-generate-workflows`). A SELF-REGISTERING module (see
4
+ * `example-noop.ts`): it emits `dorfl-item.yml` (the lock, agent and apply jobs
5
+ * of ONE item) and `dorfl-item-dispatch.yml` (the per-item dispatch wrapper the
6
+ * advance tick starts), which the advance-lifecycle and intake workflows call.
7
+ *
8
+ * The workflow text lives in `dorfl-item-template.ts`; this file is the thin
9
+ * registry-wiring shim.
10
+ */
11
+ import { registerCapability } from '../install-ci-core.js';
12
+ import { ITEM_DISPATCH_WORKFLOW_PATH, ITEM_WORKFLOW_PATH, generateItemDispatchWorkflow, generateItemWorkflow, } from '../dorfl-item-template.js';
13
+ registerCapability({
14
+ id: 'dorfl-item',
15
+ label: 'Run each CI item as lock, agent and apply jobs (the per-item workflow the advance tick and intake call)',
16
+ emit(config) {
17
+ return [
18
+ { path: ITEM_WORKFLOW_PATH, content: generateItemWorkflow(config) },
19
+ {
20
+ path: ITEM_DISPATCH_WORKFLOW_PATH,
21
+ content: generateItemDispatchWorkflow(config),
22
+ },
23
+ ];
24
+ },
25
+ });
26
+ //# sourceMappingURL=dorfl-item.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dorfl-item.js","sourceRoot":"","sources":["../../src/install-ci-capabilities/dorfl-item.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAC,kBAAkB,EAAC,MAAM,uBAAuB,CAAC;AACzD,OAAO,EACN,2BAA2B,EAC3B,kBAAkB,EAClB,4BAA4B,EAC5B,oBAAoB,GACpB,MAAM,2BAA2B,CAAC;AAEnC,kBAAkB,CAAC;IAClB,EAAE,EAAE,YAAY;IAChB,KAAK,EACJ,yGAAyG;IAC1G,IAAI,CAAC,MAAM;QACV,OAAO;YACN,EAAC,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,oBAAoB,CAAC,MAAM,CAAC,EAAC;YACjE;gBACC,IAAI,EAAE,2BAA2B;gBACjC,OAAO,EAAE,4BAA4B,CAAC,MAAM,CAAC;aAC7C;SACD,CAAC;IACH,CAAC;CACD,CAAC,CAAC"}
@@ -10,8 +10,7 @@
10
10
  * This module is the PROVIDER-AGNOSTIC half: the config model (`ProviderEntry` /
11
11
  * `AuthMode` / `CIConfigFile`), the `models.json` builder, the secret-orchestration
12
12
  * LOGIC (which secrets, dedup, prompt-or-take-from-config), the `--export-config`
13
- * (+ `--include-secrets`) round-trip, the composite-setup-action + OAuth-refresh-
14
- * script generators, the `--fake` snapshot mechanism (write to `.fake/` instead of
13
+ * (+ `--include-secrets`) round-trip, the composite-setup-action generators, the `--fake` snapshot mechanism (write to `.fake/` instead of
15
14
  * `.github/`), and the capability-emitter REGISTRY seam. It imports NOTHING
16
15
  * GitHub-specific: the thin GitHub adapter (`github-ci.ts`) plugs into the
17
16
  * {@link CIProviderContext} seam, so a second provider could slot in WITHOUT
@@ -26,16 +25,26 @@
26
25
  */
27
26
  import type { HarnessAdapter } from './config.js';
28
27
  /**
29
- * The two auth modes, mirroring whitesmith:
30
- * - `models-json` (DEFAULT): one GitHub secret per provider API key; the harness
31
- * `models.json` is generated inline and references the env var names. No
32
- * OAuth-refresh machinery, no `GH_PAT` — the conservative default.
33
- * - `auth-json`: a single `PI_AUTH_JSON` secret + a `GH_PAT` for OAuth-token
34
- * refresh + an OAuth-refresh script (the `pi-mono#2743` workaround, the SINGLE
35
- * CI→repo mutation in the whole design). The known SHARP EDGE; default AWAY
36
- * from it.
28
+ * The auth mode. `models-json` is the ONLY mode: one GitHub secret per provider
29
+ * API key; the harness `models.json` is generated inline and references the env
30
+ * vars (`$NAME`). Credential rotation (e.g. OAuth) is NOT done in CI: point a
31
+ * provider's `baseUrl` at a proxy that rotates credentials outside GitHub.
32
+ *
33
+ * The former `auth-json` mode (a `PI_AUTH_JSON` secret + an OAuth-refresh
34
+ * script that wrote the rotated token back with a write-capable `GH_PAT`) was
35
+ * REMOVED: its refresh needed a write token in the agent job, which ADR
36
+ * `ci-agent-job-holds-no-write-token` forbids, and without the refresh the
37
+ * OAuth token expires within hours. A config still naming it is refused by
38
+ * {@link loadCIConfigFile} with {@link AUTH_JSON_REMOVED_MESSAGE}. The type
39
+ * (and the `authMode` config key) is kept so existing `models-json` configs
40
+ * still parse and export unchanged.
41
+ */
42
+ export type AuthMode = 'models-json';
43
+ /**
44
+ * The refusal a config naming the removed `auth-json` mode gets: it says the
45
+ * mode is gone and names the replacement (`models-json` + a proxy `baseUrl`).
37
46
  */
38
- export type AuthMode = 'auth-json' | 'models-json';
47
+ export declare const AUTH_JSON_REMOVED_MESSAGE: string;
39
48
  /**
40
49
  * Where the composite setup action gets the `dorfl` CLI from:
41
50
  * - `registry` (default): `npm install -g dorfl` — the published CLI,
@@ -76,7 +85,7 @@ export interface ProviderEntry {
76
85
  export interface CIConfigFile {
77
86
  /** The auth mode (`models-json` default). */
78
87
  authMode: AuthMode;
79
- /** The configured providers (empty for `auth-json` mode). */
88
+ /** The configured providers (non-empty). */
80
89
  providers: ProviderEntry[];
81
90
  /** The default provider name. */
82
91
  defaultProvider: string;
@@ -172,6 +181,19 @@ export declare const DEFAULT_HARNESS: HarnessAdapter;
172
181
  export declare const DEFAULT_MAX_PARALLEL = 2;
173
182
  /** The default install source: the published CLI via `npm install -g`. */
174
183
  export declare const DEFAULT_INSTALL_SOURCE: InstallSource;
184
+ /**
185
+ * A repository's GitHub Actions workflow permissions, as
186
+ * `GET /repos/{owner}/{repo}/actions/permissions/workflow` answers them (the
187
+ * same two fields the PUT accepts). `defaultWorkflowPermissions` is `read` or
188
+ * `write` on GitHub; typed as a string so an unexpected value is carried
189
+ * through untouched rather than rewritten.
190
+ */
191
+ export interface ActionsWorkflowPermissions {
192
+ /** The GITHUB_TOKEN's default scope (`read` / `write`); preserved on set. */
193
+ defaultWorkflowPermissions: string;
194
+ /** "Allow GitHub Actions to create and approve pull requests". */
195
+ canApprovePullRequestReviews: boolean;
196
+ }
175
197
  /**
176
198
  * The thin CI-provider seam (whitesmith's proven `GitHubCIContext` shape,
177
199
  * generalised so a second provider could slot in without touching the core). A
@@ -252,6 +274,21 @@ export interface CIProviderContext {
252
274
  * GitHub provider. Throws on failure (caller catches + logs).
253
275
  */
254
276
  setBranchRuleset?(ruleset: unknown): Promise<void>;
277
+ /**
278
+ * OPTIONALLY read the repo's Actions workflow permissions (GitHub:
279
+ * `GET /repos/{owner}/{repo}/actions/permissions/workflow`), whose
280
+ * `can_approve_pull_request_reviews` is the "Allow GitHub Actions to create
281
+ * and approve pull requests" setting propose mode needs. Returns `undefined`
282
+ * when the read fails. Absent on a provider with no such setting.
283
+ */
284
+ getActionsWorkflowPermissions?(): Promise<ActionsWorkflowPermissions | undefined>;
285
+ /**
286
+ * OPTIONALLY set the repo's Actions workflow permissions (GitHub:
287
+ * `PUT /repos/{owner}/{repo}/actions/permissions/workflow`). A field left
288
+ * `undefined` is not sent, so GitHub keeps its current value. Throws on
289
+ * failure (caller catches + logs). Absent on a provider with no such setting.
290
+ */
291
+ setActionsWorkflowPermissions?(permissions: Partial<ActionsWorkflowPermissions>): Promise<void>;
255
292
  /**
256
293
  * OPTIONALLY render the user's project-setup payload (the value of
257
294
  * {@link CIConfigFile.projectSetup}[providerId]) to the NATIVE-SYNTAX
@@ -322,30 +359,41 @@ export declare function resolveCapabilitiesDir(override?: string): string;
322
359
  export declare function loadCapabilityRegistry(dir?: string): Promise<CapabilityEmitter[]>;
323
360
  /**
324
361
  * Build the harness `models.json` object from the providers. Built-in providers
325
- * (`anthropic`/`openai`) get `{apiKey: <ENV_VAR>}` (the harness resolves the env
326
- * var at runtime); a custom provider carries its `baseUrl`/`api`/`models`/`compat`.
362
+ * (`anthropic`/`openai`) get `{apiKey: "$<ENV_VAR>"}` (the harness resolves the
363
+ * env var at runtime); a custom provider carries its `baseUrl`/`api`/`models`/`compat`.
327
364
  * Mirrors whitesmith's `buildModelsJson`.
365
+ *
366
+ * The `apiKey` is an env-var REFERENCE (see {@link modelsJsonEnvRef}), never the
367
+ * bare env-var name: pi treats a bare value as a LITERAL key.
328
368
  */
329
369
  export declare function buildModelsJson(providers: ProviderEntry[]): {
330
370
  providers: Record<string, unknown>;
331
371
  };
372
+ /**
373
+ * The `models.json` config value that makes the pi harness read `envVarName`
374
+ * from the environment: `"$NAME"`. The pinned harness
375
+ * (`@earendil-works/pi-coding-agent`, `dist/core/resolve-config-value.js`)
376
+ * resolves a config value as a shell command when it starts with `!`, as an env
377
+ * var when it is `$NAME` / `${NAME}`, and as a LITERAL otherwise. Writing the bare
378
+ * name therefore sent the string `ANTHROPIC_API_KEY` as the token (`401
379
+ * Unauthorized` on every CI launch).
380
+ */
381
+ export declare function modelsJsonEnvRef(envVarName: string): string;
332
382
  /**
333
383
  * The DEDUPLICATED set of secret env-var names the config requires, in first-seen
334
- * order. For `models-json` mode it is one per distinct provider `apiKeyEnvVar`;
335
- * for `auth-json` mode it is the fixed `PI_AUTH_JSON` + `GH_PAT` pair (the sharp
336
- * edge). This is the pure secret-orchestration LOGIC the adapter's setter
384
+ * order: one per distinct provider `apiKeyEnvVar`. This is the pure secret-orchestration LOGIC the adapter's setter
337
385
  * consumes — which secrets, deduped — separated from any provider I/O.
338
386
  */
339
387
  export declare function requiredSecretNames(config: ResolvedCIConfig): string[];
340
388
  /**
341
389
  * The GitHub secret the propose/merge CI legs read as `GH_TOKEN` to open PRs
342
- * under a CHOSEN identity (a PAT / App token). It is the PR-IDENTITY token, a
343
- * distinct purpose from `auth-json` mode's `GH_PAT` (which exists only to rotate
344
- * the OAuth `PI_AUTH_JSON` secret). The generated workflows reference it as
390
+ * under a CHOSEN identity (a PAT / App token). The generated workflows reference it as
345
391
  * `${{ secrets.DORFL_GH_TOKEN || secrets.GITHUB_TOKEN }}` so it is
346
392
  * OPTIONAL: unset ⇒ the legs fall back to the built-in `GITHUB_TOKEN` (PRs are
347
- * `github-actions[bot]` and do not trigger downstream `on: pull_request`
348
- * workflows); set ⇒ PRs carry the token's identity and DO trigger them.
393
+ * `github-actions[bot]`, and GitHub holds their `on: pull_request` runs in
394
+ * `action_required` until someone approves them); set ⇒ PRs carry the token's
395
+ * identity and trigger those workflows on their own. `intake.yml` never passes
396
+ * it, so intake PRs always need the approval (`docs/ci/README.md`).
349
397
  */
350
398
  export declare const PR_IDENTITY_SECRET_NAME = "DORFL_GH_TOKEN";
351
399
  /**
@@ -367,12 +415,20 @@ export declare function optionalSecretNames(config: ResolvedCIConfig): string[];
367
415
  * entry). Each entry maps the action input (named identically to the secret) to
368
416
  * `${{ secrets.<NAME> }}`.
369
417
  *
370
- * Empty string when there are no provider keys (auth-json mode, or no providers),
418
+ * Empty string when there are no provider keys (no providers),
371
419
  * so the `uses:` line is emitted bare and unchanged. This is the SINGLE place the
372
420
  * provider→`with:` shape lives, shared by every capability workflow generator, so
373
421
  * no template re-derives it.
374
422
  */
375
423
  export declare function providerSecretsWithBlock(config: ResolvedCIConfig): string;
424
+ /**
425
+ * The provider API key secrets the AGENT-running jobs forward to the setup
426
+ * action: one per distinct provider key (the same set as
427
+ * {@link requiredSecretNames}). The split item workflow declares exactly these (plus
428
+ * {@link PR_IDENTITY_SECRET_NAME}) as its `workflow_call` secrets, and hands
429
+ * them to its agent job only.
430
+ */
431
+ export declare function providerSecretNames(config: ResolvedCIConfig): string[];
376
432
  /** The outcome of orchestrating one secret through the provider seam. */
377
433
  export interface SecretSetResult {
378
434
  /** The secret env-var name. */
@@ -460,6 +516,42 @@ export declare const PI_HARNESS_PACKAGE = "@earendil-works/pi-coding-agent";
460
516
  * `node-version: '22'` satisfies (setup-node resolves the latest 22.x).
461
517
  */
462
518
  export declare const PI_HARNESS_VERSION = "0.80.6";
519
+ /**
520
+ * The `pi` packages the harness LOADS besides itself, each pinned to an exact
521
+ * version that is known to load with {@link PI_HARNESS_VERSION}.
522
+ *
523
+ * `pi-coding-agent` declares its sibling packages with a caret range
524
+ * (`@earendil-works/pi-ai: ^0.80.6`), which on a `0.x` version floats within
525
+ * the minor. `pi-ai@0.80.10` removed the `getOAuthApiKey` export that
526
+ * `pi-coding-agent@0.80.6` imports, so a resolver that honours the caret kills
527
+ * `pi` on start. npm happens to be protected by the `npm-shrinkwrap.json` the
528
+ * package publishes; pnpm ignores that file and was broken. Pinning the family
529
+ * explicitly (as npm `overrides`, see {@link piHarnessManifest}) makes the
530
+ * install reproducible whatever the resolver.
531
+ *
532
+ * The set is `pi-coding-agent`'s own `@earendil-works/*` dependencies plus
533
+ * theirs (`npm view @earendil-works/pi-coding-agent@<v> dependencies`,
534
+ * recursively): at 0.80.6 that is pi-ai, pi-agent-core (which depends on pi-ai)
535
+ * and pi-tui. Re-derive it on every {@link PI_HARNESS_VERSION} bump: a newer
536
+ * harness may add a package (0.87 adds `@earendil-works/chord`).
537
+ */
538
+ export declare const PI_HARNESS_PINNED_DEPENDENCIES: Readonly<Record<string, string>>;
539
+ /**
540
+ * The throwaway `package.json` the setup action installs the harness from: the
541
+ * harness at {@link PI_HARNESS_VERSION} as the only dependency, and every pi
542
+ * package it loads forced to its exact pin through npm `overrides`.
543
+ *
544
+ * A project-local install (not `npm install -g`) because `overrides` only apply
545
+ * to the ROOT project, and a global install makes each package its own root. The
546
+ * same file is used in `registry` and `workspace` mode: pnpm 11 also isolates
547
+ * every global package, so listing the pins next to the harness in
548
+ * `pnpm add -g` would not constrain the harness's own tree either.
549
+ */
550
+ export declare function piHarnessManifest(): {
551
+ private: true;
552
+ dependencies: Record<string, string>;
553
+ overrides: Record<string, string>;
554
+ };
463
555
  /**
464
556
  * The version of THIS dorfl package, read at runtime from its own
465
557
  * `package.json` (the single source changesets bumps on release). The composite
@@ -480,14 +572,11 @@ export declare function dorflPackageVersion(): string;
480
572
  * `uses: ./.github/actions/dorfl-setup`. The advance-loop seed template
481
573
  * already references this exact action name + path (`docs/ci/README.md`).
482
574
  *
483
- * The auth step branches on the mode: `models-json` writes a generated
484
- * `~/.pi/agent/models.json` inline (the conservative default) AND exports each
575
+ * The auth step writes a generated `~/.pi/agent/models.json` inline AND exports each
485
576
  * configured provider's API key from a same-named ACTION INPUT to `$GITHUB_ENV`,
486
577
  * so the agent step (`pi`) can resolve the env var `models.json` references; the
487
578
  * workflow passes the secrets ONCE via `with:` on the `uses:` line (no
488
- * per-step / per-capability provider enumeration). `auth-json` writes
489
- * `~/.pi/agent/auth.json` from `$PI_AUTH_JSON` + runs the OAuth-refresh script
490
- * (the sharp edge). Deterministic: the same config produces byte-identical output.
579
+ * per-step / per-capability provider enumeration). Deterministic: the same config produces byte-identical output.
491
580
  */
492
581
  export declare function generateSetupAction(config: ResolvedCIConfig,
493
582
  /**
@@ -499,17 +588,39 @@ export declare function generateSetupAction(config: ResolvedCIConfig,
499
588
  * baseline (the load-bearing absent-⇒-identical contract).
500
589
  */
501
590
  projectSetupSteps?: string): string;
502
- /**
503
- * The OAuth-refresh script emitted ONLY in `auth-json` mode (whitesmith's
504
- * `pi-mono#2743` workaround): refreshes the Anthropic OAuth token in
505
- * `~/.pi/agent/auth.json` before the agent runs, then writes the rotated token
506
- * BACK via `gh secret set PI_AUTH_JSON` (the single CI→repo mutation, needing a
507
- * `GH_PAT`). This is the documented SHARP EDGE; `models-json` mode avoids it.
591
+ /** The local path a workflow step `uses:` for the agent-role setup action. */
592
+ export declare const SETUP_ACTION_USES = "./.github/actions/dorfl-setup";
593
+ /** The local path a workflow step `uses:` for the writer-role setup action. */
594
+ export declare const WRITER_SETUP_ACTION_USES = "./.github/actions/dorfl-setup-writer";
595
+ /**
596
+ * Generate the WRITER-ROLE composite setup action (`dorfl-setup-writer`, spec
597
+ * `ci-agent-job-without-write-token` §9, ADR
598
+ * `ci-agent-job-holds-no-write-token`; task `ci-split-generate-workflows`).
599
+ *
600
+ * The jobs that hold a write token and run no agent (the split item
601
+ * workflow's lock and apply jobs, `reap-merged-branches`, `close-job`, and the
602
+ * read-only `enumerate`) install Node and dorfl ONLY: no harness, no provider
603
+ * key, no `models.json`, no project-setup hook, no install of the project's
604
+ * dependencies, and no Actions cache. In `registry` mode the dorfl install runs
605
+ * from `$RUNNER_TEMP`, outside the checkout, with `--ignore-scripts`, so a
606
+ * repository `.npmrc` cannot redirect the registry and no install script runs.
607
+ *
608
+ * In `workspace` mode (dorfl's own repository) dorfl is built from source
609
+ * (decision 8): the tree of `source-ref` (default the checkout's `HEAD`) is
610
+ * exported with `git archive` into `$RUNNER_TEMP` and built there with
611
+ * `--ignore-scripts`. In merge mode that is code an earlier agent landed on
612
+ * `main`, which is the trust merge mode already implies.
613
+ *
614
+ * It is a SIBLING action rather than a `role` input on `dorfl-setup`: the
615
+ * project-setup hook is an opaque fragment spliced first into `dorfl-setup`
616
+ * (ADR `install-ci-project-provisioning-native-passthrough`), and a composite
617
+ * action cannot skip an opaque block of steps by input. `dorfl-setup` stays the
618
+ * agent role, byte for byte.
508
619
  */
509
- export declare const REFRESH_OAUTH_SCRIPT = "#!/usr/bin/env node\n/**\n * Refresh OAuth tokens in the agent's auth.json before it runs.\n *\n * Workaround for https://github.com/badlogic/pi-mono/issues/2743.\n * After refreshing, updates the PI_AUTH_JSON GitHub secret so the next run has\n * the latest rotated refresh token (requires GH_PAT with repo scope). This is the\n * known SHARP EDGE of auth-json mode; models-json mode avoids it entirely.\n *\n * Remove this script once the upstream fix is released.\n */\nimport { readFileSync, writeFileSync, chmodSync } from \"fs\";\nimport { join } from \"path\";\nimport { execSync } from \"child_process\";\n\nconst ANTHROPIC_CLIENT_ID = \"9d1c250a-e61b-44d9-88ed-5944d1962f5e\";\nconst ANTHROPIC_TOKEN_URL = \"https://platform.claude.com/v1/oauth/token\";\n\nconst authPath = join(process.env.HOME, \".pi\", \"agent\", \"auth.json\");\nconst auth = JSON.parse(readFileSync(authPath, \"utf-8\"));\nconst cred = auth.anthropic;\n\nif (!cred || cred.type !== \"oauth\") {\n console.log(\"No OAuth credentials for anthropic, skipping refresh\");\n process.exit(0);\n}\n\nif (Date.now() < cred.expires) {\n console.log(\"Token still valid until\", new Date(cred.expires).toISOString());\n process.exit(0);\n}\n\nconsole.log(\n \"Token expired at\",\n new Date(cred.expires).toISOString(),\n \"- refreshing...\"\n);\n\nconst response = await fetch(ANTHROPIC_TOKEN_URL, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/x-www-form-urlencoded\",\n Accept: \"application/json\",\n },\n body: new URLSearchParams({\n grant_type: \"refresh_token\",\n client_id: ANTHROPIC_CLIENT_ID,\n refresh_token: cred.refresh,\n }).toString(),\n signal: AbortSignal.timeout(30_000),\n});\n\nconst data = await response.json();\n\nif (!response.ok) {\n console.error(\"Refresh failed:\", response.status, JSON.stringify(data));\n process.exit(1);\n}\n\nauth.anthropic = {\n type: \"oauth\",\n refresh: data.refresh_token,\n access: data.access_token,\n expires: Date.now() + data.expires_in * 1000 - 5 * 60 * 1000,\n};\n\nwriteFileSync(authPath, JSON.stringify(auth, null, 2));\nchmodSync(authPath, 0o600);\nconsole.log(\n \"Token refreshed, new expiry:\",\n new Date(auth.anthropic.expires).toISOString()\n);\n\n// Update the GitHub secret so the next run has the latest refresh token.\nconst repo = process.env.GITHUB_REPOSITORY;\nconst token = process.env.GH_PAT;\nif (repo && token) {\n try {\n execSync(`gh secret set PI_AUTH_JSON --repo \"${repo}\"`, {\n input: JSON.stringify(auth),\n env: { ...process.env, GH_TOKEN: token },\n stdio: [\"pipe\", \"pipe\", \"pipe\"],\n });\n console.log(\"PI_AUTH_JSON secret updated\");\n } catch (err) {\n console.warn(\"Failed to update secret (non-fatal):\", err.stderr?.toString() || err.message);\n }\n} else {\n console.log(\"Skipping secret update (no GH_PAT or GITHUB_REPOSITORY)\");\n}\n";
620
+ export declare function generateWriterSetupAction(config: ResolvedCIConfig): string;
510
621
  /**
511
- * The setup ARTIFACTS this task generates: the composite setup action + (in
512
- * `auth-json` mode) the OAuth-refresh script, plus any selected capabilities'
622
+ * The setup ARTIFACTS this task generates: the composite setup actions, plus
623
+ * any selected capabilities'
513
624
  * workflow files. This task emits NO capability workflow itself (those are the
514
625
  * sibling tasks); `capabilities` defaults to none.
515
626
  */
@@ -534,6 +645,13 @@ export declare function outputBaseName(fake: boolean): string;
534
645
  * Write the artifacts under `<workDir>/<base>/` (base = `.fake` when `fake`, else
535
646
  * `.github`). Returns the repo-relative paths actually written. Pure filesystem
536
647
  * I/O — no secrets, no git. Creates parent dirs as needed.
648
+ *
649
+ * PIN PRESERVATION. Before writing a YAML artifact, any `uses:` of an action the
650
+ * repository's EXISTING `.github/<path>` already pins to a full commit SHA keeps
651
+ * that reference and its trailing comment (see {@link preserveExistingPins}),
652
+ * so a Dependabot bump survives regeneration and a pin is never swapped for a
653
+ * tag. The existing file is always read from `.github/`, also in `--fake` mode,
654
+ * so the `.fake/` preview shows what a real run would write.
537
655
  */
538
656
  export declare function writeArtifacts(options: {
539
657
  workDir: string;
@@ -1 +1 @@
1
- {"version":3,"file":"install-ci-core.d.ts","sourceRoot":"","sources":["../src/install-ci-core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"install-ci-core.d.ts","sourceRoot":"","sources":["../src/install-ci-core.ts"],"names":[],"mappings":"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"}