silvermoon 0.3.0-rc.2 → 0.4.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 (812) hide show
  1. package/README.md +28 -28
  2. package/README.zh-CN.md +26 -24
  3. package/dist/bin/build-npm-tarball.d.ts +28 -0
  4. package/dist/bin/build-npm-tarball.d.ts.map +1 -0
  5. package/dist/bin/build-npm-tarball.js +200 -0
  6. package/dist/bin/build-npm-tarball.js.map +1 -0
  7. package/dist/bin/check-pack.d.ts +2 -0
  8. package/dist/bin/check-pack.d.ts.map +1 -0
  9. package/dist/bin/check-pack.js +421 -0
  10. package/dist/bin/check-pack.js.map +1 -0
  11. package/dist/bin/ci-package-risk.d.ts +19 -0
  12. package/dist/bin/ci-package-risk.d.ts.map +1 -0
  13. package/dist/bin/ci-package-risk.js +78 -0
  14. package/dist/bin/ci-package-risk.js.map +1 -0
  15. package/dist/bin/generate-npm-readme.d.ts +7 -0
  16. package/dist/bin/generate-npm-readme.d.ts.map +1 -0
  17. package/dist/bin/generate-npm-readme.js +232 -0
  18. package/dist/bin/generate-npm-readme.js.map +1 -0
  19. package/dist/bin/migrate-v1-to-v2.d.ts +3 -0
  20. package/dist/bin/migrate-v1-to-v2.d.ts.map +1 -0
  21. package/dist/bin/migrate-v1-to-v2.js +25 -0
  22. package/dist/bin/migrate-v1-to-v2.js.map +1 -0
  23. package/dist/bin/prepare-npm-release.d.ts +46 -0
  24. package/dist/bin/prepare-npm-release.d.ts.map +1 -0
  25. package/dist/bin/prepare-npm-release.js +210 -0
  26. package/dist/bin/prepare-npm-release.js.map +1 -0
  27. package/dist/bin/pure-check.d.ts +15 -0
  28. package/dist/bin/pure-check.d.ts.map +1 -0
  29. package/dist/bin/pure-check.js +448 -0
  30. package/dist/bin/pure-check.js.map +1 -0
  31. package/dist/bin/run-checks.d.ts +34 -0
  32. package/dist/bin/run-checks.d.ts.map +1 -0
  33. package/dist/bin/run-checks.js +149 -0
  34. package/dist/bin/run-checks.js.map +1 -0
  35. package/dist/bin/silvermoon.d.ts +76 -0
  36. package/dist/bin/silvermoon.d.ts.map +1 -0
  37. package/dist/bin/silvermoon.js +401 -0
  38. package/dist/bin/silvermoon.js.map +1 -0
  39. package/dist/bin/sync-skills.d.ts +2 -0
  40. package/dist/bin/sync-skills.d.ts.map +1 -0
  41. package/dist/bin/sync-skills.js +78 -0
  42. package/dist/bin/sync-skills.js.map +1 -0
  43. package/dist/bin/verify-npm-release.d.ts +55 -0
  44. package/dist/bin/verify-npm-release.d.ts.map +1 -0
  45. package/dist/bin/verify-npm-release.js +418 -0
  46. package/dist/bin/verify-npm-release.js.map +1 -0
  47. package/dist/src/business/agent-copilot.d.ts +82 -0
  48. package/dist/src/business/agent-copilot.d.ts.map +1 -0
  49. package/dist/src/business/agent-copilot.js +330 -0
  50. package/dist/src/business/agent-copilot.js.map +1 -0
  51. package/dist/src/business/agent-project-registry.d.ts +22 -0
  52. package/dist/src/business/agent-project-registry.d.ts.map +1 -0
  53. package/dist/src/business/agent-project-registry.js +239 -0
  54. package/dist/src/business/agent-project-registry.js.map +1 -0
  55. package/dist/src/business/agent-project-runtime.d.ts +37 -0
  56. package/dist/src/business/agent-project-runtime.d.ts.map +1 -0
  57. package/dist/src/business/agent-project-runtime.js +198 -0
  58. package/dist/src/business/agent-project-runtime.js.map +1 -0
  59. package/dist/src/business/append-event-history.d.ts +21 -0
  60. package/dist/src/business/append-event-history.d.ts.map +1 -0
  61. package/dist/src/business/append-event-history.js +138 -0
  62. package/dist/src/business/append-event-history.js.map +1 -0
  63. package/dist/src/business/append-event.d.ts +140 -0
  64. package/dist/src/business/append-event.d.ts.map +1 -0
  65. package/dist/src/business/append-event.js +292 -0
  66. package/dist/src/business/append-event.js.map +1 -0
  67. package/dist/src/business/check-repository.d.ts +109 -0
  68. package/dist/src/business/check-repository.d.ts.map +1 -0
  69. package/dist/src/business/check-repository.js +379 -0
  70. package/dist/src/business/check-repository.js.map +1 -0
  71. package/dist/src/business/create-idea.d.ts +100 -0
  72. package/dist/src/business/create-idea.d.ts.map +1 -0
  73. package/dist/src/business/create-idea.js +224 -0
  74. package/dist/src/business/create-idea.js.map +1 -0
  75. package/dist/src/business/event-command.d.ts +111 -0
  76. package/dist/src/business/event-command.d.ts.map +1 -0
  77. package/dist/src/business/event-command.js +239 -0
  78. package/dist/src/business/event-command.js.map +1 -0
  79. package/dist/src/business/index.d.ts +7 -0
  80. package/dist/src/business/index.d.ts.map +1 -0
  81. package/dist/src/business/index.js +7 -0
  82. package/dist/src/business/index.js.map +1 -0
  83. package/dist/src/business/list-ideas.d.ts +97 -0
  84. package/dist/src/business/list-ideas.d.ts.map +1 -0
  85. package/dist/src/business/list-ideas.js +177 -0
  86. package/dist/src/business/list-ideas.js.map +1 -0
  87. package/dist/src/business/migrate-v1-to-v2.d.ts +23 -0
  88. package/dist/src/business/migrate-v1-to-v2.d.ts.map +1 -0
  89. package/dist/src/business/migrate-v1-to-v2.js +152 -0
  90. package/dist/src/business/migrate-v1-to-v2.js.map +1 -0
  91. package/dist/src/business/replay-events.d.ts +20 -0
  92. package/dist/src/business/replay-events.d.ts.map +1 -0
  93. package/dist/src/business/replay-events.js +27 -0
  94. package/dist/src/business/replay-events.js.map +1 -0
  95. package/dist/src/business/schema-migration.d.ts +19 -0
  96. package/dist/src/business/schema-migration.d.ts.map +1 -0
  97. package/dist/src/business/schema-migration.js +23 -0
  98. package/dist/src/business/schema-migration.js.map +1 -0
  99. package/dist/src/business/shared/assess-idea-creation-readiness.d.ts +3 -0
  100. package/dist/src/business/shared/assess-idea-creation-readiness.d.ts.map +1 -0
  101. package/dist/src/business/shared/assess-idea-creation-readiness.js +9 -0
  102. package/dist/src/business/shared/assess-idea-creation-readiness.js.map +1 -0
  103. package/dist/src/business/shared/assess-repository-readiness-with.d.ts +18 -0
  104. package/dist/src/business/shared/assess-repository-readiness-with.d.ts.map +1 -0
  105. package/dist/src/business/shared/assess-repository-readiness-with.js +125 -0
  106. package/dist/src/business/shared/assess-repository-readiness-with.js.map +1 -0
  107. package/dist/src/business/shared/assess-repository-readiness.d.ts +3 -0
  108. package/dist/src/business/shared/assess-repository-readiness.d.ts.map +1 -0
  109. package/dist/src/business/shared/assess-repository-readiness.js +6 -0
  110. package/dist/src/business/shared/assess-repository-readiness.js.map +1 -0
  111. package/dist/src/business/shared/business-types.d.ts +151 -0
  112. package/dist/src/business/shared/business-types.d.ts.map +1 -0
  113. package/dist/src/business/shared/business-types.js +83 -0
  114. package/dist/src/business/shared/business-types.js.map +1 -0
  115. package/dist/src/business/shared/evaluate-local-readiness.d.ts +9 -0
  116. package/dist/src/business/shared/evaluate-local-readiness.d.ts.map +1 -0
  117. package/dist/src/business/shared/evaluate-local-readiness.js +97 -0
  118. package/dist/src/business/shared/evaluate-local-readiness.js.map +1 -0
  119. package/dist/src/business/shared/evaluate-primary-relation.d.ts +12 -0
  120. package/dist/src/business/shared/evaluate-primary-relation.d.ts.map +1 -0
  121. package/dist/src/business/shared/evaluate-primary-relation.js +40 -0
  122. package/dist/src/business/shared/evaluate-primary-relation.js.map +1 -0
  123. package/dist/src/business/shared/idea-layout.d.ts +55 -0
  124. package/dist/src/business/shared/idea-layout.d.ts.map +1 -0
  125. package/dist/src/business/shared/idea-layout.js +434 -0
  126. package/dist/src/business/shared/idea-layout.js.map +1 -0
  127. package/dist/src/business/shared/index.d.ts +18 -0
  128. package/dist/src/business/shared/index.d.ts.map +1 -0
  129. package/dist/src/business/shared/index.js +17 -0
  130. package/dist/src/business/shared/index.js.map +1 -0
  131. package/dist/src/business/shared/inspect-candidate.d.ts +5 -0
  132. package/dist/src/business/shared/inspect-candidate.d.ts.map +1 -0
  133. package/dist/src/business/shared/inspect-candidate.js +57 -0
  134. package/dist/src/business/shared/inspect-candidate.js.map +1 -0
  135. package/dist/src/business/shared/metadata-failure-observation.d.ts +21 -0
  136. package/dist/src/business/shared/metadata-failure-observation.d.ts.map +1 -0
  137. package/dist/src/business/shared/metadata-failure-observation.js +30 -0
  138. package/dist/src/business/shared/metadata-failure-observation.js.map +1 -0
  139. package/dist/src/business/shared/observe-device.d.ts +150 -0
  140. package/dist/src/business/shared/observe-device.d.ts.map +1 -0
  141. package/dist/src/business/shared/observe-device.js +71 -0
  142. package/dist/src/business/shared/observe-device.js.map +1 -0
  143. package/dist/src/business/shared/observe-idea.d.ts +14 -0
  144. package/dist/src/business/shared/observe-idea.d.ts.map +1 -0
  145. package/dist/src/business/shared/observe-idea.js +14 -0
  146. package/dist/src/business/shared/observe-idea.js.map +1 -0
  147. package/dist/src/business/shared/observe-project.d.ts +39 -0
  148. package/dist/src/business/shared/observe-project.d.ts.map +1 -0
  149. package/dist/src/business/shared/observe-project.js +11 -0
  150. package/dist/src/business/shared/observe-project.js.map +1 -0
  151. package/dist/src/business/shared/observe-snapshot.d.ts +35 -0
  152. package/dist/src/business/shared/observe-snapshot.d.ts.map +1 -0
  153. package/dist/src/business/shared/observe-snapshot.js +518 -0
  154. package/dist/src/business/shared/observe-snapshot.js.map +1 -0
  155. package/dist/src/business/shared/read-idea-inventory-item.d.ts +13 -0
  156. package/dist/src/business/shared/read-idea-inventory-item.d.ts.map +1 -0
  157. package/dist/src/business/shared/read-idea-inventory-item.js +18 -0
  158. package/dist/src/business/shared/read-idea-inventory-item.js.map +1 -0
  159. package/dist/src/business/shared/resolve-idea.d.ts +7 -0
  160. package/dist/src/business/shared/resolve-idea.d.ts.map +1 -0
  161. package/dist/src/business/shared/resolve-idea.js +14 -0
  162. package/dist/src/business/shared/resolve-idea.js.map +1 -0
  163. package/dist/src/business/shared/with-observation-language.d.ts +3 -0
  164. package/dist/src/business/shared/with-observation-language.d.ts.map +1 -0
  165. package/dist/src/business/shared/with-observation-language.js +20 -0
  166. package/dist/src/business/shared/with-observation-language.js.map +1 -0
  167. package/dist/src/business/whats-next.d.ts +94 -0
  168. package/dist/src/business/whats-next.d.ts.map +1 -0
  169. package/dist/src/business/whats-next.js +208 -0
  170. package/dist/src/business/whats-next.js.map +1 -0
  171. package/dist/src/foundation/command-message/index.d.ts +3 -0
  172. package/dist/src/foundation/command-message/index.d.ts.map +1 -0
  173. package/dist/src/foundation/command-message/index.js +3 -0
  174. package/dist/src/foundation/command-message/index.js.map +1 -0
  175. package/dist/src/foundation/command-message/observation.d.ts +223 -0
  176. package/dist/src/foundation/command-message/observation.d.ts.map +1 -0
  177. package/dist/src/foundation/command-message/observation.js +364 -0
  178. package/dist/src/foundation/command-message/observation.js.map +1 -0
  179. package/dist/src/foundation/command-message/runtime.d.ts +214 -0
  180. package/dist/src/foundation/command-message/runtime.d.ts.map +1 -0
  181. package/dist/src/foundation/command-message/runtime.js +215 -0
  182. package/dist/src/foundation/command-message/runtime.js.map +1 -0
  183. package/dist/src/foundation/coordinates/index.d.ts +3 -0
  184. package/dist/src/foundation/coordinates/index.d.ts.map +1 -0
  185. package/dist/src/foundation/coordinates/index.js +3 -0
  186. package/dist/src/foundation/coordinates/index.js.map +1 -0
  187. package/dist/src/foundation/coordinates/layout.d.ts +27 -0
  188. package/dist/src/foundation/coordinates/layout.d.ts.map +1 -0
  189. package/dist/src/foundation/coordinates/layout.js +41 -0
  190. package/dist/src/foundation/coordinates/layout.js.map +1 -0
  191. package/dist/src/foundation/coordinates/repository.d.ts +16 -0
  192. package/dist/src/foundation/coordinates/repository.d.ts.map +1 -0
  193. package/dist/src/foundation/coordinates/repository.js +75 -0
  194. package/dist/src/foundation/coordinates/repository.js.map +1 -0
  195. package/dist/src/foundation/device-config/index.d.ts +2 -0
  196. package/dist/src/foundation/device-config/index.d.ts.map +1 -0
  197. package/dist/src/foundation/device-config/index.js +2 -0
  198. package/dist/src/foundation/device-config/index.js.map +1 -0
  199. package/dist/src/foundation/device-config/user-config.d.ts +19 -0
  200. package/dist/src/foundation/device-config/user-config.d.ts.map +1 -0
  201. package/dist/src/foundation/device-config/user-config.js +94 -0
  202. package/dist/src/foundation/device-config/user-config.js.map +1 -0
  203. package/dist/src/foundation/event-codec/grammar.d.ts +172 -0
  204. package/dist/src/foundation/event-codec/grammar.d.ts.map +1 -0
  205. package/dist/src/foundation/event-codec/grammar.js +383 -0
  206. package/dist/src/foundation/event-codec/grammar.js.map +1 -0
  207. package/dist/src/foundation/event-codec/index.d.ts +3 -0
  208. package/dist/src/foundation/event-codec/index.d.ts.map +1 -0
  209. package/dist/src/foundation/event-codec/index.js +2 -0
  210. package/dist/src/foundation/event-codec/index.js.map +1 -0
  211. package/dist/src/foundation/event-cursor/cursor.d.ts +40 -0
  212. package/dist/src/foundation/event-cursor/cursor.d.ts.map +1 -0
  213. package/dist/src/foundation/event-cursor/cursor.js +42 -0
  214. package/dist/src/foundation/event-cursor/cursor.js.map +1 -0
  215. package/dist/src/foundation/event-cursor/index.d.ts +2 -0
  216. package/dist/src/foundation/event-cursor/index.d.ts.map +1 -0
  217. package/dist/src/foundation/event-cursor/index.js +2 -0
  218. package/dist/src/foundation/event-cursor/index.js.map +1 -0
  219. package/dist/src/foundation/event-history/digest.d.ts +2 -0
  220. package/dist/src/foundation/event-history/digest.d.ts.map +1 -0
  221. package/dist/src/foundation/event-history/digest.js +2 -0
  222. package/dist/src/foundation/event-history/digest.js.map +1 -0
  223. package/dist/src/foundation/event-history/history.d.ts +86 -0
  224. package/dist/src/foundation/event-history/history.d.ts.map +1 -0
  225. package/dist/src/foundation/event-history/history.js +481 -0
  226. package/dist/src/foundation/event-history/history.js.map +1 -0
  227. package/dist/src/foundation/event-history/index.d.ts +3 -0
  228. package/dist/src/foundation/event-history/index.d.ts.map +1 -0
  229. package/dist/src/foundation/event-history/index.js +3 -0
  230. package/dist/src/foundation/event-history/index.js.map +1 -0
  231. package/dist/src/foundation/event-reducer/index.d.ts +2 -0
  232. package/dist/src/foundation/event-reducer/index.d.ts.map +1 -0
  233. package/dist/src/foundation/event-reducer/index.js +2 -0
  234. package/dist/src/foundation/event-reducer/index.js.map +1 -0
  235. package/dist/src/foundation/event-reducer/policy.d.ts +69 -0
  236. package/dist/src/foundation/event-reducer/policy.d.ts.map +1 -0
  237. package/dist/src/foundation/event-reducer/policy.js +138 -0
  238. package/dist/src/foundation/event-reducer/policy.js.map +1 -0
  239. package/dist/src/foundation/event-store/digest.d.ts +11 -0
  240. package/dist/src/foundation/event-store/digest.d.ts.map +1 -0
  241. package/dist/src/foundation/event-store/digest.js +38 -0
  242. package/dist/src/foundation/event-store/digest.js.map +1 -0
  243. package/dist/src/foundation/event-store/index.d.ts +3 -0
  244. package/dist/src/foundation/event-store/index.d.ts.map +1 -0
  245. package/dist/src/foundation/event-store/index.js +3 -0
  246. package/dist/src/foundation/event-store/index.js.map +1 -0
  247. package/dist/src/foundation/event-store/storage.d.ts +50 -0
  248. package/dist/src/foundation/event-store/storage.d.ts.map +1 -0
  249. package/dist/src/foundation/event-store/storage.js +109 -0
  250. package/dist/src/foundation/event-store/storage.js.map +1 -0
  251. package/dist/src/foundation/git/derived-cache.d.ts +5 -0
  252. package/dist/src/foundation/git/derived-cache.d.ts.map +1 -0
  253. package/dist/src/foundation/git/derived-cache.js +117 -0
  254. package/dist/src/foundation/git/derived-cache.js.map +1 -0
  255. package/dist/src/foundation/git/git.d.ts +100 -0
  256. package/dist/src/foundation/git/git.d.ts.map +1 -0
  257. package/dist/src/foundation/git/git.js +677 -0
  258. package/dist/src/foundation/git/git.js.map +1 -0
  259. package/dist/src/foundation/git/index.d.ts +3 -0
  260. package/dist/src/foundation/git/index.d.ts.map +1 -0
  261. package/dist/src/foundation/git/index.js +3 -0
  262. package/dist/src/foundation/git/index.js.map +1 -0
  263. package/dist/src/foundation/guidance/guidance.d.ts +36 -0
  264. package/dist/src/foundation/guidance/guidance.d.ts.map +1 -0
  265. package/dist/src/foundation/guidance/guidance.js +198 -0
  266. package/dist/src/foundation/guidance/guidance.js.map +1 -0
  267. package/dist/src/foundation/guidance/index.d.ts +3 -0
  268. package/dist/src/foundation/guidance/index.d.ts.map +1 -0
  269. package/dist/src/foundation/guidance/index.js +3 -0
  270. package/dist/src/foundation/guidance/index.js.map +1 -0
  271. package/dist/src/foundation/guidance/rules.d.ts +36 -0
  272. package/dist/src/foundation/guidance/rules.d.ts.map +1 -0
  273. package/dist/src/foundation/guidance/rules.js +65 -0
  274. package/dist/src/foundation/guidance/rules.js.map +1 -0
  275. package/dist/src/foundation/idea-model/index.d.ts +3 -0
  276. package/dist/src/foundation/idea-model/index.d.ts.map +1 -0
  277. package/dist/src/foundation/idea-model/index.js +3 -0
  278. package/dist/src/foundation/idea-model/index.js.map +1 -0
  279. package/dist/src/foundation/idea-model/status.d.ts +28 -0
  280. package/dist/src/foundation/idea-model/status.d.ts.map +1 -0
  281. package/dist/src/foundation/idea-model/status.js +192 -0
  282. package/dist/src/foundation/idea-model/status.js.map +1 -0
  283. package/dist/src/foundation/idea-model/ulid.d.ts +6 -0
  284. package/dist/src/foundation/idea-model/ulid.d.ts.map +1 -0
  285. package/dist/src/foundation/idea-model/ulid.js +16 -0
  286. package/dist/src/foundation/idea-model/ulid.js.map +1 -0
  287. package/dist/src/foundation/idea-query/index.d.ts +3 -0
  288. package/dist/src/foundation/idea-query/index.d.ts.map +1 -0
  289. package/dist/src/foundation/idea-query/index.js +3 -0
  290. package/dist/src/foundation/idea-query/index.js.map +1 -0
  291. package/dist/src/foundation/idea-query/query.d.ts +13 -0
  292. package/dist/src/foundation/idea-query/query.d.ts.map +1 -0
  293. package/dist/src/foundation/idea-query/query.js +17 -0
  294. package/dist/src/foundation/idea-query/query.js.map +1 -0
  295. package/dist/src/foundation/idea-query/rules.d.ts +55 -0
  296. package/dist/src/foundation/idea-query/rules.d.ts.map +1 -0
  297. package/dist/src/foundation/idea-query/rules.js +223 -0
  298. package/dist/src/foundation/idea-query/rules.js.map +1 -0
  299. package/dist/src/foundation/idea-template/index.d.ts +2 -0
  300. package/dist/src/foundation/idea-template/index.d.ts.map +1 -0
  301. package/dist/src/foundation/idea-template/index.js +2 -0
  302. package/dist/src/foundation/idea-template/index.js.map +1 -0
  303. package/dist/src/foundation/idea-template/templates.d.ts +21 -0
  304. package/dist/src/foundation/idea-template/templates.d.ts.map +1 -0
  305. package/dist/src/foundation/idea-template/templates.js +265 -0
  306. package/dist/src/foundation/idea-template/templates.js.map +1 -0
  307. package/dist/src/foundation/installation/device-readiness.d.ts +94 -0
  308. package/dist/src/foundation/installation/device-readiness.d.ts.map +1 -0
  309. package/dist/src/foundation/installation/device-readiness.js +274 -0
  310. package/dist/src/foundation/installation/device-readiness.js.map +1 -0
  311. package/dist/src/foundation/installation/index.d.ts +4 -0
  312. package/dist/src/foundation/installation/index.d.ts.map +1 -0
  313. package/dist/src/foundation/installation/index.js +4 -0
  314. package/dist/src/foundation/installation/index.js.map +1 -0
  315. package/dist/src/foundation/installation/installation.d.ts +25 -0
  316. package/dist/src/foundation/installation/installation.d.ts.map +1 -0
  317. package/dist/src/foundation/installation/installation.js +125 -0
  318. package/dist/src/foundation/installation/installation.js.map +1 -0
  319. package/dist/src/foundation/installation/rules.d.ts +12 -0
  320. package/dist/src/foundation/installation/rules.d.ts.map +1 -0
  321. package/dist/src/foundation/installation/rules.js +63 -0
  322. package/dist/src/foundation/installation/rules.js.map +1 -0
  323. package/dist/src/foundation/language/index.d.ts +3 -0
  324. package/dist/src/foundation/language/index.d.ts.map +1 -0
  325. package/dist/src/foundation/language/index.js +2 -0
  326. package/dist/src/foundation/language/index.js.map +1 -0
  327. package/dist/src/foundation/language/language.d.ts +36 -0
  328. package/dist/src/foundation/language/language.d.ts.map +1 -0
  329. package/dist/src/foundation/language/language.js +94 -0
  330. package/dist/src/foundation/language/language.js.map +1 -0
  331. package/dist/src/foundation/owned-write/index.d.ts +2 -0
  332. package/dist/src/foundation/owned-write/index.d.ts.map +1 -0
  333. package/dist/src/foundation/owned-write/index.js +2 -0
  334. package/dist/src/foundation/owned-write/index.js.map +1 -0
  335. package/dist/src/foundation/owned-write/writer.d.ts +86 -0
  336. package/dist/src/foundation/owned-write/writer.d.ts.map +1 -0
  337. package/dist/src/foundation/owned-write/writer.js +244 -0
  338. package/dist/src/foundation/owned-write/writer.js.map +1 -0
  339. package/dist/src/foundation/package-resource/index.d.ts +2 -0
  340. package/dist/src/foundation/package-resource/index.d.ts.map +1 -0
  341. package/dist/src/foundation/package-resource/index.js +2 -0
  342. package/dist/src/foundation/package-resource/index.js.map +1 -0
  343. package/dist/src/foundation/package-resource/npm-tarball.d.ts +15 -0
  344. package/dist/src/foundation/package-resource/npm-tarball.d.ts.map +1 -0
  345. package/dist/src/foundation/package-resource/npm-tarball.js +124 -0
  346. package/dist/src/foundation/package-resource/npm-tarball.js.map +1 -0
  347. package/dist/src/foundation/process/index.d.ts +3 -0
  348. package/dist/src/foundation/process/index.d.ts.map +1 -0
  349. package/dist/src/foundation/process/index.js +3 -0
  350. package/dist/src/foundation/process/index.js.map +1 -0
  351. package/dist/src/foundation/process/npm-command.d.ts +9 -0
  352. package/dist/src/foundation/process/npm-command.d.ts.map +1 -0
  353. package/dist/src/foundation/process/npm-command.js +11 -0
  354. package/dist/src/foundation/process/npm-command.js.map +1 -0
  355. package/dist/src/foundation/process/subprocess.d.ts +8 -0
  356. package/dist/src/foundation/process/subprocess.d.ts.map +1 -0
  357. package/dist/src/foundation/process/subprocess.js +12 -0
  358. package/dist/src/foundation/process/subprocess.js.map +1 -0
  359. package/dist/src/foundation/project-config/config.d.ts +30 -0
  360. package/dist/src/foundation/project-config/config.d.ts.map +1 -0
  361. package/dist/src/foundation/project-config/config.js +112 -0
  362. package/dist/src/foundation/project-config/config.js.map +1 -0
  363. package/dist/src/foundation/project-config/index.d.ts +3 -0
  364. package/dist/src/foundation/project-config/index.d.ts.map +1 -0
  365. package/dist/src/foundation/project-config/index.js +3 -0
  366. package/dist/src/foundation/project-config/index.js.map +1 -0
  367. package/dist/src/foundation/project-config/rules.d.ts +32 -0
  368. package/dist/src/foundation/project-config/rules.d.ts.map +1 -0
  369. package/dist/src/foundation/project-config/rules.js +119 -0
  370. package/dist/src/foundation/project-config/rules.js.map +1 -0
  371. package/dist/src/foundation/projection-cache/index.d.ts +2 -0
  372. package/dist/src/foundation/projection-cache/index.d.ts.map +1 -0
  373. package/dist/src/foundation/projection-cache/index.js +2 -0
  374. package/dist/src/foundation/projection-cache/index.js.map +1 -0
  375. package/dist/src/foundation/projection-cache/projection.d.ts +36 -0
  376. package/dist/src/foundation/projection-cache/projection.d.ts.map +1 -0
  377. package/dist/src/foundation/projection-cache/projection.js +105 -0
  378. package/dist/src/foundation/projection-cache/projection.js.map +1 -0
  379. package/dist/src/foundation/renderer/index.d.ts +3 -0
  380. package/dist/src/foundation/renderer/index.d.ts.map +1 -0
  381. package/dist/src/foundation/renderer/index.js +3 -0
  382. package/dist/src/foundation/renderer/index.js.map +1 -0
  383. package/dist/src/foundation/renderer/markdown.d.ts +7 -0
  384. package/dist/src/foundation/renderer/markdown.d.ts.map +1 -0
  385. package/dist/src/foundation/renderer/markdown.js +355 -0
  386. package/dist/src/foundation/renderer/markdown.js.map +1 -0
  387. package/dist/src/foundation/renderer/render.d.ts +6 -0
  388. package/dist/src/foundation/renderer/render.d.ts.map +1 -0
  389. package/dist/src/foundation/renderer/render.js +23 -0
  390. package/dist/src/foundation/renderer/render.js.map +1 -0
  391. package/dist/src/foundation/report/dialogue.d.ts +37 -0
  392. package/dist/src/foundation/report/dialogue.d.ts.map +1 -0
  393. package/dist/src/foundation/report/dialogue.js +59 -0
  394. package/dist/src/foundation/report/dialogue.js.map +1 -0
  395. package/dist/src/foundation/report/index.d.ts +6 -0
  396. package/dist/src/foundation/report/index.d.ts.map +1 -0
  397. package/dist/src/foundation/report/index.js +6 -0
  398. package/dist/src/foundation/report/index.js.map +1 -0
  399. package/dist/src/foundation/report/instructions.d.ts +77 -0
  400. package/dist/src/foundation/report/instructions.d.ts.map +1 -0
  401. package/dist/src/foundation/report/instructions.js +374 -0
  402. package/dist/src/foundation/report/instructions.js.map +1 -0
  403. package/dist/src/foundation/report/observation.d.ts +31 -0
  404. package/dist/src/foundation/report/observation.d.ts.map +1 -0
  405. package/dist/src/foundation/report/observation.js +83 -0
  406. package/dist/src/foundation/report/observation.js.map +1 -0
  407. package/dist/src/foundation/report/projection.d.ts +7 -0
  408. package/dist/src/foundation/report/projection.d.ts.map +1 -0
  409. package/dist/src/foundation/report/projection.js +199 -0
  410. package/dist/src/foundation/report/projection.js.map +1 -0
  411. package/dist/src/foundation/report/templates/whats-next/contract.d.ts +148 -0
  412. package/dist/src/foundation/report/templates/whats-next/contract.d.ts.map +1 -0
  413. package/dist/src/foundation/report/templates/whats-next/contract.js +34 -0
  414. package/dist/src/foundation/report/templates/whats-next/contract.js.map +1 -0
  415. package/dist/src/foundation/report/templates/whats-next/en-US/content-language.d.ts +9 -0
  416. package/dist/src/foundation/report/templates/whats-next/en-US/content-language.d.ts.map +1 -0
  417. package/dist/src/foundation/report/templates/whats-next/en-US/content-language.js +5 -0
  418. package/dist/src/foundation/report/templates/whats-next/en-US/content-language.js.map +1 -0
  419. package/dist/src/foundation/report/templates/whats-next/en-US/detached-head.d.ts +9 -0
  420. package/dist/src/foundation/report/templates/whats-next/en-US/detached-head.d.ts.map +1 -0
  421. package/dist/src/foundation/report/templates/whats-next/en-US/detached-head.js +10 -0
  422. package/dist/src/foundation/report/templates/whats-next/en-US/detached-head.js.map +1 -0
  423. package/dist/src/foundation/report/templates/whats-next/en-US/event-history-invalid.d.ts +9 -0
  424. package/dist/src/foundation/report/templates/whats-next/en-US/event-history-invalid.d.ts.map +1 -0
  425. package/dist/src/foundation/report/templates/whats-next/en-US/event-history-invalid.js +5 -0
  426. package/dist/src/foundation/report/templates/whats-next/en-US/event-history-invalid.js.map +1 -0
  427. package/dist/src/foundation/report/templates/whats-next/en-US/head-missing.d.ts +9 -0
  428. package/dist/src/foundation/report/templates/whats-next/en-US/head-missing.d.ts.map +1 -0
  429. package/dist/src/foundation/report/templates/whats-next/en-US/head-missing.js +8 -0
  430. package/dist/src/foundation/report/templates/whats-next/en-US/head-missing.js.map +1 -0
  431. package/dist/src/foundation/report/templates/whats-next/en-US/idea-metadata-unavailable.d.ts +12 -0
  432. package/dist/src/foundation/report/templates/whats-next/en-US/idea-metadata-unavailable.d.ts.map +1 -0
  433. package/dist/src/foundation/report/templates/whats-next/en-US/idea-metadata-unavailable.js +8 -0
  434. package/dist/src/foundation/report/templates/whats-next/en-US/idea-metadata-unavailable.js.map +1 -0
  435. package/dist/src/foundation/report/templates/whats-next/en-US/idea-not-found.d.ts +9 -0
  436. package/dist/src/foundation/report/templates/whats-next/en-US/idea-not-found.d.ts.map +1 -0
  437. package/dist/src/foundation/report/templates/whats-next/en-US/idea-not-found.js +5 -0
  438. package/dist/src/foundation/report/templates/whats-next/en-US/idea-not-found.js.map +1 -0
  439. package/dist/src/foundation/report/templates/whats-next/en-US/index.d.ts +63 -0
  440. package/dist/src/foundation/report/templates/whats-next/en-US/index.d.ts.map +1 -0
  441. package/dist/src/foundation/report/templates/whats-next/en-US/index.js +63 -0
  442. package/dist/src/foundation/report/templates/whats-next/en-US/index.js.map +1 -0
  443. package/dist/src/foundation/report/templates/whats-next/en-US/lifecycle-deploying.d.ts +9 -0
  444. package/dist/src/foundation/report/templates/whats-next/en-US/lifecycle-deploying.d.ts.map +1 -0
  445. package/dist/src/foundation/report/templates/whats-next/en-US/lifecycle-deploying.js +13 -0
  446. package/dist/src/foundation/report/templates/whats-next/en-US/lifecycle-deploying.js.map +1 -0
  447. package/dist/src/foundation/report/templates/whats-next/en-US/lifecycle-implementing.d.ts +9 -0
  448. package/dist/src/foundation/report/templates/whats-next/en-US/lifecycle-implementing.d.ts.map +1 -0
  449. package/dist/src/foundation/report/templates/whats-next/en-US/lifecycle-implementing.js +13 -0
  450. package/dist/src/foundation/report/templates/whats-next/en-US/lifecycle-implementing.js.map +1 -0
  451. package/dist/src/foundation/report/templates/whats-next/en-US/lifecycle-inactive.d.ts +9 -0
  452. package/dist/src/foundation/report/templates/whats-next/en-US/lifecycle-inactive.d.ts.map +1 -0
  453. package/dist/src/foundation/report/templates/whats-next/en-US/lifecycle-inactive.js +11 -0
  454. package/dist/src/foundation/report/templates/whats-next/en-US/lifecycle-inactive.js.map +1 -0
  455. package/dist/src/foundation/report/templates/whats-next/en-US/lifecycle-preparing.d.ts +9 -0
  456. package/dist/src/foundation/report/templates/whats-next/en-US/lifecycle-preparing.d.ts.map +1 -0
  457. package/dist/src/foundation/report/templates/whats-next/en-US/lifecycle-preparing.js +13 -0
  458. package/dist/src/foundation/report/templates/whats-next/en-US/lifecycle-preparing.js.map +1 -0
  459. package/dist/src/foundation/report/templates/whats-next/en-US/navigation-ready.d.ts +9 -0
  460. package/dist/src/foundation/report/templates/whats-next/en-US/navigation-ready.d.ts.map +1 -0
  461. package/dist/src/foundation/report/templates/whats-next/en-US/navigation-ready.js +9 -0
  462. package/dist/src/foundation/report/templates/whats-next/en-US/navigation-ready.js.map +1 -0
  463. package/dist/src/foundation/report/templates/whats-next/en-US/phase-guidance-invalid.d.ts +9 -0
  464. package/dist/src/foundation/report/templates/whats-next/en-US/phase-guidance-invalid.d.ts.map +1 -0
  465. package/dist/src/foundation/report/templates/whats-next/en-US/phase-guidance-invalid.js +5 -0
  466. package/dist/src/foundation/report/templates/whats-next/en-US/phase-guidance-invalid.js.map +1 -0
  467. package/dist/src/foundation/report/templates/whats-next/en-US/preparation-seed.d.ts +9 -0
  468. package/dist/src/foundation/report/templates/whats-next/en-US/preparation-seed.d.ts.map +1 -0
  469. package/dist/src/foundation/report/templates/whats-next/en-US/preparation-seed.js +5 -0
  470. package/dist/src/foundation/report/templates/whats-next/en-US/preparation-seed.js.map +1 -0
  471. package/dist/src/foundation/report/templates/whats-next/en-US/primary-ahead.d.ts +9 -0
  472. package/dist/src/foundation/report/templates/whats-next/en-US/primary-ahead.d.ts.map +1 -0
  473. package/dist/src/foundation/report/templates/whats-next/en-US/primary-ahead.js +8 -0
  474. package/dist/src/foundation/report/templates/whats-next/en-US/primary-ahead.js.map +1 -0
  475. package/dist/src/foundation/report/templates/whats-next/en-US/primary-ancestry-inspection-failed.d.ts +9 -0
  476. package/dist/src/foundation/report/templates/whats-next/en-US/primary-ancestry-inspection-failed.d.ts.map +1 -0
  477. package/dist/src/foundation/report/templates/whats-next/en-US/primary-ancestry-inspection-failed.js +5 -0
  478. package/dist/src/foundation/report/templates/whats-next/en-US/primary-ancestry-inspection-failed.js.map +1 -0
  479. package/dist/src/foundation/report/templates/whats-next/en-US/primary-behind.d.ts +9 -0
  480. package/dist/src/foundation/report/templates/whats-next/en-US/primary-behind.d.ts.map +1 -0
  481. package/dist/src/foundation/report/templates/whats-next/en-US/primary-behind.js +8 -0
  482. package/dist/src/foundation/report/templates/whats-next/en-US/primary-behind.js.map +1 -0
  483. package/dist/src/foundation/report/templates/whats-next/en-US/primary-diverged.d.ts +9 -0
  484. package/dist/src/foundation/report/templates/whats-next/en-US/primary-diverged.d.ts.map +1 -0
  485. package/dist/src/foundation/report/templates/whats-next/en-US/primary-diverged.js +8 -0
  486. package/dist/src/foundation/report/templates/whats-next/en-US/primary-diverged.js.map +1 -0
  487. package/dist/src/foundation/report/templates/whats-next/en-US/primary-fetch-failed.d.ts +9 -0
  488. package/dist/src/foundation/report/templates/whats-next/en-US/primary-fetch-failed.d.ts.map +1 -0
  489. package/dist/src/foundation/report/templates/whats-next/en-US/primary-fetch-failed.js +5 -0
  490. package/dist/src/foundation/report/templates/whats-next/en-US/primary-fetch-failed.js.map +1 -0
  491. package/dist/src/foundation/report/templates/whats-next/en-US/primary-history-incomplete.d.ts +9 -0
  492. package/dist/src/foundation/report/templates/whats-next/en-US/primary-history-incomplete.d.ts.map +1 -0
  493. package/dist/src/foundation/report/templates/whats-next/en-US/primary-history-incomplete.js +8 -0
  494. package/dist/src/foundation/report/templates/whats-next/en-US/primary-history-incomplete.js.map +1 -0
  495. package/dist/src/foundation/report/templates/whats-next/en-US/primary-upstream-mismatch.d.ts +9 -0
  496. package/dist/src/foundation/report/templates/whats-next/en-US/primary-upstream-mismatch.d.ts.map +1 -0
  497. package/dist/src/foundation/report/templates/whats-next/en-US/primary-upstream-mismatch.js +11 -0
  498. package/dist/src/foundation/report/templates/whats-next/en-US/primary-upstream-mismatch.js.map +1 -0
  499. package/dist/src/foundation/report/templates/whats-next/en-US/project-recheck.d.ts +9 -0
  500. package/dist/src/foundation/report/templates/whats-next/en-US/project-recheck.d.ts.map +1 -0
  501. package/dist/src/foundation/report/templates/whats-next/en-US/project-recheck.js +5 -0
  502. package/dist/src/foundation/report/templates/whats-next/en-US/project-recheck.js.map +1 -0
  503. package/dist/src/foundation/report/templates/whats-next/en-US/repository-recheck.d.ts +9 -0
  504. package/dist/src/foundation/report/templates/whats-next/en-US/repository-recheck.d.ts.map +1 -0
  505. package/dist/src/foundation/report/templates/whats-next/en-US/repository-recheck.js +5 -0
  506. package/dist/src/foundation/report/templates/whats-next/en-US/repository-recheck.js.map +1 -0
  507. package/dist/src/foundation/report/templates/whats-next/en-US/review-presentation-instruction.d.ts +8 -0
  508. package/dist/src/foundation/report/templates/whats-next/en-US/review-presentation-instruction.d.ts.map +1 -0
  509. package/dist/src/foundation/report/templates/whats-next/en-US/review-presentation-instruction.js +10 -0
  510. package/dist/src/foundation/report/templates/whats-next/en-US/review-presentation-instruction.js.map +1 -0
  511. package/dist/src/foundation/report/templates/whats-next/en-US/review-presentation.d.ts +9 -0
  512. package/dist/src/foundation/report/templates/whats-next/en-US/review-presentation.d.ts.map +1 -0
  513. package/dist/src/foundation/report/templates/whats-next/en-US/review-presentation.js +39 -0
  514. package/dist/src/foundation/report/templates/whats-next/en-US/review-presentation.js.map +1 -0
  515. package/dist/src/foundation/report/templates/whats-next/en-US/worktree-changes-step.d.ts +8 -0
  516. package/dist/src/foundation/report/templates/whats-next/en-US/worktree-changes-step.d.ts.map +1 -0
  517. package/dist/src/foundation/report/templates/whats-next/en-US/worktree-changes-step.js +10 -0
  518. package/dist/src/foundation/report/templates/whats-next/en-US/worktree-changes-step.js.map +1 -0
  519. package/dist/src/foundation/report/templates/whats-next/en-US/worktree-conflict-step.d.ts +8 -0
  520. package/dist/src/foundation/report/templates/whats-next/en-US/worktree-conflict-step.d.ts.map +1 -0
  521. package/dist/src/foundation/report/templates/whats-next/en-US/worktree-conflict-step.js +10 -0
  522. package/dist/src/foundation/report/templates/whats-next/en-US/worktree-conflict-step.js.map +1 -0
  523. package/dist/src/foundation/report/templates/whats-next/en-US/worktree-conflicts.d.ts +9 -0
  524. package/dist/src/foundation/report/templates/whats-next/en-US/worktree-conflicts.d.ts.map +1 -0
  525. package/dist/src/foundation/report/templates/whats-next/en-US/worktree-conflicts.js +5 -0
  526. package/dist/src/foundation/report/templates/whats-next/en-US/worktree-conflicts.js.map +1 -0
  527. package/dist/src/foundation/report/templates/whats-next/en-US/worktree-inspection-failed.d.ts +9 -0
  528. package/dist/src/foundation/report/templates/whats-next/en-US/worktree-inspection-failed.d.ts.map +1 -0
  529. package/dist/src/foundation/report/templates/whats-next/en-US/worktree-inspection-failed.js +5 -0
  530. package/dist/src/foundation/report/templates/whats-next/en-US/worktree-inspection-failed.js.map +1 -0
  531. package/dist/src/foundation/report/templates/whats-next/en-US/worktree-summary.d.ts +9 -0
  532. package/dist/src/foundation/report/templates/whats-next/en-US/worktree-summary.d.ts.map +1 -0
  533. package/dist/src/foundation/report/templates/whats-next/en-US/worktree-summary.js +12 -0
  534. package/dist/src/foundation/report/templates/whats-next/en-US/worktree-summary.js.map +1 -0
  535. package/dist/src/foundation/report/templates/whats-next/index.d.ts +5 -0
  536. package/dist/src/foundation/report/templates/whats-next/index.d.ts.map +1 -0
  537. package/dist/src/foundation/report/templates/whats-next/index.js +4 -0
  538. package/dist/src/foundation/report/templates/whats-next/index.js.map +1 -0
  539. package/dist/src/foundation/report/templates/whats-next/registry.d.ts +4 -0
  540. package/dist/src/foundation/report/templates/whats-next/registry.d.ts.map +1 -0
  541. package/dist/src/foundation/report/templates/whats-next/registry.js +14 -0
  542. package/dist/src/foundation/report/templates/whats-next/registry.js.map +1 -0
  543. package/dist/src/foundation/report/templates/whats-next/renderers.d.ts +63 -0
  544. package/dist/src/foundation/report/templates/whats-next/renderers.d.ts.map +1 -0
  545. package/dist/src/foundation/report/templates/whats-next/renderers.js +176 -0
  546. package/dist/src/foundation/report/templates/whats-next/renderers.js.map +1 -0
  547. package/dist/src/foundation/report/templates/whats-next/zh-CN/content-language.d.ts +9 -0
  548. package/dist/src/foundation/report/templates/whats-next/zh-CN/content-language.d.ts.map +1 -0
  549. package/dist/src/foundation/report/templates/whats-next/zh-CN/content-language.js +5 -0
  550. package/dist/src/foundation/report/templates/whats-next/zh-CN/content-language.js.map +1 -0
  551. package/dist/src/foundation/report/templates/whats-next/zh-CN/detached-head.d.ts +9 -0
  552. package/dist/src/foundation/report/templates/whats-next/zh-CN/detached-head.d.ts.map +1 -0
  553. package/dist/src/foundation/report/templates/whats-next/zh-CN/detached-head.js +10 -0
  554. package/dist/src/foundation/report/templates/whats-next/zh-CN/detached-head.js.map +1 -0
  555. package/dist/src/foundation/report/templates/whats-next/zh-CN/event-history-invalid.d.ts +9 -0
  556. package/dist/src/foundation/report/templates/whats-next/zh-CN/event-history-invalid.d.ts.map +1 -0
  557. package/dist/src/foundation/report/templates/whats-next/zh-CN/event-history-invalid.js +5 -0
  558. package/dist/src/foundation/report/templates/whats-next/zh-CN/event-history-invalid.js.map +1 -0
  559. package/dist/src/foundation/report/templates/whats-next/zh-CN/head-missing.d.ts +9 -0
  560. package/dist/src/foundation/report/templates/whats-next/zh-CN/head-missing.d.ts.map +1 -0
  561. package/dist/src/foundation/report/templates/whats-next/zh-CN/head-missing.js +8 -0
  562. package/dist/src/foundation/report/templates/whats-next/zh-CN/head-missing.js.map +1 -0
  563. package/dist/src/foundation/report/templates/whats-next/zh-CN/idea-metadata-unavailable.d.ts +12 -0
  564. package/dist/src/foundation/report/templates/whats-next/zh-CN/idea-metadata-unavailable.d.ts.map +1 -0
  565. package/dist/src/foundation/report/templates/whats-next/zh-CN/idea-metadata-unavailable.js +8 -0
  566. package/dist/src/foundation/report/templates/whats-next/zh-CN/idea-metadata-unavailable.js.map +1 -0
  567. package/dist/src/foundation/report/templates/whats-next/zh-CN/idea-not-found.d.ts +9 -0
  568. package/dist/src/foundation/report/templates/whats-next/zh-CN/idea-not-found.d.ts.map +1 -0
  569. package/dist/src/foundation/report/templates/whats-next/zh-CN/idea-not-found.js +5 -0
  570. package/dist/src/foundation/report/templates/whats-next/zh-CN/idea-not-found.js.map +1 -0
  571. package/dist/src/foundation/report/templates/whats-next/zh-CN/index.d.ts +63 -0
  572. package/dist/src/foundation/report/templates/whats-next/zh-CN/index.d.ts.map +1 -0
  573. package/dist/src/foundation/report/templates/whats-next/zh-CN/index.js +63 -0
  574. package/dist/src/foundation/report/templates/whats-next/zh-CN/index.js.map +1 -0
  575. package/dist/src/foundation/report/templates/whats-next/zh-CN/lifecycle-deploying.d.ts +9 -0
  576. package/dist/src/foundation/report/templates/whats-next/zh-CN/lifecycle-deploying.d.ts.map +1 -0
  577. package/dist/src/foundation/report/templates/whats-next/zh-CN/lifecycle-deploying.js +13 -0
  578. package/dist/src/foundation/report/templates/whats-next/zh-CN/lifecycle-deploying.js.map +1 -0
  579. package/dist/src/foundation/report/templates/whats-next/zh-CN/lifecycle-implementing.d.ts +9 -0
  580. package/dist/src/foundation/report/templates/whats-next/zh-CN/lifecycle-implementing.d.ts.map +1 -0
  581. package/dist/src/foundation/report/templates/whats-next/zh-CN/lifecycle-implementing.js +13 -0
  582. package/dist/src/foundation/report/templates/whats-next/zh-CN/lifecycle-implementing.js.map +1 -0
  583. package/dist/src/foundation/report/templates/whats-next/zh-CN/lifecycle-inactive.d.ts +9 -0
  584. package/dist/src/foundation/report/templates/whats-next/zh-CN/lifecycle-inactive.d.ts.map +1 -0
  585. package/dist/src/foundation/report/templates/whats-next/zh-CN/lifecycle-inactive.js +11 -0
  586. package/dist/src/foundation/report/templates/whats-next/zh-CN/lifecycle-inactive.js.map +1 -0
  587. package/dist/src/foundation/report/templates/whats-next/zh-CN/lifecycle-preparing.d.ts +9 -0
  588. package/dist/src/foundation/report/templates/whats-next/zh-CN/lifecycle-preparing.d.ts.map +1 -0
  589. package/dist/src/foundation/report/templates/whats-next/zh-CN/lifecycle-preparing.js +13 -0
  590. package/dist/src/foundation/report/templates/whats-next/zh-CN/lifecycle-preparing.js.map +1 -0
  591. package/dist/src/foundation/report/templates/whats-next/zh-CN/navigation-ready.d.ts +9 -0
  592. package/dist/src/foundation/report/templates/whats-next/zh-CN/navigation-ready.d.ts.map +1 -0
  593. package/dist/src/foundation/report/templates/whats-next/zh-CN/navigation-ready.js +9 -0
  594. package/dist/src/foundation/report/templates/whats-next/zh-CN/navigation-ready.js.map +1 -0
  595. package/dist/src/foundation/report/templates/whats-next/zh-CN/phase-guidance-invalid.d.ts +9 -0
  596. package/dist/src/foundation/report/templates/whats-next/zh-CN/phase-guidance-invalid.d.ts.map +1 -0
  597. package/dist/src/foundation/report/templates/whats-next/zh-CN/phase-guidance-invalid.js +5 -0
  598. package/dist/src/foundation/report/templates/whats-next/zh-CN/phase-guidance-invalid.js.map +1 -0
  599. package/dist/src/foundation/report/templates/whats-next/zh-CN/preparation-seed.d.ts +9 -0
  600. package/dist/src/foundation/report/templates/whats-next/zh-CN/preparation-seed.d.ts.map +1 -0
  601. package/dist/src/foundation/report/templates/whats-next/zh-CN/preparation-seed.js +5 -0
  602. package/dist/src/foundation/report/templates/whats-next/zh-CN/preparation-seed.js.map +1 -0
  603. package/dist/src/foundation/report/templates/whats-next/zh-CN/primary-ahead.d.ts +9 -0
  604. package/dist/src/foundation/report/templates/whats-next/zh-CN/primary-ahead.d.ts.map +1 -0
  605. package/dist/src/foundation/report/templates/whats-next/zh-CN/primary-ahead.js +8 -0
  606. package/dist/src/foundation/report/templates/whats-next/zh-CN/primary-ahead.js.map +1 -0
  607. package/dist/src/foundation/report/templates/whats-next/zh-CN/primary-ancestry-inspection-failed.d.ts +9 -0
  608. package/dist/src/foundation/report/templates/whats-next/zh-CN/primary-ancestry-inspection-failed.d.ts.map +1 -0
  609. package/dist/src/foundation/report/templates/whats-next/zh-CN/primary-ancestry-inspection-failed.js +5 -0
  610. package/dist/src/foundation/report/templates/whats-next/zh-CN/primary-ancestry-inspection-failed.js.map +1 -0
  611. package/dist/src/foundation/report/templates/whats-next/zh-CN/primary-behind.d.ts +9 -0
  612. package/dist/src/foundation/report/templates/whats-next/zh-CN/primary-behind.d.ts.map +1 -0
  613. package/dist/src/foundation/report/templates/whats-next/zh-CN/primary-behind.js +8 -0
  614. package/dist/src/foundation/report/templates/whats-next/zh-CN/primary-behind.js.map +1 -0
  615. package/dist/src/foundation/report/templates/whats-next/zh-CN/primary-diverged.d.ts +9 -0
  616. package/dist/src/foundation/report/templates/whats-next/zh-CN/primary-diverged.d.ts.map +1 -0
  617. package/dist/src/foundation/report/templates/whats-next/zh-CN/primary-diverged.js +8 -0
  618. package/dist/src/foundation/report/templates/whats-next/zh-CN/primary-diverged.js.map +1 -0
  619. package/dist/src/foundation/report/templates/whats-next/zh-CN/primary-fetch-failed.d.ts +9 -0
  620. package/dist/src/foundation/report/templates/whats-next/zh-CN/primary-fetch-failed.d.ts.map +1 -0
  621. package/dist/src/foundation/report/templates/whats-next/zh-CN/primary-fetch-failed.js +5 -0
  622. package/dist/src/foundation/report/templates/whats-next/zh-CN/primary-fetch-failed.js.map +1 -0
  623. package/dist/src/foundation/report/templates/whats-next/zh-CN/primary-history-incomplete.d.ts +9 -0
  624. package/dist/src/foundation/report/templates/whats-next/zh-CN/primary-history-incomplete.d.ts.map +1 -0
  625. package/dist/src/foundation/report/templates/whats-next/zh-CN/primary-history-incomplete.js +8 -0
  626. package/dist/src/foundation/report/templates/whats-next/zh-CN/primary-history-incomplete.js.map +1 -0
  627. package/dist/src/foundation/report/templates/whats-next/zh-CN/primary-upstream-mismatch.d.ts +9 -0
  628. package/dist/src/foundation/report/templates/whats-next/zh-CN/primary-upstream-mismatch.d.ts.map +1 -0
  629. package/dist/src/foundation/report/templates/whats-next/zh-CN/primary-upstream-mismatch.js +11 -0
  630. package/dist/src/foundation/report/templates/whats-next/zh-CN/primary-upstream-mismatch.js.map +1 -0
  631. package/dist/src/foundation/report/templates/whats-next/zh-CN/project-recheck.d.ts +9 -0
  632. package/dist/src/foundation/report/templates/whats-next/zh-CN/project-recheck.d.ts.map +1 -0
  633. package/dist/src/foundation/report/templates/whats-next/zh-CN/project-recheck.js +5 -0
  634. package/dist/src/foundation/report/templates/whats-next/zh-CN/project-recheck.js.map +1 -0
  635. package/dist/src/foundation/report/templates/whats-next/zh-CN/repository-recheck.d.ts +9 -0
  636. package/dist/src/foundation/report/templates/whats-next/zh-CN/repository-recheck.d.ts.map +1 -0
  637. package/dist/src/foundation/report/templates/whats-next/zh-CN/repository-recheck.js +5 -0
  638. package/dist/src/foundation/report/templates/whats-next/zh-CN/repository-recheck.js.map +1 -0
  639. package/dist/src/foundation/report/templates/whats-next/zh-CN/review-presentation-instruction.d.ts +8 -0
  640. package/dist/src/foundation/report/templates/whats-next/zh-CN/review-presentation-instruction.d.ts.map +1 -0
  641. package/dist/src/foundation/report/templates/whats-next/zh-CN/review-presentation-instruction.js +10 -0
  642. package/dist/src/foundation/report/templates/whats-next/zh-CN/review-presentation-instruction.js.map +1 -0
  643. package/dist/src/foundation/report/templates/whats-next/zh-CN/review-presentation.d.ts +9 -0
  644. package/dist/src/foundation/report/templates/whats-next/zh-CN/review-presentation.d.ts.map +1 -0
  645. package/dist/src/foundation/report/templates/whats-next/zh-CN/review-presentation.js +39 -0
  646. package/dist/src/foundation/report/templates/whats-next/zh-CN/review-presentation.js.map +1 -0
  647. package/dist/src/foundation/report/templates/whats-next/zh-CN/worktree-changes-step.d.ts +8 -0
  648. package/dist/src/foundation/report/templates/whats-next/zh-CN/worktree-changes-step.d.ts.map +1 -0
  649. package/dist/src/foundation/report/templates/whats-next/zh-CN/worktree-changes-step.js +10 -0
  650. package/dist/src/foundation/report/templates/whats-next/zh-CN/worktree-changes-step.js.map +1 -0
  651. package/dist/src/foundation/report/templates/whats-next/zh-CN/worktree-conflict-step.d.ts +8 -0
  652. package/dist/src/foundation/report/templates/whats-next/zh-CN/worktree-conflict-step.d.ts.map +1 -0
  653. package/dist/src/foundation/report/templates/whats-next/zh-CN/worktree-conflict-step.js +10 -0
  654. package/dist/src/foundation/report/templates/whats-next/zh-CN/worktree-conflict-step.js.map +1 -0
  655. package/dist/src/foundation/report/templates/whats-next/zh-CN/worktree-conflicts.d.ts +9 -0
  656. package/dist/src/foundation/report/templates/whats-next/zh-CN/worktree-conflicts.d.ts.map +1 -0
  657. package/dist/src/foundation/report/templates/whats-next/zh-CN/worktree-conflicts.js +5 -0
  658. package/dist/src/foundation/report/templates/whats-next/zh-CN/worktree-conflicts.js.map +1 -0
  659. package/dist/src/foundation/report/templates/whats-next/zh-CN/worktree-inspection-failed.d.ts +9 -0
  660. package/dist/src/foundation/report/templates/whats-next/zh-CN/worktree-inspection-failed.d.ts.map +1 -0
  661. package/dist/src/foundation/report/templates/whats-next/zh-CN/worktree-inspection-failed.js +5 -0
  662. package/dist/src/foundation/report/templates/whats-next/zh-CN/worktree-inspection-failed.js.map +1 -0
  663. package/dist/src/foundation/report/templates/whats-next/zh-CN/worktree-summary.d.ts +9 -0
  664. package/dist/src/foundation/report/templates/whats-next/zh-CN/worktree-summary.d.ts.map +1 -0
  665. package/dist/src/foundation/report/templates/whats-next/zh-CN/worktree-summary.js +12 -0
  666. package/dist/src/foundation/report/templates/whats-next/zh-CN/worktree-summary.js.map +1 -0
  667. package/dist/src/foundation/report/types.d.ts +321 -0
  668. package/dist/src/foundation/report/types.d.ts.map +1 -0
  669. package/dist/src/foundation/report/types.js +2 -0
  670. package/dist/src/foundation/report/types.js.map +1 -0
  671. package/dist/src/foundation/scaffold-plan/index.d.ts +2 -0
  672. package/dist/src/foundation/scaffold-plan/index.d.ts.map +1 -0
  673. package/dist/src/foundation/scaffold-plan/index.js +2 -0
  674. package/dist/src/foundation/scaffold-plan/index.js.map +1 -0
  675. package/dist/src/foundation/scaffold-plan/scaffold-plan.d.ts +11 -0
  676. package/dist/src/foundation/scaffold-plan/scaffold-plan.d.ts.map +1 -0
  677. package/dist/src/foundation/scaffold-plan/scaffold-plan.js +36 -0
  678. package/dist/src/foundation/scaffold-plan/scaffold-plan.js.map +1 -0
  679. package/dist/src/foundation/schema/index.d.ts +3 -0
  680. package/dist/src/foundation/schema/index.d.ts.map +1 -0
  681. package/dist/src/foundation/schema/index.js +3 -0
  682. package/dist/src/foundation/schema/index.js.map +1 -0
  683. package/dist/src/foundation/schema/schema.d.ts +3 -0
  684. package/dist/src/foundation/schema/schema.d.ts.map +1 -0
  685. package/dist/src/foundation/schema/schema.js +10 -0
  686. package/dist/src/foundation/schema/schema.js.map +1 -0
  687. package/dist/src/foundation/schema/yaml.d.ts +10 -0
  688. package/dist/src/foundation/schema/yaml.d.ts.map +1 -0
  689. package/dist/src/foundation/schema/yaml.js +60 -0
  690. package/dist/src/foundation/schema/yaml.js.map +1 -0
  691. package/dist/src/foundation/schema-capability/index.d.ts +6 -0
  692. package/dist/src/foundation/schema-capability/index.d.ts.map +1 -0
  693. package/dist/src/foundation/schema-capability/index.js +4 -0
  694. package/dist/src/foundation/schema-capability/index.js.map +1 -0
  695. package/dist/src/foundation/schema-capability/inspection.d.ts +38 -0
  696. package/dist/src/foundation/schema-capability/inspection.d.ts.map +1 -0
  697. package/dist/src/foundation/schema-capability/inspection.js +249 -0
  698. package/dist/src/foundation/schema-capability/inspection.js.map +1 -0
  699. package/dist/src/foundation/schema-capability/manifest.d.ts +6 -0
  700. package/dist/src/foundation/schema-capability/manifest.d.ts.map +1 -0
  701. package/dist/src/foundation/schema-capability/manifest.js +17 -0
  702. package/dist/src/foundation/schema-capability/manifest.js.map +1 -0
  703. package/dist/src/foundation/schema-capability/rules.d.ts +38 -0
  704. package/dist/src/foundation/schema-capability/rules.d.ts.map +1 -0
  705. package/dist/src/foundation/schema-capability/rules.js +297 -0
  706. package/dist/src/foundation/schema-capability/rules.js.map +1 -0
  707. package/dist/src/foundation/skill-registration/adoption.d.ts +40 -0
  708. package/dist/src/foundation/skill-registration/adoption.d.ts.map +1 -0
  709. package/dist/src/foundation/skill-registration/adoption.js +63 -0
  710. package/dist/src/foundation/skill-registration/adoption.js.map +1 -0
  711. package/dist/src/foundation/skill-registration/index.d.ts +2 -0
  712. package/dist/src/foundation/skill-registration/index.d.ts.map +1 -0
  713. package/dist/src/foundation/skill-registration/index.js +2 -0
  714. package/dist/src/foundation/skill-registration/index.js.map +1 -0
  715. package/dist/src/foundation/skill-registration/rules.d.ts +2 -0
  716. package/dist/src/foundation/skill-registration/rules.d.ts.map +1 -0
  717. package/dist/src/foundation/skill-registration/rules.js +2 -0
  718. package/dist/src/foundation/skill-registration/rules.js.map +1 -0
  719. package/dist/src/foundation/snapshot/git-snapshot.d.ts +40 -0
  720. package/dist/src/foundation/snapshot/git-snapshot.d.ts.map +1 -0
  721. package/dist/src/foundation/snapshot/git-snapshot.js +168 -0
  722. package/dist/src/foundation/snapshot/git-snapshot.js.map +1 -0
  723. package/dist/src/foundation/snapshot/index.d.ts +2 -0
  724. package/dist/src/foundation/snapshot/index.d.ts.map +1 -0
  725. package/dist/src/foundation/snapshot/index.js +2 -0
  726. package/dist/src/foundation/snapshot/index.js.map +1 -0
  727. package/dist/src/foundation/state-transaction/index.d.ts +2 -0
  728. package/dist/src/foundation/state-transaction/index.d.ts.map +1 -0
  729. package/dist/src/foundation/state-transaction/index.js +2 -0
  730. package/dist/src/foundation/state-transaction/index.js.map +1 -0
  731. package/dist/src/foundation/state-transaction/state-transaction.d.ts +48 -0
  732. package/dist/src/foundation/state-transaction/state-transaction.d.ts.map +1 -0
  733. package/dist/src/foundation/state-transaction/state-transaction.js +364 -0
  734. package/dist/src/foundation/state-transaction/state-transaction.js.map +1 -0
  735. package/dist/src/foundation/terminal/index.d.ts +2 -0
  736. package/dist/src/foundation/terminal/index.d.ts.map +1 -0
  737. package/dist/src/foundation/terminal/index.js +2 -0
  738. package/dist/src/foundation/terminal/index.js.map +1 -0
  739. package/dist/src/foundation/terminal/terminal.d.ts +17 -0
  740. package/dist/src/foundation/terminal/terminal.d.ts.map +1 -0
  741. package/dist/src/foundation/terminal/terminal.js +12 -0
  742. package/dist/src/foundation/terminal/terminal.js.map +1 -0
  743. package/dist/src/foundation/trace/index.d.ts +2 -0
  744. package/dist/src/foundation/trace/index.d.ts.map +1 -0
  745. package/dist/src/foundation/trace/index.js +2 -0
  746. package/dist/src/foundation/trace/index.js.map +1 -0
  747. package/dist/src/foundation/trace/trace.d.ts +12 -0
  748. package/dist/src/foundation/trace/trace.d.ts.map +1 -0
  749. package/dist/src/foundation/trace/trace.js +299 -0
  750. package/dist/src/foundation/trace/trace.js.map +1 -0
  751. package/dist/src/foundation/tui/index.d.ts +3 -0
  752. package/dist/src/foundation/tui/index.d.ts.map +1 -0
  753. package/dist/src/foundation/tui/index.js +3 -0
  754. package/dist/src/foundation/tui/index.js.map +1 -0
  755. package/dist/src/foundation/tui/table.d.ts +10 -0
  756. package/dist/src/foundation/tui/table.d.ts.map +1 -0
  757. package/dist/src/foundation/tui/table.js +91 -0
  758. package/dist/src/foundation/tui/table.js.map +1 -0
  759. package/dist/src/foundation/tui/tui.d.ts +33 -0
  760. package/dist/src/foundation/tui/tui.d.ts.map +1 -0
  761. package/dist/src/foundation/tui/tui.js +157 -0
  762. package/dist/src/foundation/tui/tui.js.map +1 -0
  763. package/dist/src/index.d.ts +17 -0
  764. package/dist/src/index.d.ts.map +1 -0
  765. package/dist/src/index.js +16 -0
  766. package/dist/src/index.js.map +1 -0
  767. package/docs/core-concepts.md +48 -7
  768. package/docs/getting-started.md +60 -45
  769. package/docs/maintaining.md +132 -9
  770. package/docs/npm-package-releases.md +38 -9
  771. package/docs/operations.md +109 -35
  772. package/docs/reference.md +304 -35
  773. package/docs/repository-tasks.md +61 -20
  774. package/package.json +53 -27
  775. package/schema/capabilities.json +95 -0
  776. package/schema/capability-manifest.schema.json +139 -0
  777. package/schema/v1/command-report.schema.json +4 -2
  778. package/schema/v1/domain-message.schema.json +2 -1
  779. package/schema/v2/config.schema.json +14 -0
  780. package/schema/v2/idea-event.schema.json +121 -0
  781. package/skills/silvermoon/SKILL.md +204 -112
  782. package/skills/silvermoon/references/adoption.md +55 -24
  783. package/skills/silvermoon/references/events.md +296 -0
  784. package/bin/silvermoon.js +0 -10
  785. package/src/adoption.js +0 -559
  786. package/src/cli.js +0 -377
  787. package/src/config.js +0 -253
  788. package/src/create-idea.js +0 -497
  789. package/src/dialogue.js +0 -69
  790. package/src/domain.js +0 -592
  791. package/src/git-snapshot.js +0 -212
  792. package/src/git.js +0 -624
  793. package/src/guidance.js +0 -281
  794. package/src/idea-layout.js +0 -411
  795. package/src/idea-metadata.js +0 -48
  796. package/src/idea-query.js +0 -230
  797. package/src/idea-templates.js +0 -242
  798. package/src/ideas.js +0 -142
  799. package/src/index.js +0 -386
  800. package/src/language.js +0 -78
  801. package/src/layout.js +0 -38
  802. package/src/list-ideas.js +0 -196
  803. package/src/observation.js +0 -370
  804. package/src/repository.js +0 -82
  805. package/src/response.js +0 -492
  806. package/src/subprocess.js +0 -27
  807. package/src/trace.js +0 -292
  808. package/src/tui-table.js +0 -71
  809. package/src/tui.js +0 -205
  810. package/src/user-config.js +0 -135
  811. package/src/whatsnext.js +0 -726
  812. package/src/yaml.js +0 -66
package/docs/reference.md CHANGED
@@ -16,7 +16,7 @@ Each idea is self-contained under one canonical uppercase ULID:
16
16
  | `-- deploying.md
17
17
  `-- ideas/
18
18
  `-- 01M36QGPNTXEPP61DA4KP4AVZF/
19
- |-- status.yaml
19
+ |-- status.yaml (v1) or events.jsonl (v2)
20
20
  |-- ledger.md
21
21
  `-- outer/
22
22
  |-- Deployment.md
@@ -80,12 +80,13 @@ Each world is an opaque Git tree:
80
80
  - `implementationRevision` identifies `inner/` and includes the Ideal World.
81
81
  - `deploymentRevision` identifies `outer/` and includes both nested worlds.
82
82
 
83
- `status.yaml` and `ledger.md` are outside all three world trees. The repository
83
+ `status.yaml` (v1), `events.jsonl` (v2), and `ledger.md` are outside all three
84
+ world trees. The repository
84
85
  object format in use determines revision shape. Silvermoon validates canonical
85
86
  revision shape, computes the current world trees, and compares those values to
86
87
  status facts rather than interpreting world contents.
87
88
 
88
- ## Status File
89
+ ## Status File (v1)
89
90
 
90
91
  ```yaml
91
92
  version: 1
@@ -131,6 +132,14 @@ Agent to replace natural-language placeholders with the effective content
131
132
  language. Selected-idea `whats-next` instructions repeat the effective content
132
133
  language even when a temporary output-language override is active.
133
134
 
135
+ Creation initially writes explicit scaffold placeholders. Before Ideal
136
+ approval, preparation replaces the Implementation and Deployment placeholders
137
+ with lightweight first versions of no more than three high-level steps and
138
+ three observable criteria each, mirrored unchecked in `ledger.md`. These
139
+ provisional seeds do not widen `acceptIdeal`, which remains bound only to
140
+ `idealRevision`; their later refinement changes the containing downstream
141
+ revisions normally.
142
+
134
143
  State is derived in order:
135
144
 
136
145
  1. `abandoned` when `abandoned: true`.
@@ -141,6 +150,77 @@ State is derived in order:
141
150
  `deploymentRevision`.
142
151
  5. `completed` when all three revisions match.
143
152
 
153
+ ## Event State (v2)
154
+
155
+ Project `version: 2` replaces mutable status with one required regular
156
+ `events.jsonl` file at each idea root. The file may be empty; otherwise it is
157
+ canonical UTF-8 JSONL with LF record endings, a final LF, consecutive sequence
158
+ numbers beginning at 1, and a 1 MiB limit per record including LF. Its strict
159
+ twelve-event union updates accepted and submitted revision facts, interaction
160
+ messages, and unified control; no observations, creation/import markers, or
161
+ audit envelope are stored. The nested-world revisions and five lifecycle
162
+ states are unchanged.
163
+
164
+ Use `event replay` and `event append` for routine state. Exceptional history
165
+ maintenance edits the complete `events.jsonl` file directly and validates it
166
+ through ordinary Git review and snapshot/history checks. Append requests carry
167
+ the exact byte length and Git blob OID of the complete file outside the business
168
+ event; lifecycle writes also require expected primary. Canonical JSONL, human
169
+ gates, concurrency, conditional append-only history, and interrupted-write
170
+ recovery are specified in the
171
+ [event operations contract](../skills/silvermoon/references/events.md).
172
+
173
+ For repeated consumption, `event replay <ULID> --after-length <bytes>
174
+ --after-digest <oid>` returns only the events after an exactly matched cursor.
175
+ The `delta-observed` receipt is not a complete reduction or authorization;
176
+ ordinary full replay is unchanged. The experimental project runtime exposes
177
+ this additive query as `readSince(route, { length, digest })`.
178
+
179
+ Canonical-ULID interaction appends may use an authenticated local projection
180
+ bound to the complete event-file blob OID to avoid repeating reduction on the
181
+ warm path. These Git-private, runtime/source-bound files are disposable derived
182
+ state, not event facts or authorization. The authoritative file is still read
183
+ and validated. Incremental snapshot acquisition performs precise source checks;
184
+ Windows authenticates native ChangeTime-to-OID bindings because Git uses
185
+ CreationTime. Coarse timestamps and missing source records force content
186
+ verification.
187
+ Default metadata append receipts contain exact historical validation summaries;
188
+ `--full-history` preserves complete historical reduction output. Alias and
189
+ metadata paths retain layout, prefix and explicit human-gate checks.
190
+ Full replay and history audits are not advertised as constant-time operations.
191
+ The runtime-owned `schema/capabilities.json` manifest declares every readable
192
+ schema version, current write target, and continuous schema migration path.
193
+ The `project-v1-to-v2` edge covers project configuration and idea state
194
+ together. It names the installed `silvermoon-migrate-v1-to-v2` executable,
195
+ the packaged `dist/bin/migrate-v1-to-v2.js` entrypoint, and the source-checkout
196
+ `bin/migrate-v1-to-v2.ts` entrypoint. Its declared guarantees require a
197
+ read-only plan, exact-digest apply, resume, rollback, and semantic projection
198
+ equivalence.
199
+
200
+ Use the installed global runtime to plan and apply the edge:
201
+
202
+ ```sh
203
+ silvermoon-migrate-v1-to-v2 --root <project>
204
+ silvermoon-migrate-v1-to-v2 --root <project> --apply --expected-digest <plan-digest>
205
+ ```
206
+
207
+ Embedding hosts may call the experimental `runSchemaMigration` package API.
208
+ The source checkout instead runs `node bin/migrate-v1-to-v2.ts` so it tests
209
+ the unpublished implementation. No ordinary command automatically migrates a
210
+ v1 project.
211
+
212
+ V2's ten business types are `setAlias`, `setLanguage`, `submitIdeal`,
213
+ `submitInner`, `submitOuter`, `acceptIdeal`, `acceptInner`, `acceptOuter`,
214
+ `abandon`, and `resume`. The two interaction types, `ping` and `pong`, carry
215
+ only a nonempty `message` string. Replay retains ordered messages and projects
216
+ `control.owner` with its last transfer across messages, submissions,
217
+ acceptances, and terminal events. Each phase's submitted revision is separate
218
+ from its accepted revision. After `abandon`, only `resume` is legal.
219
+ Interaction appends need the local byte precondition but no primary fetch;
220
+ submissions need the exact current world on primary but no human confirmation;
221
+ acceptances additionally require explicit confirmation and the same revision
222
+ already submitted. The CLI cannot authenticate upstream or downstream senders.
223
+
144
224
  ## Experimental JavaScript Package API
145
225
 
146
226
  The package root export is available for programmatic reuse, but remains
@@ -155,6 +235,84 @@ JSON Schemas, trace versions, and repository file contracts keep their own
155
235
  documented compatibility rules. The package does not yet promise stable
156
236
  TypeScript declarations or a stable `1.0.0` JavaScript API.
157
237
 
238
+ ### Agent runtime integration
239
+
240
+ The `silvermoon/agents/copilot` subpath exports `CopilotAdapter` and
241
+ `LocalProjectRegistry` (with TypeScript declarations). This is a separate
242
+ experimental Agent integration, not part of the root export. Register a
243
+ local Git project first with `registry.register(projectUrl, projectRoot)`,
244
+ using its canonical credential-free HTTPS remote URL and a worktree root
245
+ whose `.silvermoon/config.yaml` names that remote. Then construct
246
+ `new CopilotAdapter({ registry, onPermissionRequest })`; callers must
247
+ explicitly decide Copilot tool permissions rather than inheriting blanket
248
+ approval. `start({ projectUrl, ideaId })` creates or reuses a dedicated worktree
249
+ whose branch tracks the project's configured primary, and a durable Copilot
250
+ session. A missing local primary tracking ref blocks creation rather than
251
+ guessing a base. `send`
252
+ returns an asynchronous stream of delivery observations, while `events`
253
+ returns only final Agent replies and `observe` returns session and activity
254
+ observations. Call `close()` to release connections; it does not delete
255
+ session history or worktrees.
256
+ An aborted turn or session error fails the formal reply stream, and a
257
+ shutdown reports the session as `gone`; partial messages and subsequent
258
+ idle notifications do not become final replies. Further sends report
259
+ `unknown` and `start` cannot silently replace the failed session. Reconcile
260
+ the project log and session state before explicit recovery.
261
+ An uncertain SDK send similarly invalidates the current observation and
262
+ reply stream; retrying the same message on that route does not send it again.
263
+
264
+ The SDK acknowledges *acceptance*, not per-message consumption. Consequently
265
+ the adapter reports `queued` followed by `unknown`; it does not claim
266
+ `processed` without evidence. A final reply is the last user-facing assistant
267
+ message when Copilot reports idle, not each intermediate tool-loop message.
268
+ Consumers must persist their own project event preconditions and avoid
269
+ resending uncertain operations. Registration rejects unknown or conflicting
270
+ local projects; the adapter does not infer a worktree from a route string.
271
+ The registry excludes concurrent owners of the same route. If an owner exits
272
+ without `close()`, explicitly verify it stopped, then call
273
+ `registry.recover(route, { confirmStopped: true })`; recovery refuses a live
274
+ owner, another host, or an unknown lock. It does not replay an uncertain send.
275
+ The registry also persists the route's Copilot session identity before
276
+ creation: a missing SDK listing or an ambiguous creation failure cannot
277
+ silently spawn a replacement. An SDK session listed without workspace metadata
278
+ cannot be adopted without a matching pre-existing local binding. Only after
279
+ verifying that the old session is
280
+ truly lost and no route owner is active, call
281
+ `registry.forgetSession(route, { confirmLost: true })` to permit a new session.
282
+ This does not erase the old session, undo side effects, or authorize retrying
283
+ messages with uncertain delivery.
284
+
285
+ The `silvermoon/agents/project-runtime` subpath exports `ProjectRuntime`.
286
+ It resolves the registered project's own installed Silvermoon CLI (or this
287
+ source checkout's entrypoint), starts it in a separate process with the
288
+ idea worktree as its working directory, and returns its structured report
289
+ with `exitCode` (0 for success, 1 for a structured invalid/unavailable report).
290
+ Reports with an unexpected command, idea, event operation, or malformed
291
+ event receipt are rejected rather than treated as successful capabilities.
292
+ `next(route)` calls only that project's `whats-next`; it does not reproduce
293
+ Silvermoon's lifecycle rules. `replay(route)` observes the local event log;
294
+ `appendInteraction(route, { type, message, expectedLength, expectedDigest })`
295
+ passes an exact-log-bound `ping` or `pong` to the project's event command.
296
+ For a legacy v1 project, that event command returns a structured unavailable
297
+ report (`exitCode: 1`); no v2 event support is inferred from `next(route)`.
298
+ Unsupported CLI/report versions, missing installations, and process failures
299
+ are explicit errors. The caller still owns the loop, decision authorization,
300
+ and the safe correlation of delivery and reply observations.
301
+
302
+ For an isolated, opt-in live acceptance run (requires an authenticated
303
+ Copilot CLI), use
304
+ `SILVERMOON_REAL_COPILOT=1 node --test test/integration/copilot-runtime-live.test.ts`.
305
+ The three cases use distinct disposable Git projects and deny unrelated tool
306
+ permissions. They check two sequential `ping`/reply/`pong` handoffs and a
307
+ third after adapter restart; a custom test-only tool with a rejecting Git
308
+ pre-commit hook proves that a diagnostic ping reaches the running session
309
+ without accepting a stale pong. Forcing the SDK process to stop leaves a
310
+ subsequent ping pending instead of blindly resending it. A single adapter also
311
+ isolates two projects. Normal test runs skip the live cases. In-flight
312
+ disconnect recovery, actual production Git repair, and arbitrary tool
313
+ side-effect deduplication are not guaranteed; uncertain work needs operator
314
+ reconciliation.
315
+
158
316
  ## Public Commands
159
317
 
160
318
  ```sh
@@ -162,6 +320,7 @@ silvermoon list-ideas [--state <state>] [--all] [--query <text>] [--created-sinc
162
320
  silvermoon whats-next [idea] [--language <en|en-US|zh|zh-CN>] [--audience <human|agent>] [--trace <file.trace.jsonl>]
163
321
  silvermoon create-idea [--language <tag>] [--audience <human|agent>] [--trace <file.trace.jsonl>]
164
322
  silvermoon check [--remote | --commit <revision> | --staged | --worktree] [--language <en|en-US|zh|zh-CN>] [--audience <human|agent>] [--trace <file.trace.jsonl>]
323
+ silvermoon event <replay|append> <idea> [--input <request.json>] [--after-length <bytes>] [--after-digest <oid>] [--full-history] [--expected-length <bytes>] [--expected-digest <oid>] [--expected-primary <commit>] [--confirm-decision] [--audience <human|agent>]
165
324
  ```
166
325
 
167
326
  Every valid invocation starts one ordered domain-message stream with
@@ -212,9 +371,80 @@ projections:
212
371
  - `response` is a command-specific discriminated union produced only from the
213
372
  intention and final internal observation. Its variants are `blocked`,
214
373
  `choice-required`, `idea-created`, `idea-list`, `next-steps`, and
215
- `validation-result`. It contains the localized summary and any ordered
216
- `nextSteps`, choices, items, validation result, or guidance needed by the
217
- caller.
374
+ `validation-result`, and `event-result`. It contains the localized summary
375
+ and any ordered `nextSteps`, choices, items, validation result, review
376
+ context, or guidance needed by the caller.
377
+
378
+ Dialogue observations and responses also carry the same optional `device`
379
+ advisory. `device.runtime` identifies the running package as `global`, `host`,
380
+ or `source-checkout`; `device.skill` reports personal-link health; and
381
+ `device.update` reports `current`, `available`, `unavailable`,
382
+ `managed-by-host`, or `source-checkout` with cache or registry provenance.
383
+ These fields never enter `problems` or change command success. Snapshot-only
384
+ `check` responses omit `device` so their result depends only on the selected
385
+ project snapshot and explicit primary state.
386
+
387
+ A selected active v2 idea adds a primary-bound `review` object to its
388
+ `next-steps` response only when the exact current phase revision has a matching
389
+ `submit*` event and effective control is upstream:
390
+
391
+ ```json
392
+ {
393
+ "review": {
394
+ "phase": "preparing",
395
+ "decision": "acceptIdeal",
396
+ "revision": {
397
+ "field": "idealRevision",
398
+ "value": "<exact-world-tree-object-id>"
399
+ },
400
+ "primaryCommit": "<fetched-primary-commit>",
401
+ "scopePath": ".silvermoon/ideas/<ULID>/outer/inner/ideal",
402
+ "canonicalDocuments": [
403
+ {
404
+ "role": "current-contract",
405
+ "path": ".silvermoon/ideas/<ULID>/outer/inner/ideal/Idea.md"
406
+ }
407
+ ],
408
+ "presentation": {
409
+ "contentLanguage": "zh-CN",
410
+ "templateLanguage": "zh-CN",
411
+ "requiresLocalization": false,
412
+ "gateLabel": "构想验收",
413
+ "candidateConnector": "位于 primary",
414
+ "labels": {
415
+ "idea": "构想",
416
+ "candidate": "候选版本",
417
+ "reviewFocus": "审阅重点",
418
+ "reviewFiles": "审阅文件",
419
+ "decision": "决定",
420
+ "local": "本地",
421
+ "remote": "线上"
422
+ },
423
+ "documentLabels": {
424
+ "current-contract": "构想契约",
425
+ "ledger": "执行清单"
426
+ },
427
+ "decisionQuestion": "是否接受 `idealRevision=<12-character-reference>` 作为该 IDEA 的构想?"
428
+ }
429
+ }
430
+ }
431
+ ```
432
+
433
+ Implementation and deployment responses bind `acceptInner` or `acceptOuter`
434
+ to their corresponding revision and list the current contract plus `ledger.md`.
435
+ The field is an authoritative index seed and proves only the event-backed
436
+ submission/control precondition, not a human decision. Callers inspect
437
+ `scopePath` and add only supporting files with substantive review content;
438
+ placeholders are omitted. `presentation.contentLanguage` always follows the
439
+ effective idea content language, not `response.language`. English and Chinese
440
+ content receive complete built-in presentation strings. Other canonical BCP 47
441
+ tags use the explicit English `templateLanguage` fallback with
442
+ `requiresLocalization: true`; the Agent localizes every human-visible
443
+ presentation value before rendering and preserves machine identifiers. JSON
444
+ retains full object IDs. When review is actionable, raw Markdown renders a
445
+ 12-character revision reference, primary reference, and the complete
446
+ presentation object in a **Review candidate** section before lifecycle
447
+ instructions.
218
448
 
219
449
  After readiness, an actionable selected idea or successful creation may add
220
450
  content-free `guidance` provenance to the public observation:
@@ -357,11 +587,16 @@ Observations are discriminated by command intent and `state`:
357
587
  current idea document; missing titles render as `-`. It never selects a
358
588
  candidate.
359
589
  - Selected `whats-next` returns `idea-selected` with only `selectedIdea`
360
- (`id`, optional `alias`, lifecycle `state`), including terminal ideas.
361
- Unknown selectors return `idea-not-found` with the same enriched active
362
- `candidates`, not a fabricated selected idea. An actionable selection may
363
- also contain snapshot-bound guidance provenance; captured content is in
364
- the response.
590
+ (`id`, optional `alias`, lifecycle `state`), including terminal ideas. V2
591
+ selections also include `control` (`owner`, nullable `lastTransfer`) and
592
+ `submissions` (`current` plus `ideal`, `inner`, and `outer`). Each phase
593
+ projection identifies its submit/accept pair, current revision, optional
594
+ submitted/accepted revisions, and `unsubmitted`, `submitted`, `accepted`, or
595
+ `stale` state. Active stale submissions project downstream control; completed
596
+ and abandoned ideas project `none`. Unknown selectors return
597
+ `idea-not-found` with the same enriched active `candidates`, not a fabricated
598
+ selected idea. An actionable selection may also contain snapshot-bound
599
+ guidance provenance; captured content is in the response.
365
600
  - `phase-guidance-invalid` means command readiness reached the current
366
601
  actionable phase, but that phase's optional file exists and is invalid. It
367
602
  contains problems and repair instructions, not lifecycle instructions or
@@ -388,12 +623,26 @@ outside navigation; navigation enriches those references after readiness.
388
623
  Problems have only stable `type` and natural-language `summary`; remediation
389
624
  belongs in `response.nextSteps`.
390
625
 
391
- Project setup is ecosystem-neutral. It checks Git, configuration schema
392
- compatibility, and canonical skill content at `.agents/skills/silvermoon`.
393
- CRLF and LF are equivalent for valid UTF-8 skill text so Git checkout settings
394
- cannot create false drift; filenames and every other content change remain
395
- exact. The check does not inspect execution source or require a package manager,
396
- `package.json`, project-local Silvermoon dependency, or `node_modules`.
626
+ Project setup is ecosystem-neutral. It checks Git, configuration schema,
627
+ metadata schema, and layout. It does not inspect execution source, a package
628
+ manager, `package.json`, project-local Silvermoon dependencies, `node_modules`,
629
+ or repository skill paths. Runtime identity, update status, and personal skill
630
+ registration are device facts and do not change a project snapshot result.
631
+
632
+ Complete project observations expose `schemas`, containing the runtime
633
+ capability-manifest version, its release boundary, and one record for every
634
+ discovered config or idea-state file. Each record keeps `validity`
635
+ (`valid`, `invalid`, or `unsupported`) independent from `readiness`
636
+ (`current`, `migration-required`, `migration-unavailable`,
637
+ `runtime-upgrade-required`, or `unknown`). It also names the schema family,
638
+ declared and target versions, and any migration edge. JSON retains current
639
+ records; human-readable output lists only files needing attention.
640
+
641
+ `whats-next` and project writes require the current target. Read-only
642
+ `list-ideas` may inspect a valid historical schema. Snapshot `check` treats a
643
+ valid readable historical schema as valid while still returning its readiness
644
+ record; future or malformed schemas fail validation without guessing their
645
+ contents.
397
646
 
398
647
  `whats-next` checks local conflicts and changes before remote access, then HEAD
399
648
  and upstream identity, then fetch and ancestry. A local branch may have any
@@ -404,8 +653,9 @@ change set without prescribing a particular diff tool. Bare navigation
404
653
  never selects an idea: it always lists every active idea alongside the option
405
654
  to discuss and run `create-idea`.
406
655
 
407
- `create-idea` requires the configured primary branch and upstream plus a clean
408
- worktree, validates optional preparing guidance from the same local `HEAD`,
656
+ `create-idea` requires a local branch whose upstream identifies the configured
657
+ primary repository and branch, plus a clean worktree; the local branch name is
658
+ unrestricted. It validates optional preparing guidance from the same local `HEAD`,
409
659
  then creates one canonical scaffold. It does not fetch, compare remote
410
660
  ancestry, or require local HEAD to match the remote tip. Its optional
411
661
  content-language choice accepts any canonical BCP 47 tag, is normalized before
@@ -421,13 +671,15 @@ creation bounds use `[created-since, created-before)` against the timestamp
421
671
  encoded in each ULID. Sorting defaults to stable newest-first, and limit is
422
672
  applied after filtering and sorting without changing matched counts.
423
673
 
424
- The query validates Git presence, configuration, canonical skill, and the
425
- complete idea layout before filtering. It reads staged, unstaged, and
674
+ The query validates Git presence, configuration, and the complete idea layout
675
+ before filtering. It reads staged, unstaged, and
426
676
  untracked idea changes from the current worktree snapshot but never checks
427
677
  worktree hygiene, branch, upstream, or primary ancestry, and never fetches or
428
- accesses the network. `list-ideas --language <en|en-US|zh|zh-CN>` overrides only
429
- Silvermoon-owned output for that invocation; without it, the project's
430
- resolved output language is used.
678
+ accesses the project remote. Its independent device advisory may query npm
679
+ `latest` only when the successful device cache is at least 24 hours old.
680
+ `list-ideas --language <en|en-US|zh|zh-CN>` overrides only Silvermoon-owned
681
+ output for that invocation; without it, the project's resolved output
682
+ language is used.
431
683
 
432
684
  ## Validation Targets
433
685
 
@@ -436,23 +688,36 @@ resolved output language is used.
436
688
  - `check --worktree` validates the hypothetical commit formed from `HEAD`, the
437
689
  index, unstaged changes, and nonignored untracked files.
438
690
  - `check --staged` validates the index snapshot for a pre-commit hook.
439
- - `check --commit <revision>` validates one local commit snapshot.
440
- - `check --remote` fetches primary using committed coordinates, validates its
441
- immutable tip, and does not audit the history or provenance of retained
442
- revision facts. Unrelated skill or idea findings in local `HEAD` do not block
691
+ - `check --commit <revision>` validates one local commit and its first-parent
692
+ event boundary, without walking older commits.
693
+ - `check --remote` fetches primary using committed coordinates and validates its
694
+ tip and its immediate event boundary for v2. Unrelated skill
695
+ or idea findings in local `HEAD` do not block
443
696
  locating and validating the remote snapshot.
444
697
 
445
698
  Targets are mutually exclusive and never change the caller's branch, index, or
446
699
  worktree. `--remote` may fetch Git objects and records that attempt as an
447
- action. `check` validates the selected snapshot's project contract only:
448
- Git, configuration, canonical skill, idea layout, world revisions, status, and
449
- the complete optional phase guidance directory.
450
- Its result depends on the materialized tree, not commit parents, parent order,
451
- branch, merge/cherry-pick path, or retained decision reachability. A canonical
700
+ action. `check` validates the selected snapshot's project contract: Git,
701
+ configuration, idea layout, world revisions, status, and the complete optional
702
+ phase guidance directory. It does not inspect personal skill registration or
703
+ query npm for runtime freshness.
704
+ For v1 its result depends on the materialized tree, not commit parents, parent
705
+ order, branch, merge/cherry-pick path, or retained decision reachability. A canonical
452
706
  decision revision that differs from the current world is a valid historical
453
707
  fact and naturally derives an earlier lifecycle state; it need not still exist
454
708
  in the local object database. `check` does not check local worktree cleanliness,
455
709
  upstream, or ancestry readiness, route ideas, or give next-step instructions.
710
+ V2 additionally reports `validation.eventHistory`: the fixed primary reference,
711
+ the selected commit's first parent when applicable, and the current
712
+ initialization/migration/append/repair boundary. Local targets use named primary
713
+ tracking refs without fetching; unavailable or conflicting refs fail closed.
714
+ Normal checks do not audit earlier commits; use `check --commit <revision>` to
715
+ inspect a specific historical boundary. History rules depend on each
716
+ base's complete reduction, not the candidate's failure: `ok: true` requires
717
+ its exact byte prefix; definite `ok: false` permits a valid complete repair.
718
+ Missing/invalidly encoded history never grants repair permission.
719
+ The immediate predecessor prevents downgrading a v2 project to v1;
720
+ genuine v1 historical snapshots remain readable without auditing their decisions.
456
721
 
457
722
  Like every public command, `check --json` contains all four projections:
458
723
 
@@ -535,14 +800,18 @@ rendered report or empty-looking output.
535
800
  Runtime checks verify canonical YAML, fixed paths, the three world entries,
536
801
  unique aliases, Git object format, current world tree resolution, phase
537
802
  guidance structure and content, and lifecycle derivation from the selected
538
- snapshot. They do not infer newly made decisions from a parent diff or audit
539
- decision provenance through history.
803
+ snapshot. V2 also checks its state-event transitions and primary history, but
804
+ neither format treats a Git diff as proof of human authorization.
540
805
 
541
806
  ## Schemas
542
807
 
808
+ - [Capability manifest](../schema/capabilities.json)
809
+ - [Capability manifest schema](../schema/capability-manifest.schema.json)
543
810
  - [Command report](../schema/v1/command-report.schema.json)
544
811
  - [Domain message](../schema/v1/domain-message.schema.json)
545
812
  - [Repository configuration](../schema/v1/config.schema.json)
813
+ - [Event project configuration](../schema/v2/config.schema.json)
814
+ - [Idea state event](../schema/v2/idea-event.schema.json)
546
815
  - [User configuration](../schema/v1/user-config.schema.json)
547
816
  - [Idea status](../schema/v1/idea-status.schema.json)
548
817
  - [Shared definitions](../schema/v1/definitions.schema.json)
@@ -3,6 +3,12 @@
3
3
  This repository uses the local [Silvermoon skill](/skills/silvermoon/SKILL.md)
4
4
  and the fixed `.silvermoon/` metadata layout.
5
5
 
6
+ This is Silvermoon's own source repository: every `silvermoon` command below
7
+ means `node bin/silvermoon.js` from the current checkout, also available as
8
+ `pnpm silvermoon`. Never use a global or published package here, and never
9
+ add Silvermoon as its own dependency. Refresh the local skill with
10
+ `pnpm sync:skills`.
11
+
6
12
  ## Authority
7
13
 
8
14
  The shared authority is `https://github.com/shazhou-ww/silvermoon.git` on
@@ -35,7 +41,8 @@ consumer. All three apply the same project and complete idea-layout checks,
35
41
  but their repository readiness differs. `list-ideas` reads the valid local
36
42
  worktree snapshot without hygiene, branch, upstream, network, or ancestry
37
43
  checks. `whats-next` checks local hygiene and remote ancestry. `create-idea`
38
- requires the configured primary branch and upstream plus a clean worktree,
44
+ requires a local branch whose upstream identifies the configured primary
45
+ repository and branch, plus a clean worktree; the local branch name is unrestricted,
39
46
  without fetching or requiring HEAD to match the remote tip. If hygiene blocks
40
47
  explicit creation, perform only that blocking action and then retry
41
48
  `create-idea` so active-idea selection cannot replace the pending create
@@ -52,34 +59,67 @@ canonical BCP 47 tag.
52
59
 
53
60
  `whats-next` may fetch after local readiness passes, but it does not move the
54
61
  worktree, index, branches, or named refs. Human approvals, implementation
55
- acceptance, deployment acceptance, and abandonment are ordinary edits to one
56
- idea `status.yaml` after an explicit decision.
62
+ acceptance, deployment acceptance, and abandonment require an explicit decision.
63
+ For a v1 project, record that decision in the idea's `status.yaml`.
64
+ For a v2 project, including this source repository after its explicitly
65
+ authorized migration, use the controlled
66
+ [event protocol](../skills/silvermoon/references/events.md). Developing v2
67
+ alone does not authorize migration of a checkout.
57
68
 
58
69
  Before requesting a human decision, validate the candidate, synchronize its
59
70
  normal non-force commit to primary, confirm reachability from the refreshed
60
71
  primary, and reobserve the exact world revision and effective content language.
61
72
  This synchronization is Agent work and does not require a lifecycle decision.
62
- Keep the review message short: use that language to state the review focus and
63
- exact decision question, and provide local plus commit-pinned remote links to
64
- the canonical contract, same-world supporting files, ledger, evidence, and key
65
- deliverables. Durable detail belongs in those repository files, not in the
66
- chat message. Render this index as ordinary assistant Markdown. When using an
67
- interactive decision tool, put only the exact question and choices in that
68
- tool; local workspace links in tool-owned surfaces may fail even when the
69
- files exist. In VS Code on Windows, ordinary-message local links use absolute
70
- drive paths with forward slashes and never `file://` URIs.
73
+ For v2, append the current phase's matching `submitIdeal`, `submitInner`, or
74
+ `submitOuter` for that exact synchronized revision, integrate the event through
75
+ the same normal Git path, and reobserve. Do not request the matching acceptance
76
+ while the submission is absent, stale, or effective control is downstream.
77
+ Keep the review message short and follow the latest report's gate instruction.
78
+ Use `response.review.presentation` verbatim when `requiresLocalization` is
79
+ false; when true, localize every human-visible presentation value to its
80
+ `contentLanguage` while preserving machine identifiers. A temporary report
81
+ output language never controls gate prose. Provide local plus commit-pinned
82
+ remote links to the canonical contract, same-world supporting files, ledger,
83
+ evidence, and key deliverables. Durable detail belongs in those repository
84
+ files, not in the chat message. Seed the index from `response.review`, including
85
+ its exact primary commit and canonical documents. In v2, its presence confirms
86
+ that the current exact submission is active and control is upstream; it is
87
+ still not the human decision itself. The Agent adds only identity values, a
88
+ one-sentence review focus, selected review-file links, and host-specific link
89
+ targets in the compact order directed by `response.nextSteps`. Keep the
90
+ complete object IDs internally for event recording. Do not add
91
+ repeated gate-policy explanations or inline inventories of test, CI, deployment,
92
+ or SLO evidence; keep those details in the linked artifacts. List only files
93
+ with substantive review content: Ideal uses `Idea.md` and substantive
94
+ same-world support; Implementation and Deployment each use their corresponding
95
+ contract plus `ledger.md`, with other evidence added only when material. Render the index
96
+ as a standalone, completed ordinary assistant Markdown turn. Never open an
97
+ interactive decision in that same turn because the tool surface may hide queued
98
+ prose. If a later turn uses an interactive decision tool, put only the exact
99
+ question and choices in that tool; local workspace links in tool-owned surfaces
100
+ may fail even when the files exist. If that tool is unavailable or returns no
101
+ choice, do not retry or repeat the rationale against unchanged state. In VS Code
102
+ on Windows, ordinary-message local links use absolute drive paths with forward
103
+ slashes and never `file://` URIs.
71
104
 
72
105
  After an explicit decision, change only the corresponding status fact,
73
106
  validate it, prefer a status-only commit when practical, synchronize it to
74
107
  primary, and reobserve the resulting lifecycle state.
75
108
 
76
- The required idea-root `ledger.md` is the Agent continuation surface. After
77
- repository hygiene and lifecycle routing, combine the reported
78
- `response.nextSteps`, world contracts, and unchecked Implementation or
79
- Deployment ledger entries to infer the next work. Update matching world
80
- headings and ledger entries together, and reset a checked item when its
81
- requirement or proof changes materially. Ledger checkboxes are Agent notes only
82
- and never imply approval or acceptance.
109
+ The required idea-root `ledger.md` is an execution checklist only, not
110
+ operational prose, a decision log, or a discussion record. After repository
111
+ hygiene and lifecycle routing, combine the reported `response.nextSteps`, world
112
+ contracts, and unchecked Implementation or Deployment ledger entries to infer
113
+ the next work. Do not record work notes or explanations in `ledger.md`. Update
114
+ matching world headings and ledger entries together, and reset a checked item
115
+ when its requirement or proof changes materially. Ledger checkboxes are Agent
116
+ notes only and never imply approval or acceptance.
117
+
118
+ Before the Ideal gate, preparation must replace the Implementation and
119
+ Deployment scaffold placeholders with lightweight first versions of no more
120
+ than three high-level steps and three observable criteria each, mirrored
121
+ unchecked in the ledger. They are required feasibility context but remain
122
+ outside the `acceptIdeal` review and decision scope.
83
123
 
84
124
  When a successful selected lifecycle report or `create-idea` report includes
85
125
  `response.guidance`, consume only that snapshot-bound field.
@@ -116,7 +156,8 @@ branches.
116
156
  `silvermoon check --remote` for complete primary-history evidence.
117
157
  - Use `silvermoon check --staged` in pre-commit hooks: default `check` validates
118
158
  committed `HEAD`, not the pending index. `check` validates only the chosen
119
- project's snapshot, not repository synchronization or idea navigation.
159
+ project's snapshot and v2 primary event history, not repository
160
+ synchronization or idea navigation.
120
161
  Only exit code `0` permits the commit; `1` means invalid or unavailable and
121
162
  `2` means invalid usage. Its JSON uses all four projections; only
122
163
  `check --remote` normally records an action.