@yohakuforce/core 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 (511) hide show
  1. package/README.md +65 -0
  2. package/dist/adapters/dx-mcp/dx-mcp-source-adapter.d.ts +25 -0
  3. package/dist/adapters/dx-mcp/dx-mcp-source-adapter.d.ts.map +1 -0
  4. package/dist/adapters/dx-mcp/dx-mcp-source-adapter.js +45 -0
  5. package/dist/adapters/dx-mcp/dx-mcp-source-adapter.js.map +1 -0
  6. package/dist/adapters/dx-mcp/index.d.ts +3 -0
  7. package/dist/adapters/dx-mcp/index.d.ts.map +1 -0
  8. package/dist/adapters/dx-mcp/index.js +2 -0
  9. package/dist/adapters/dx-mcp/index.js.map +1 -0
  10. package/dist/adapters/local/index.d.ts +5 -0
  11. package/dist/adapters/local/index.d.ts.map +1 -0
  12. package/dist/adapters/local/index.js +3 -0
  13. package/dist/adapters/local/index.js.map +1 -0
  14. package/dist/adapters/local/local-source-adapter.d.ts +19 -0
  15. package/dist/adapters/local/local-source-adapter.d.ts.map +1 -0
  16. package/dist/adapters/local/local-source-adapter.js +214 -0
  17. package/dist/adapters/local/local-source-adapter.js.map +1 -0
  18. package/dist/adapters/local/sfdx-project.d.ts +14 -0
  19. package/dist/adapters/local/sfdx-project.d.ts.map +1 -0
  20. package/dist/adapters/local/sfdx-project.js +76 -0
  21. package/dist/adapters/local/sfdx-project.js.map +1 -0
  22. package/dist/change-summary/index.d.ts +4 -0
  23. package/dist/change-summary/index.d.ts.map +1 -0
  24. package/dist/change-summary/index.js +3 -0
  25. package/dist/change-summary/index.js.map +1 -0
  26. package/dist/change-summary/schema.json +152 -0
  27. package/dist/change-summary/types.d.ts +52 -0
  28. package/dist/change-summary/types.d.ts.map +1 -0
  29. package/dist/change-summary/types.js +18 -0
  30. package/dist/change-summary/types.js.map +1 -0
  31. package/dist/change-summary/validate.d.ts +8 -0
  32. package/dist/change-summary/validate.d.ts.map +1 -0
  33. package/dist/change-summary/validate.js +35 -0
  34. package/dist/change-summary/validate.js.map +1 -0
  35. package/dist/cli.d.ts +3 -0
  36. package/dist/cli.d.ts.map +1 -0
  37. package/dist/cli.js +945 -0
  38. package/dist/cli.js.map +1 -0
  39. package/dist/consistency/check.d.ts +4 -0
  40. package/dist/consistency/check.d.ts.map +1 -0
  41. package/dist/consistency/check.js +70 -0
  42. package/dist/consistency/check.js.map +1 -0
  43. package/dist/consistency/index.d.ts +4 -0
  44. package/dist/consistency/index.d.ts.map +1 -0
  45. package/dist/consistency/index.js +3 -0
  46. package/dist/consistency/index.js.map +1 -0
  47. package/dist/consistency/types.d.ts +29 -0
  48. package/dist/consistency/types.d.ts.map +1 -0
  49. package/dist/consistency/types.js +12 -0
  50. package/dist/consistency/types.js.map +1 -0
  51. package/dist/diff/classify-files.d.ts +9 -0
  52. package/dist/diff/classify-files.d.ts.map +1 -0
  53. package/dist/diff/classify-files.js +105 -0
  54. package/dist/diff/classify-files.js.map +1 -0
  55. package/dist/diff/diff.d.ts +11 -0
  56. package/dist/diff/diff.d.ts.map +1 -0
  57. package/dist/diff/diff.js +69 -0
  58. package/dist/diff/diff.js.map +1 -0
  59. package/dist/diff/git.d.ts +28 -0
  60. package/dist/diff/git.d.ts.map +1 -0
  61. package/dist/diff/git.js +115 -0
  62. package/dist/diff/git.js.map +1 -0
  63. package/dist/diff/index.d.ts +7 -0
  64. package/dist/diff/index.d.ts.map +1 -0
  65. package/dist/diff/index.js +5 -0
  66. package/dist/diff/index.js.map +1 -0
  67. package/dist/diff/types.d.ts +28 -0
  68. package/dist/diff/types.d.ts.map +1 -0
  69. package/dist/diff/types.js +4 -0
  70. package/dist/diff/types.js.map +1 -0
  71. package/dist/explain/block-registry.d.ts +17 -0
  72. package/dist/explain/block-registry.d.ts.map +1 -0
  73. package/dist/explain/block-registry.js +73 -0
  74. package/dist/explain/block-registry.js.map +1 -0
  75. package/dist/explain/index.d.ts +22 -0
  76. package/dist/explain/index.d.ts.map +1 -0
  77. package/dist/explain/index.js +128 -0
  78. package/dist/explain/index.js.map +1 -0
  79. package/dist/graph/builder.d.ts +9 -0
  80. package/dist/graph/builder.d.ts.map +1 -0
  81. package/dist/graph/builder.js +276 -0
  82. package/dist/graph/builder.js.map +1 -0
  83. package/dist/graph/dependencies.d.ts +5 -0
  84. package/dist/graph/dependencies.d.ts.map +1 -0
  85. package/dist/graph/dependencies.js +38 -0
  86. package/dist/graph/dependencies.js.map +1 -0
  87. package/dist/graph/extractors/apex-body.d.ts +5 -0
  88. package/dist/graph/extractors/apex-body.d.ts.map +1 -0
  89. package/dist/graph/extractors/apex-body.js +289 -0
  90. package/dist/graph/extractors/apex-body.js.map +1 -0
  91. package/dist/graph/extractors/apex-class.d.ts +5 -0
  92. package/dist/graph/extractors/apex-class.d.ts.map +1 -0
  93. package/dist/graph/extractors/apex-class.js +43 -0
  94. package/dist/graph/extractors/apex-class.js.map +1 -0
  95. package/dist/graph/extractors/apex-control-flow.d.ts +33 -0
  96. package/dist/graph/extractors/apex-control-flow.d.ts.map +1 -0
  97. package/dist/graph/extractors/apex-control-flow.js +432 -0
  98. package/dist/graph/extractors/apex-control-flow.js.map +1 -0
  99. package/dist/graph/extractors/apex-trigger.d.ts +4 -0
  100. package/dist/graph/extractors/apex-trigger.d.ts.map +1 -0
  101. package/dist/graph/extractors/apex-trigger.js +40 -0
  102. package/dist/graph/extractors/apex-trigger.js.map +1 -0
  103. package/dist/graph/extractors/approval-process.d.ts +4 -0
  104. package/dist/graph/extractors/approval-process.d.ts.map +1 -0
  105. package/dist/graph/extractors/approval-process.js +103 -0
  106. package/dist/graph/extractors/approval-process.js.map +1 -0
  107. package/dist/graph/extractors/aura-bundle.d.ts +4 -0
  108. package/dist/graph/extractors/aura-bundle.d.ts.map +1 -0
  109. package/dist/graph/extractors/aura-bundle.js +77 -0
  110. package/dist/graph/extractors/aura-bundle.js.map +1 -0
  111. package/dist/graph/extractors/custom-application.d.ts +4 -0
  112. package/dist/graph/extractors/custom-application.d.ts.map +1 -0
  113. package/dist/graph/extractors/custom-application.js +55 -0
  114. package/dist/graph/extractors/custom-application.js.map +1 -0
  115. package/dist/graph/extractors/custom-metadata-record.d.ts +4 -0
  116. package/dist/graph/extractors/custom-metadata-record.d.ts.map +1 -0
  117. package/dist/graph/extractors/custom-metadata-record.js +53 -0
  118. package/dist/graph/extractors/custom-metadata-record.js.map +1 -0
  119. package/dist/graph/extractors/field.d.ts +4 -0
  120. package/dist/graph/extractors/field.d.ts.map +1 -0
  121. package/dist/graph/extractors/field.js +36 -0
  122. package/dist/graph/extractors/field.js.map +1 -0
  123. package/dist/graph/extractors/flexi-page.d.ts +4 -0
  124. package/dist/graph/extractors/flexi-page.d.ts.map +1 -0
  125. package/dist/graph/extractors/flexi-page.js +46 -0
  126. package/dist/graph/extractors/flexi-page.js.map +1 -0
  127. package/dist/graph/extractors/flow-body.d.ts +3 -0
  128. package/dist/graph/extractors/flow-body.d.ts.map +1 -0
  129. package/dist/graph/extractors/flow-body.js +144 -0
  130. package/dist/graph/extractors/flow-body.js.map +1 -0
  131. package/dist/graph/extractors/flow.d.ts +4 -0
  132. package/dist/graph/extractors/flow.d.ts.map +1 -0
  133. package/dist/graph/extractors/flow.js +20 -0
  134. package/dist/graph/extractors/flow.js.map +1 -0
  135. package/dist/graph/extractors/index.d.ts +24 -0
  136. package/dist/graph/extractors/index.d.ts.map +1 -0
  137. package/dist/graph/extractors/index.js +23 -0
  138. package/dist/graph/extractors/index.js.map +1 -0
  139. package/dist/graph/extractors/layout.d.ts +4 -0
  140. package/dist/graph/extractors/layout.d.ts.map +1 -0
  141. package/dist/graph/extractors/layout.js +89 -0
  142. package/dist/graph/extractors/layout.js.map +1 -0
  143. package/dist/graph/extractors/lwc.d.ts +4 -0
  144. package/dist/graph/extractors/lwc.d.ts.map +1 -0
  145. package/dist/graph/extractors/lwc.js +170 -0
  146. package/dist/graph/extractors/lwc.js.map +1 -0
  147. package/dist/graph/extractors/named-credential.d.ts +9 -0
  148. package/dist/graph/extractors/named-credential.d.ts.map +1 -0
  149. package/dist/graph/extractors/named-credential.js +38 -0
  150. package/dist/graph/extractors/named-credential.js.map +1 -0
  151. package/dist/graph/extractors/object.d.ts +4 -0
  152. package/dist/graph/extractors/object.d.ts.map +1 -0
  153. package/dist/graph/extractors/object.js +16 -0
  154. package/dist/graph/extractors/object.js.map +1 -0
  155. package/dist/graph/extractors/permission-set-body.d.ts +3 -0
  156. package/dist/graph/extractors/permission-set-body.d.ts.map +1 -0
  157. package/dist/graph/extractors/permission-set-body.js +80 -0
  158. package/dist/graph/extractors/permission-set-body.js.map +1 -0
  159. package/dist/graph/extractors/permission-set.d.ts +4 -0
  160. package/dist/graph/extractors/permission-set.d.ts.map +1 -0
  161. package/dist/graph/extractors/permission-set.js +17 -0
  162. package/dist/graph/extractors/permission-set.js.map +1 -0
  163. package/dist/graph/extractors/profile.d.ts +4 -0
  164. package/dist/graph/extractors/profile.d.ts.map +1 -0
  165. package/dist/graph/extractors/profile.js +15 -0
  166. package/dist/graph/extractors/profile.js.map +1 -0
  167. package/dist/graph/extractors/record-type.d.ts +4 -0
  168. package/dist/graph/extractors/record-type.d.ts.map +1 -0
  169. package/dist/graph/extractors/record-type.js +19 -0
  170. package/dist/graph/extractors/record-type.js.map +1 -0
  171. package/dist/graph/extractors/remote-site-setting.d.ts +4 -0
  172. package/dist/graph/extractors/remote-site-setting.d.ts.map +1 -0
  173. package/dist/graph/extractors/remote-site-setting.js +15 -0
  174. package/dist/graph/extractors/remote-site-setting.js.map +1 -0
  175. package/dist/graph/extractors/sharing-rules.d.ts +8 -0
  176. package/dist/graph/extractors/sharing-rules.d.ts.map +1 -0
  177. package/dist/graph/extractors/sharing-rules.js +122 -0
  178. package/dist/graph/extractors/sharing-rules.js.map +1 -0
  179. package/dist/graph/extractors/types.d.ts +8 -0
  180. package/dist/graph/extractors/types.d.ts.map +1 -0
  181. package/dist/graph/extractors/types.js +2 -0
  182. package/dist/graph/extractors/types.js.map +1 -0
  183. package/dist/graph/extractors/validation-rule.d.ts +4 -0
  184. package/dist/graph/extractors/validation-rule.d.ts.map +1 -0
  185. package/dist/graph/extractors/validation-rule.js +19 -0
  186. package/dist/graph/extractors/validation-rule.js.map +1 -0
  187. package/dist/graph/extractors/visualforce-component.d.ts +4 -0
  188. package/dist/graph/extractors/visualforce-component.d.ts.map +1 -0
  189. package/dist/graph/extractors/visualforce-component.js +90 -0
  190. package/dist/graph/extractors/visualforce-component.js.map +1 -0
  191. package/dist/graph/extractors/visualforce-page.d.ts +4 -0
  192. package/dist/graph/extractors/visualforce-page.d.ts.map +1 -0
  193. package/dist/graph/extractors/visualforce-page.js +92 -0
  194. package/dist/graph/extractors/visualforce-page.js.map +1 -0
  195. package/dist/graph/index.d.ts +8 -0
  196. package/dist/graph/index.d.ts.map +1 -0
  197. package/dist/graph/index.js +5 -0
  198. package/dist/graph/index.js.map +1 -0
  199. package/dist/graph/parse-xml.d.ts +5 -0
  200. package/dist/graph/parse-xml.d.ts.map +1 -0
  201. package/dist/graph/parse-xml.js +39 -0
  202. package/dist/graph/parse-xml.js.map +1 -0
  203. package/dist/graph/sqlite-reader.d.ts +33 -0
  204. package/dist/graph/sqlite-reader.d.ts.map +1 -0
  205. package/dist/graph/sqlite-reader.js +445 -0
  206. package/dist/graph/sqlite-reader.js.map +1 -0
  207. package/dist/graph/sqlite-store.d.ts +78 -0
  208. package/dist/graph/sqlite-store.d.ts.map +1 -0
  209. package/dist/graph/sqlite-store.js +683 -0
  210. package/dist/graph/sqlite-store.js.map +1 -0
  211. package/dist/index.d.ts +33 -0
  212. package/dist/index.d.ts.map +1 -0
  213. package/dist/index.js +18 -0
  214. package/dist/index.js.map +1 -0
  215. package/dist/init/index.d.ts +4 -0
  216. package/dist/init/index.d.ts.map +1 -0
  217. package/dist/init/index.js +3 -0
  218. package/dist/init/index.js.map +1 -0
  219. package/dist/init/init.d.ts +9 -0
  220. package/dist/init/init.d.ts.map +1 -0
  221. package/dist/init/init.js +92 -0
  222. package/dist/init/init.js.map +1 -0
  223. package/dist/init/types.d.ts +37 -0
  224. package/dist/init/types.d.ts.map +1 -0
  225. package/dist/init/types.js +59 -0
  226. package/dist/init/types.js.map +1 -0
  227. package/dist/merge/index.d.ts +6 -0
  228. package/dist/merge/index.d.ts.map +1 -0
  229. package/dist/merge/index.js +5 -0
  230. package/dist/merge/index.js.map +1 -0
  231. package/dist/merge/markers.d.ts +8 -0
  232. package/dist/merge/markers.d.ts.map +1 -0
  233. package/dist/merge/markers.js +30 -0
  234. package/dist/merge/markers.js.map +1 -0
  235. package/dist/merge/merge.d.ts +12 -0
  236. package/dist/merge/merge.d.ts.map +1 -0
  237. package/dist/merge/merge.js +116 -0
  238. package/dist/merge/merge.js.map +1 -0
  239. package/dist/merge/parser.d.ts +5 -0
  240. package/dist/merge/parser.d.ts.map +1 -0
  241. package/dist/merge/parser.js +63 -0
  242. package/dist/merge/parser.js.map +1 -0
  243. package/dist/merge/validator.d.ts +15 -0
  244. package/dist/merge/validator.d.ts.map +1 -0
  245. package/dist/merge/validator.js +64 -0
  246. package/dist/merge/validator.js.map +1 -0
  247. package/dist/metrics/aggregate.d.ts +11 -0
  248. package/dist/metrics/aggregate.d.ts.map +1 -0
  249. package/dist/metrics/aggregate.js +51 -0
  250. package/dist/metrics/aggregate.js.map +1 -0
  251. package/dist/metrics/index.d.ts +7 -0
  252. package/dist/metrics/index.d.ts.map +1 -0
  253. package/dist/metrics/index.js +4 -0
  254. package/dist/metrics/index.js.map +1 -0
  255. package/dist/metrics/store.d.ts +19 -0
  256. package/dist/metrics/store.d.ts.map +1 -0
  257. package/dist/metrics/store.js +69 -0
  258. package/dist/metrics/store.js.map +1 -0
  259. package/dist/metrics/types.d.ts +32 -0
  260. package/dist/metrics/types.d.ts.map +1 -0
  261. package/dist/metrics/types.js +38 -0
  262. package/dist/metrics/types.js.map +1 -0
  263. package/dist/onboarding/context-map.d.ts +15 -0
  264. package/dist/onboarding/context-map.d.ts.map +1 -0
  265. package/dist/onboarding/context-map.js +138 -0
  266. package/dist/onboarding/context-map.js.map +1 -0
  267. package/dist/onboarding/faq.d.ts +24 -0
  268. package/dist/onboarding/faq.d.ts.map +1 -0
  269. package/dist/onboarding/faq.js +127 -0
  270. package/dist/onboarding/faq.js.map +1 -0
  271. package/dist/onboarding/index.d.ts +9 -0
  272. package/dist/onboarding/index.d.ts.map +1 -0
  273. package/dist/onboarding/index.js +5 -0
  274. package/dist/onboarding/index.js.map +1 -0
  275. package/dist/onboarding/state.d.ts +15 -0
  276. package/dist/onboarding/state.d.ts.map +1 -0
  277. package/dist/onboarding/state.js +92 -0
  278. package/dist/onboarding/state.js.map +1 -0
  279. package/dist/onboarding/types.d.ts +38 -0
  280. package/dist/onboarding/types.d.ts.map +1 -0
  281. package/dist/onboarding/types.js +13 -0
  282. package/dist/onboarding/types.js.map +1 -0
  283. package/dist/release/extract-manual-steps.d.ts +16 -0
  284. package/dist/release/extract-manual-steps.d.ts.map +1 -0
  285. package/dist/release/extract-manual-steps.js +164 -0
  286. package/dist/release/extract-manual-steps.js.map +1 -0
  287. package/dist/release/index.d.ts +4 -0
  288. package/dist/release/index.d.ts.map +1 -0
  289. package/dist/release/index.js +3 -0
  290. package/dist/release/index.js.map +1 -0
  291. package/dist/release/schema.json +142 -0
  292. package/dist/release/types.d.ts +39 -0
  293. package/dist/release/types.d.ts.map +1 -0
  294. package/dist/release/types.js +4 -0
  295. package/dist/release/types.js.map +1 -0
  296. package/dist/release/validate.d.ts +8 -0
  297. package/dist/release/validate.d.ts.map +1 -0
  298. package/dist/release/validate.js +35 -0
  299. package/dist/release/validate.js.map +1 -0
  300. package/dist/render/approval-mermaid.d.ts +3 -0
  301. package/dist/render/approval-mermaid.d.ts.map +1 -0
  302. package/dist/render/approval-mermaid.js +69 -0
  303. package/dist/render/approval-mermaid.js.map +1 -0
  304. package/dist/render/archive.d.ts +2 -0
  305. package/dist/render/archive.d.ts.map +1 -0
  306. package/dist/render/archive.js +32 -0
  307. package/dist/render/archive.js.map +1 -0
  308. package/dist/render/concerns.d.ts +11 -0
  309. package/dist/render/concerns.d.ts.map +1 -0
  310. package/dist/render/concerns.js +83 -0
  311. package/dist/render/concerns.js.map +1 -0
  312. package/dist/render/er-diagram.d.ts +3 -0
  313. package/dist/render/er-diagram.d.ts.map +1 -0
  314. package/dist/render/er-diagram.js +79 -0
  315. package/dist/render/er-diagram.js.map +1 -0
  316. package/dist/render/eta-engine.d.ts +2 -0
  317. package/dist/render/eta-engine.d.ts.map +1 -0
  318. package/dist/render/eta-engine.js +39 -0
  319. package/dist/render/eta-engine.js.map +1 -0
  320. package/dist/render/flow-flowchart.d.ts +4 -0
  321. package/dist/render/flow-flowchart.d.ts.map +1 -0
  322. package/dist/render/flow-flowchart.js +59 -0
  323. package/dist/render/flow-flowchart.js.map +1 -0
  324. package/dist/render/flow-sequence-table.d.ts +11 -0
  325. package/dist/render/flow-sequence-table.d.ts.map +1 -0
  326. package/dist/render/flow-sequence-table.js +88 -0
  327. package/dist/render/flow-sequence-table.js.map +1 -0
  328. package/dist/render/formula.d.ts +33 -0
  329. package/dist/render/formula.d.ts.map +1 -0
  330. package/dist/render/formula.js +381 -0
  331. package/dist/render/formula.js.map +1 -0
  332. package/dist/render/index.d.ts +6 -0
  333. package/dist/render/index.d.ts.map +1 -0
  334. package/dist/render/index.js +5 -0
  335. package/dist/render/index.js.map +1 -0
  336. package/dist/render/intra-class-call-graph.d.ts +3 -0
  337. package/dist/render/intra-class-call-graph.d.ts.map +1 -0
  338. package/dist/render/intra-class-call-graph.js +32 -0
  339. package/dist/render/intra-class-call-graph.js.map +1 -0
  340. package/dist/render/mermaid.d.ts +6 -0
  341. package/dist/render/mermaid.d.ts.map +1 -0
  342. package/dist/render/mermaid.js +99 -0
  343. package/dist/render/mermaid.js.map +1 -0
  344. package/dist/render/method-flowchart.d.ts +15 -0
  345. package/dist/render/method-flowchart.d.ts.map +1 -0
  346. package/dist/render/method-flowchart.js +232 -0
  347. package/dist/render/method-flowchart.js.map +1 -0
  348. package/dist/render/method-summary-table.d.ts +17 -0
  349. package/dist/render/method-summary-table.d.ts.map +1 -0
  350. package/dist/render/method-summary-table.js +189 -0
  351. package/dist/render/method-summary-table.js.map +1 -0
  352. package/dist/render/render.d.ts +37 -0
  353. package/dist/render/render.d.ts.map +1 -0
  354. package/dist/render/render.js +491 -0
  355. package/dist/render/render.js.map +1 -0
  356. package/dist/render/summary.d.ts +21 -0
  357. package/dist/render/summary.d.ts.map +1 -0
  358. package/dist/render/summary.js +542 -0
  359. package/dist/render/summary.js.map +1 -0
  360. package/dist/render/templates/apex-class.eta +204 -0
  361. package/dist/render/templates/apex-trigger.eta +143 -0
  362. package/dist/render/templates/approval-process.eta +118 -0
  363. package/dist/render/templates/aura-bundle.eta +47 -0
  364. package/dist/render/templates/custom-application.eta +44 -0
  365. package/dist/render/templates/custom-metadata-record.eta +37 -0
  366. package/dist/render/templates/executive-risks.eta +56 -0
  367. package/dist/render/templates/executive-summary.eta +68 -0
  368. package/dist/render/templates/flexi-page.eta +47 -0
  369. package/dist/render/templates/flow.eta +166 -0
  370. package/dist/render/templates/layout.eta +68 -0
  371. package/dist/render/templates/lwc.eta +118 -0
  372. package/dist/render/templates/named-credential.eta +30 -0
  373. package/dist/render/templates/object.eta +68 -0
  374. package/dist/render/templates/permission-set.eta +80 -0
  375. package/dist/render/templates/profile.eta +78 -0
  376. package/dist/render/templates/record-type.eta +23 -0
  377. package/dist/render/templates/remote-site-setting.eta +23 -0
  378. package/dist/render/templates/sharing-rule.eta +50 -0
  379. package/dist/render/templates/system-index.eta +52 -0
  380. package/dist/render/templates/system-overview.eta +37 -0
  381. package/dist/render/templates/validation-rule.eta +55 -0
  382. package/dist/render/templates/visualforce-component.eta +52 -0
  383. package/dist/render/templates/visualforce-page.eta +76 -0
  384. package/dist/render/trigger-processing-summary.d.ts +12 -0
  385. package/dist/render/trigger-processing-summary.d.ts.map +1 -0
  386. package/dist/render/trigger-processing-summary.js +94 -0
  387. package/dist/render/trigger-processing-summary.js.map +1 -0
  388. package/dist/sarif/index.d.ts +3 -0
  389. package/dist/sarif/index.d.ts.map +1 -0
  390. package/dist/sarif/index.js +2 -0
  391. package/dist/sarif/index.js.map +1 -0
  392. package/dist/sarif/parse.d.ts +7 -0
  393. package/dist/sarif/parse.d.ts.map +1 -0
  394. package/dist/sarif/parse.js +55 -0
  395. package/dist/sarif/parse.js.map +1 -0
  396. package/dist/sarif/types.d.ts +43 -0
  397. package/dist/sarif/types.d.ts.map +1 -0
  398. package/dist/sarif/types.js +4 -0
  399. package/dist/sarif/types.js.map +1 -0
  400. package/dist/scaffold/.agents/README.md +12 -0
  401. package/dist/scaffold/.agents/knowledge/INDEX.md +52 -0
  402. package/dist/scaffold/.agents/knowledge/README.md +29 -0
  403. package/dist/scaffold/.agents/knowledge/decisions/.gitkeep +0 -0
  404. package/dist/scaffold/.agents/knowledge/improvements/.gitkeep +0 -0
  405. package/dist/scaffold/.agents/knowledge/pitfalls/.gitkeep +0 -0
  406. package/dist/scaffold/.agents/knowledge/retrospectives/.gitkeep +0 -0
  407. package/dist/scaffold/.agents/knowledge/wins/.gitkeep +0 -0
  408. package/dist/scaffold/.agents/templates/.gitkeep +0 -0
  409. package/dist/scaffold/.agents/templates/README.md +19 -0
  410. package/dist/scaffold/.agents/templates/decision.md +39 -0
  411. package/dist/scaffold/.agents/templates/improvement.md +33 -0
  412. package/dist/scaffold/.agents/templates/pitfall.md +33 -0
  413. package/dist/scaffold/.agents/templates/retrospective.md +61 -0
  414. package/dist/scaffold/.agents/templates/win.md +28 -0
  415. package/dist/scaffold/.claude/README.md +11 -0
  416. package/dist/scaffold/.claude/agents/.gitkeep +0 -0
  417. package/dist/scaffold/.claude/agents/apex-query-tracer.md.eta +199 -0
  418. package/dist/scaffold/.claude/agents/automation-classifier.md.eta +39 -0
  419. package/dist/scaffold/.claude/agents/batch-calculator.md.eta +209 -0
  420. package/dist/scaffold/.claude/agents/cascade-tracer.md.eta +139 -0
  421. package/dist/scaffold/.claude/agents/customer-impact-explainer.md.eta +96 -0
  422. package/dist/scaffold/.claude/agents/data-model-classifier.md.eta +84 -0
  423. package/dist/scaffold/.claude/agents/explain-writer.md.eta +104 -0
  424. package/dist/scaffold/.claude/agents/flow-query-tracer.md.eta +211 -0
  425. package/dist/scaffold/.claude/agents/graph-querier.md.eta +47 -0
  426. package/dist/scaffold/.claude/agents/logic-classifier.md.eta +36 -0
  427. package/dist/scaffold/.claude/agents/manual-step-extractor.md.eta +72 -0
  428. package/dist/scaffold/.claude/agents/object-documenter.md.eta +66 -0
  429. package/dist/scaffold/.claude/agents/onboarding-guide.md.eta +77 -0
  430. package/dist/scaffold/.claude/agents/permission-classifier.md.eta +32 -0
  431. package/dist/scaffold/.claude/agents/release-advisor.md.eta +96 -0
  432. package/dist/scaffold/.claude/agents/release-composer.md.eta +106 -0
  433. package/dist/scaffold/.claude/agents/review-assistant.md.eta +72 -0
  434. package/dist/scaffold/.claude/agents/rollback-drafter.md.eta +95 -0
  435. package/dist/scaffold/.claude/agents/ui-classifier.md.eta +31 -0
  436. package/dist/scaffold/.claude/commands/.gitkeep +0 -0
  437. package/dist/scaffold/.claude/commands/analyze-batch-limits.md.eta +309 -0
  438. package/dist/scaffold/.claude/commands/change-summary.md.eta +79 -0
  439. package/dist/scaffold/.claude/commands/classify-diff.md.eta +107 -0
  440. package/dist/scaffold/.claude/commands/explain.md.eta +63 -0
  441. package/dist/scaffold/.claude/commands/impact.md.eta +67 -0
  442. package/dist/scaffold/.claude/commands/manual-steps.md.eta +62 -0
  443. package/dist/scaffold/.claude/commands/onboard.md.eta +107 -0
  444. package/dist/scaffold/.claude/commands/release-prep.md.eta +147 -0
  445. package/dist/scaffold/.claude/commands/yohaku-explain.md.eta +81 -0
  446. package/dist/scaffold/.claude/settings.json.eta +59 -0
  447. package/dist/scaffold/.yohaku/context-map.yaml.eta +56 -0
  448. package/dist/scaffold/.yohaku/secrets-rules.yaml.eta +44 -0
  449. package/dist/scaffold/AGENTS.md.eta +147 -0
  450. package/dist/scaffold/CLAUDE.md.eta +121 -0
  451. package/dist/scaffold/README.md +37 -0
  452. package/dist/schema/graph.schema.json +446 -0
  453. package/dist/schema/validate.d.ts +8 -0
  454. package/dist/schema/validate.d.ts.map +1 -0
  455. package/dist/schema/validate.js +49 -0
  456. package/dist/schema/validate.js.map +1 -0
  457. package/dist/secrets/apply.d.ts +17 -0
  458. package/dist/secrets/apply.d.ts.map +1 -0
  459. package/dist/secrets/apply.js +44 -0
  460. package/dist/secrets/apply.js.map +1 -0
  461. package/dist/secrets/index.d.ts +7 -0
  462. package/dist/secrets/index.d.ts.map +1 -0
  463. package/dist/secrets/index.js +4 -0
  464. package/dist/secrets/index.js.map +1 -0
  465. package/dist/secrets/load.d.ts +16 -0
  466. package/dist/secrets/load.d.ts.map +1 -0
  467. package/dist/secrets/load.js +136 -0
  468. package/dist/secrets/load.js.map +1 -0
  469. package/dist/secrets/mask.d.ts +15 -0
  470. package/dist/secrets/mask.d.ts.map +1 -0
  471. package/dist/secrets/mask.js +34 -0
  472. package/dist/secrets/mask.js.map +1 -0
  473. package/dist/secrets/rules.d.ts +10 -0
  474. package/dist/secrets/rules.d.ts.map +1 -0
  475. package/dist/secrets/rules.js +47 -0
  476. package/dist/secrets/rules.js.map +1 -0
  477. package/dist/types/graph.d.ts +508 -0
  478. package/dist/types/graph.d.ts.map +1 -0
  479. package/dist/types/graph.js +9 -0
  480. package/dist/types/graph.js.map +1 -0
  481. package/dist/types/render.d.ts +26 -0
  482. package/dist/types/render.d.ts.map +1 -0
  483. package/dist/types/render.js +10 -0
  484. package/dist/types/render.js.map +1 -0
  485. package/dist/types/source-adapter.d.ts +26 -0
  486. package/dist/types/source-adapter.d.ts.map +1 -0
  487. package/dist/types/source-adapter.js +11 -0
  488. package/dist/types/source-adapter.js.map +1 -0
  489. package/dist/util/build-lock.d.ts +35 -0
  490. package/dist/util/build-lock.d.ts.map +1 -0
  491. package/dist/util/build-lock.js +72 -0
  492. package/dist/util/build-lock.js.map +1 -0
  493. package/dist/util/hash.d.ts +3 -0
  494. package/dist/util/hash.d.ts.map +1 -0
  495. package/dist/util/hash.js +13 -0
  496. package/dist/util/hash.js.map +1 -0
  497. package/dist/util/path-guard.d.ts +16 -0
  498. package/dist/util/path-guard.d.ts.map +1 -0
  499. package/dist/util/path-guard.js +40 -0
  500. package/dist/util/path-guard.js.map +1 -0
  501. package/dist/util/timing-log.d.ts +28 -0
  502. package/dist/util/timing-log.d.ts.map +1 -0
  503. package/dist/util/timing-log.js +38 -0
  504. package/dist/util/timing-log.js.map +1 -0
  505. package/dist/util/walk.d.ts +10 -0
  506. package/dist/util/walk.d.ts.map +1 -0
  507. package/dist/util/walk.js +45 -0
  508. package/dist/util/walk.js.map +1 -0
  509. package/package.json +48 -0
  510. package/src/schema/graph.schema.json +446 -0
  511. package/src/schema/validate.ts +57 -0
@@ -0,0 +1,68 @@
1
+ # Executive Summary — Salesforce 構築物の全体像
2
+
3
+ <!-- DETERMINISTIC_START id="meta" -->
4
+ - 集計日時: <%= it.builtAt %>
5
+ - yohaku version: <%= it.yohakuVersion %>
6
+ - Salesforce API version: <%= it.salesforceApiVersion %>
7
+ <!-- DETERMINISTIC_END id="meta" -->
8
+
9
+ <!-- DETERMINISTIC_START id="footprint" -->
10
+ ## 構築規模 (上層部・承認者向け概観)
11
+
12
+ | 区分 | 件数 |
13
+ |---|---|
14
+ | カスタム + 標準オブジェクト | <%= it.counts.objects %> |
15
+ | フィールド | <%= it.counts.fields %> |
16
+ | 入力規則 (Validation Rule) | <%= it.counts.validationRules %> |
17
+ | Flow | <%= it.counts.flows %> |
18
+ | Apex クラス | <%= it.counts.apexClasses %> |
19
+ | Apex トリガー | <%= it.counts.apexTriggers %> |
20
+ | 権限セット | <%= it.counts.permissionSets %> |
21
+ | プロファイル | <%= it.counts.profiles %> |
22
+
23
+ ### カスタムオブジェクト
24
+ <% if (it.customObjects.length === 0) { %>
25
+ (カスタムオブジェクトなし)
26
+ <% } else { %>
27
+ <% it.customObjects.forEach(function(o){ %>
28
+ - `<%= o %>`
29
+ <% }) %>
30
+ <% } %>
31
+ <!-- DETERMINISTIC_END id="footprint" -->
32
+
33
+ <!-- DETERMINISTIC_START id="quality" -->
34
+ ## 品質指標
35
+
36
+ - Apex テストクラス数: <%= it.apexTestRatio.tests %>
37
+ - Apex 非テストクラス数: <%= it.apexTestRatio.nonTests %>
38
+ - テスト/非テスト比: <%= it.apexTestRatio.ratio %>
39
+ <% if (it.apexTestRatio.ratio < 0.5 && it.apexTestRatio.nonTests > 0) { %>
40
+ > ⚠️ テストクラス比率が 50% 未満です。リリース判断時はテストカバレッジレポート (Code Analyzer / Apex Test Result) を併読してください。
41
+ <% } %>
42
+ <!-- DETERMINISTIC_END id="quality" -->
43
+
44
+ <!-- DETERMINISTIC_START id="trigger-map" -->
45
+ ## オブジェクト別トリガー配置
46
+
47
+ <% if (it.triggersByObject.length === 0) { %>
48
+ (トリガーなし)
49
+ <% } else { %>
50
+ | オブジェクト | トリガー |
51
+ |---|---|
52
+ <% it.triggersByObject.forEach(function(g){ %>
53
+ | `<%= g.object %>` | <%= g.triggers.map(t=>"`"+t+"`").join(", ") %> |
54
+ <% }) %>
55
+
56
+ > 1 オブジェクトに複数トリガーがある場合は、ハンドラパターンへの集約余地を技術担当と確認してください (一般的なベストプラクティス)。
57
+ <% } %>
58
+ <!-- DETERMINISTIC_END id="trigger-map" -->
59
+
60
+ <!-- AI_MANAGED_START id="narrative" -->
61
+ ## 上層部向けナラティブ (AI 生成、再生成で上書き)
62
+
63
+ 承認判断に必要な変更点・リスク・依存関係の総括。Phase 7-D で精度向上。
64
+ <!-- AI_MANAGED_END id="narrative" -->
65
+
66
+ <!-- HUMAN_MANAGED_START id="approver-notes" -->
67
+ <!-- 承認者・上長向けの補足 (社内固有の判断材料)。AI は上書きしません。 -->
68
+ <!-- HUMAN_MANAGED_END id="approver-notes" -->
@@ -0,0 +1,47 @@
1
+ # FlexiPage: <%= it.fp.fullyQualifiedName %>
2
+
3
+ <!-- DETERMINISTIC_START id="quick-summary" -->
4
+ > <%~ it.quickSummary %>
5
+ <!-- DETERMINISTIC_END id="quick-summary" -->
6
+
7
+ <!-- DETERMINISTIC_START id="overview" -->
8
+ - API Name: `<%= it.fp.fullyQualifiedName %>`
9
+ <% if (it.fp.masterLabel) { %>- Master Label: <%= it.fp.masterLabel %><% } %>
10
+ <% if (it.fp.type) { %>- Type: `<%= it.fp.type %>`<% } %>
11
+ <% if (it.fp.sobjectType) { %>- SObject: `<%= it.fp.sobjectType %>`<% } %>
12
+ <% if (it.fp.pageTemplate) { %>- Template: `<%= it.fp.pageTemplate %>`<% } %>
13
+ <% if (it.fp.description) { %>- Description: <%= it.fp.description %><% } %>
14
+ - Source: `<%= it.fp.sourcePath %>`
15
+ - Content hash: `<%= it.fp.contentHash %>`
16
+ <!-- DETERMINISTIC_END id="overview" -->
17
+
18
+ <!-- DETERMINISTIC_START id="regions" -->
19
+ ## Regions (<%= it.fp.regions.length %>)
20
+
21
+ <% if (it.fp.regions.length === 0) { %>
22
+ (リージョンなし)
23
+ <% } else { %>
24
+ <% it.fp.regions.forEach(function(r){ %>
25
+ ### Region: `<%= r.name %>`<%= r.type ? ` (${r.type})` : "" %>
26
+
27
+ <% if (r.items.length === 0) { %>
28
+ (項目なし)
29
+ <% } else { %>
30
+ | 項目 | 種別 | 内容 |
31
+ |---|---|---|
32
+ <% r.items.forEach(function(it){ %>
33
+ | <%= it.componentName ? "Component" : "Field" %> | <%= it.componentName ? "コンポーネント" : "フィールド" %> | `<%= it.componentName || it.fieldName %>` |
34
+ <% }) %>
35
+ <% } %>
36
+
37
+ <% }) %>
38
+ <% } %>
39
+ <!-- DETERMINISTIC_END id="regions" -->
40
+
41
+ <!-- AI_MANAGED_START id="purpose" -->
42
+ このページの業務的位置づけ (AI 推測)。
43
+ <!-- AI_MANAGED_END id="purpose" -->
44
+
45
+ <!-- HUMAN_MANAGED_START id="business-context" -->
46
+ <!-- 想定ユーザ・配置先タブやアプリの説明を人手記述。 -->
47
+ <!-- HUMAN_MANAGED_END id="business-context" -->
@@ -0,0 +1,166 @@
1
+ # Flow: <%= it.flow.fullyQualifiedName %>
2
+
3
+ <!-- DETERMINISTIC_START id="quick-summary" -->
4
+ > <%~ it.quickSummary %>
5
+ <!-- DETERMINISTIC_END id="quick-summary" -->
6
+
7
+ <!-- DETERMINISTIC_START id="overview" -->
8
+ - API Name: `<%= it.flow.fullyQualifiedName %>`
9
+ <% if (it.flow.label) { %>- Label: <%= it.flow.label %><% } %>
10
+ - Type: <%= it.flow.type %>
11
+ - Status: <%= it.flow.status %>
12
+ <% if (it.flow.triggeringObject) { %>- Triggering Object: `<%= it.flow.triggeringObject %>`<% } %>
13
+ - Source: `<%= it.flow.sourcePath %>`
14
+ - Content hash: `<%= it.flow.contentHash %>`
15
+ <% if (it.flow.description) { %>
16
+ ## Description
17
+ <%= it.flow.description %>
18
+ <% } %>
19
+ <!-- DETERMINISTIC_END id="overview" -->
20
+
21
+ <!-- DETERMINISTIC_START id="elements" -->
22
+ ## 構成要素 (<%= it.flow.body ? it.flow.body.elements.length : 0 %>)
23
+
24
+ <% if (!it.flow.body || it.flow.body.elements.length === 0) { %>
25
+ (検出要素なし)
26
+ <% } else { %>
27
+ | 種別 | API 名 | ラベル | 対象 |
28
+ |---|---|---|---|
29
+ <% it.flow.body.elements.forEach(function(e){ %>
30
+ | <%= e.kind %> | `<%= e.name %>` | <%= e.label || "—" %> | <%= e.target ? "`"+e.target+"`" : "—" %> |
31
+ <% }) %>
32
+ <% } %>
33
+
34
+ ### 操作対象オブジェクト
35
+ <% if (!it.flow.body || it.flow.body.recordObjects.length === 0) { %>
36
+ (なし)
37
+ <% } else { %>
38
+ <% it.flow.body.recordObjects.forEach(function(o){ %>
39
+ - `<%= o %>`
40
+ <% }) %>
41
+ <% } %>
42
+
43
+ ### サブフロー / アクション呼び出し
44
+ <% if (it.flow.body && it.flow.body.subflows.length > 0) { %>
45
+ - サブフロー:
46
+ <% it.flow.body.subflows.forEach(function(s){ %>
47
+ - `<%= s %>`
48
+ <% }) %>
49
+ <% } %>
50
+ <% if (it.flow.body && it.flow.body.actionCalls.length > 0) { %>
51
+ - アクション:
52
+ <% it.flow.body.actionCalls.forEach(function(a){ %>
53
+ - `<%= a %>`
54
+ <% }) %>
55
+ <% } %>
56
+ <% if (!it.flow.body || (it.flow.body.subflows.length === 0 && it.flow.body.actionCalls.length === 0)) { %>
57
+ (検出なし)
58
+ <% } %>
59
+ <!-- DETERMINISTIC_END id="elements" -->
60
+
61
+ <!-- DETERMINISTIC_START id="flow-diagram" -->
62
+ ## 処理フロー (詳細)
63
+
64
+ <% if (it.flowchart) { %>
65
+ ```mermaid
66
+ <%~ it.flowchart %>
67
+ ```
68
+
69
+ <% if (it.flowchartDetails && it.flowchartDetails.length > 0) { %>
70
+ **ノード詳細**
71
+
72
+ | Step | 種別 | 内容 |
73
+ |---|---|---|
74
+ <% it.flowchartDetails.forEach(function(d){ %>
75
+ | `<%~ d.id %>` | <%~ d.kind %> | `<%~ d.fullText %>` |
76
+ <% }) %>
77
+ <% } %>
78
+ <% } else { %>
79
+ (Flow body 未取得)
80
+ <% } %>
81
+ <!-- DETERMINISTIC_END id="flow-diagram" -->
82
+
83
+ <!-- DETERMINISTIC_START id="dependencies" -->
84
+ ## Dependencies (<%= it.dependencies.length %>)
85
+
86
+ <% if (it.dependencies.length === 0) { %>
87
+ (なし)
88
+ <% } else { %>
89
+ <% it.dependencies.forEach(function(d){ %>
90
+ - <%= d.kind %>: `<%= d.from.kind %>:<%= d.from.fullyQualifiedName %>` → `<%= d.to.kind %>:<%= d.to.fullyQualifiedName %>`
91
+ <% }) %>
92
+ <% } %>
93
+ <!-- DETERMINISTIC_END id="dependencies" -->
94
+
95
+ <!-- DETERMINISTIC_START id="processing-sequence-table" -->
96
+ ## 処理詳細 — 実行シーケンス表
97
+
98
+ <% if (!it.flowSequenceRows || it.flowSequenceRows.length === 0) { %>
99
+ (処理シーケンスを構成できる要素なし)
100
+ <% } else { %>
101
+ | 順 | 要素名 | 種別 | 概要 |
102
+ |---|---|---|---|
103
+ <% it.flowSequenceRows.forEach(function(r){ %>
104
+ | <%= r.order %> | `<%= r.name %>`<%= r.label ? " ("+r.label+")" : "" %> | <%= r.kind %> | <%~ r.summary %> |
105
+ <% }) %>
106
+ <% } %>
107
+ <!-- DETERMINISTIC_END id="processing-sequence-table" -->
108
+
109
+ <!-- AI_MANAGED_START id="processing-overview-narrative" -->
110
+ ## 処理概要 — 自然言語での説明
111
+
112
+ この Flow 全体の処理の流れを 1〜2 段落で記述する。「起動条件 → 主要な分岐 → 最終的な副作用 (作成/更新/通知)」を大きな粒度で説明する (AI 生成)。
113
+ <!-- AI_MANAGED_END id="processing-overview-narrative" -->
114
+
115
+ <!-- AI_MANAGED_START id="processing-details-narrative" -->
116
+ ## 処理詳細 — 要素ごとの自然言語説明
117
+
118
+ 各要素が何をしているかを順に詳述する。
119
+
120
+ - **`<elementName>`**: この要素が扱うデータ / 条件 / 結果を 1〜2 行で書く
121
+
122
+ (AI 生成、再生成で上書き)
123
+ <!-- AI_MANAGED_END id="processing-details-narrative" -->
124
+
125
+ <!-- AI_MANAGED_START id="purpose" -->
126
+ この Flow の役割と用途 (AI 生成、再生成で上書き)。
127
+ <!-- AI_MANAGED_END id="purpose" -->
128
+
129
+ <!-- AI_MANAGED_START id="narrative" -->
130
+ ## この Flow は何で、なぜ存在するか
131
+
132
+ この Flow が解いている業務上の課題と、なぜ Flow (Apex / Trigger ではなく) で実装したかを 2〜3 段落で記述する (AI 生成)。
133
+ <!-- AI_MANAGED_END id="narrative" -->
134
+
135
+ <!-- AI_MANAGED_START id="business-scenario" -->
136
+ ## 典型的な業務シナリオ
137
+
138
+ この Flow が起動される典型ケースを「いつ / 誰の操作 / どのレコード変化」の粒度で具体例として書く (AI 生成)。
139
+ <!-- AI_MANAGED_END id="business-scenario" -->
140
+
141
+ <!-- AI_MANAGED_START id="operational-notes" -->
142
+ ## 運用上の留意点
143
+
144
+ bulk 化制約 / 既存 Trigger との順序関係 / 失敗時の挙動 / 監視ポイントを記述する (AI 生成)。
145
+ <!-- AI_MANAGED_END id="operational-notes" -->
146
+
147
+ <!-- DETERMINISTIC_START id="auto-concerns" -->
148
+ ## 自動検出された懸念点 (<%= it.concerns ? it.concerns.length : 0 %>)
149
+
150
+ <% if (!it.concerns || it.concerns.length === 0) { %>
151
+ (検出なし)
152
+ <% } else { %>
153
+ <% it.concerns.forEach(function(c){ %>
154
+ - **[<%= c.severity %>] <%= c.title %>**<% if (c.detail) { %> — <%= c.detail %><% } %>
155
+ <% }) %>
156
+ <% } %>
157
+ <!-- DETERMINISTIC_END id="auto-concerns" -->
158
+
159
+ <!-- AI_MANAGED_START id="concerns" -->
160
+ ## 補足の懸念 (AI / 人手で追記)
161
+ <!-- 業務的観点や運用観点での懸念を追記。AI 推測 / Phase 7-D 以降で精度向上。 -->
162
+ <!-- AI_MANAGED_END id="concerns" -->
163
+
164
+ <!-- HUMAN_MANAGED_START id="business-context" -->
165
+ <!-- 業務文脈・運用上の留意点をここに記述。AI は上書きしません。 -->
166
+ <!-- HUMAN_MANAGED_END id="business-context" -->
@@ -0,0 +1,68 @@
1
+ # Layout: <%= it.layout.fullyQualifiedName %>
2
+
3
+ <!-- DETERMINISTIC_START id="quick-summary" -->
4
+ > <%~ it.quickSummary %>
5
+ <!-- DETERMINISTIC_END id="quick-summary" -->
6
+
7
+ <!-- DETERMINISTIC_START id="overview" -->
8
+ - API Name: `<%= it.layout.fullyQualifiedName %>`
9
+ - Object: `<%= it.layout.object %>`
10
+ - Layout Name: <%= it.layout.layoutName %>
11
+ - Source: `<%= it.layout.sourcePath %>`
12
+ - Content hash: `<%= it.layout.contentHash %>`
13
+ <!-- DETERMINISTIC_END id="overview" -->
14
+
15
+ <!-- DETERMINISTIC_START id="sections" -->
16
+ ## セクション (<%= it.layout.sections.length %>)
17
+
18
+ <% if (it.layout.sections.length === 0) { %>
19
+ (セクションなし)
20
+ <% } else { %>
21
+ <% it.layout.sections.forEach(function(s, i){ %>
22
+ ### Section <%= i + 1 %>: <%= s.label %><%= s.columnsStyle ? ` _(${s.columnsStyle})_` : "" %>
23
+
24
+ <% if (s.items.length === 0) { %>
25
+ (項目なし)
26
+ <% } else { %>
27
+ | 列 | フィールド | 動作 |
28
+ |---|---|---|
29
+ <% s.items.forEach(function(it){ %>
30
+ | <%= it.column %> | `<%= it.field %>` | <%= it.behavior %> |
31
+ <% }) %>
32
+ <% } %>
33
+
34
+ <% }) %>
35
+ <% } %>
36
+ <!-- DETERMINISTIC_END id="sections" -->
37
+
38
+ <!-- DETERMINISTIC_START id="related-lists" -->
39
+ ## 関連リスト (<%= it.layout.relatedLists.length %>)
40
+
41
+ <% if (it.layout.relatedLists.length === 0) { %>
42
+ (なし)
43
+ <% } else { %>
44
+ <% it.layout.relatedLists.forEach(function(rl){ %>
45
+ - `<%= rl.relatedList %>`<% if (rl.fields.length > 0) { %> — フィールド: <%= rl.fields.map(function(f){ return "`" + f + "`"; }).join(", ") %><% } %>
46
+ <% }) %>
47
+ <% } %>
48
+ <!-- DETERMINISTIC_END id="related-lists" -->
49
+
50
+ <!-- DETERMINISTIC_START id="quick-actions" -->
51
+ ## クイックアクション (<%= it.layout.quickActions.length %>)
52
+
53
+ <% if (it.layout.quickActions.length === 0) { %>
54
+ (なし)
55
+ <% } else { %>
56
+ <% it.layout.quickActions.forEach(function(q){ %>
57
+ - `<%= q %>`
58
+ <% }) %>
59
+ <% } %>
60
+ <!-- DETERMINISTIC_END id="quick-actions" -->
61
+
62
+ <!-- AI_MANAGED_START id="purpose" -->
63
+ このレイアウトの業務的役割 (AI 推測)。
64
+ <!-- AI_MANAGED_END id="purpose" -->
65
+
66
+ <!-- HUMAN_MANAGED_START id="business-context" -->
67
+ <!-- 想定ユーザ・操作の流れを人手記述。 -->
68
+ <!-- HUMAN_MANAGED_END id="business-context" -->
@@ -0,0 +1,118 @@
1
+ # LWC: <%= it.lwc.fullyQualifiedName %>
2
+
3
+ <!-- DETERMINISTIC_START id="quick-summary" -->
4
+ > <%~ it.quickSummary %>
5
+ <!-- DETERMINISTIC_END id="quick-summary" -->
6
+
7
+ <!-- DETERMINISTIC_START id="overview" -->
8
+ - API Name: `<%= it.lwc.fullyQualifiedName %>`
9
+ <% if (it.lwc.masterLabel) { %>- Master Label: <%= it.lwc.masterLabel %><% } %>
10
+ <% if (it.lwc.apiVersion) { %>- API Version: <%= it.lwc.apiVersion %><% } %>
11
+ - Exposed: <%= it.lwc.isExposed ? "✓ true" : "false (内部利用)" %>
12
+ <% if (it.lwc.targets.length > 0) { %>- Targets: <%= it.lwc.targets.map(function(t){ return "`" + t + "`"; }).join(", ") %><% } %>
13
+ - Bundle 構成: JS<% if (it.lwc.hasHtml) { %> + HTML<% } %><% if (it.lwc.hasCss) { %> + CSS<% } %>
14
+ <% if (it.lwc.description) { %>- Description: <%= it.lwc.description %><% } %>
15
+ - Source: `<%= it.lwc.sourcePath %>`
16
+ - Content hash: `<%= it.lwc.contentHash %>`
17
+ <!-- DETERMINISTIC_END id="overview" -->
18
+
19
+ <!-- DETERMINISTIC_START id="apex-imports" -->
20
+ ## Apex 呼び出し (<%= it.lwc.apexImports.length %>)
21
+
22
+ <% if (it.lwc.apexImports.length === 0) { %>
23
+ (なし)
24
+ <% } else { %>
25
+ | エイリアス | クラス | メソッド |
26
+ |---|---|---|
27
+ <% it.lwc.apexImports.forEach(function(a){ %>
28
+ | `<%= a.methodAlias %>` | `<%= a.className %>` | `<%= a.methodName %>` |
29
+ <% }) %>
30
+ <% } %>
31
+ <!-- DETERMINISTIC_END id="apex-imports" -->
32
+
33
+ <!-- DETERMINISTIC_START id="public-api" -->
34
+ ## 公開プロパティ (@api) (<%= it.lwc.publicProperties.length %>)
35
+
36
+ <% if (it.lwc.publicProperties.length === 0) { %>
37
+ (なし)
38
+ <% } else { %>
39
+ <% it.lwc.publicProperties.forEach(function(p){ %>
40
+ - `<%= p %>`
41
+ <% }) %>
42
+ <% } %>
43
+ <!-- DETERMINISTIC_END id="public-api" -->
44
+
45
+ <!-- DETERMINISTIC_START id="wires" -->
46
+ ## @wire 一覧 (<%= it.lwc.wires.length %>)
47
+
48
+ <% if (it.lwc.wires.length === 0) { %>
49
+ (なし)
50
+ <% } else { %>
51
+ <% it.lwc.wires.forEach(function(w){ %>
52
+ - `<%= w.target %>`<% if (w.bindingProperty) { %> → `<%= w.bindingProperty %>`<% } %>
53
+ <% }) %>
54
+ <% } %>
55
+ <!-- DETERMINISTIC_END id="wires" -->
56
+
57
+ <!-- DETERMINISTIC_START id="events" -->
58
+ ## 発火する CustomEvent (<%= it.lwc.customEvents.length %>)
59
+
60
+ <% if (it.lwc.customEvents.length === 0) { %>
61
+ (なし)
62
+ <% } else { %>
63
+ <% it.lwc.customEvents.forEach(function(e){ %>
64
+ - `<%= e %>`
65
+ <% }) %>
66
+ <% } %>
67
+ <!-- DETERMINISTIC_END id="events" -->
68
+
69
+ <!-- DETERMINISTIC_START id="components" -->
70
+ ## 子コンポーネント / 標準コンポーネント
71
+
72
+ ### 子 LWC (<%= it.lwc.childComponents.length %>)
73
+ <% if (it.lwc.childComponents.length === 0) { %>
74
+ (なし)
75
+ <% } else { %>
76
+ <% it.lwc.childComponents.forEach(function(c){ %>
77
+ - `<%= c %>`
78
+ <% }) %>
79
+ <% } %>
80
+
81
+ ### 標準コンポーネント (<%= it.lwc.standardComponents.length %>)
82
+ <% if (it.lwc.standardComponents.length === 0) { %>
83
+ (なし)
84
+ <% } else { %>
85
+ | タグ | 出現回数 |
86
+ |---|---|
87
+ <% it.lwc.standardComponents.forEach(function(c){ %>
88
+ | `<%= c.tag %>` | <%= c.count %> |
89
+ <% }) %>
90
+ <% } %>
91
+
92
+ ### LWC ディレクティブ
93
+ <% if (it.lwc.directives.length === 0) { %>
94
+ (なし)
95
+ <% } else { %>
96
+ <%= it.lwc.directives.map(function(d){ return "`" + d + "`"; }).join(", ") %>
97
+ <% } %>
98
+ <!-- DETERMINISTIC_END id="components" -->
99
+
100
+ <!-- DETERMINISTIC_START id="labels" -->
101
+ ## Custom Label 参照 (<%= it.lwc.labelImports.length %>)
102
+
103
+ <% if (it.lwc.labelImports.length === 0) { %>
104
+ (なし)
105
+ <% } else { %>
106
+ <% it.lwc.labelImports.forEach(function(l){ %>
107
+ - `<%= l %>`
108
+ <% }) %>
109
+ <% } %>
110
+ <!-- DETERMINISTIC_END id="labels" -->
111
+
112
+ <!-- AI_MANAGED_START id="purpose" -->
113
+ このコンポーネントの業務的役割と画面遷移上の位置 (AI 推測)。
114
+ <!-- AI_MANAGED_END id="purpose" -->
115
+
116
+ <!-- HUMAN_MANAGED_START id="business-context" -->
117
+ <!-- 想定ユーザ・前提画面・運用上の留意点を人手記述。 -->
118
+ <!-- HUMAN_MANAGED_END id="business-context" -->
@@ -0,0 +1,30 @@
1
+ # NamedCredential: <%= it.nc.fullyQualifiedName %>
2
+
3
+ <!-- DETERMINISTIC_START id="quick-summary" -->
4
+ > <%~ it.quickSummary %>
5
+ <!-- DETERMINISTIC_END id="quick-summary" -->
6
+
7
+ <!-- DETERMINISTIC_START id="overview" -->
8
+ - API Name: `<%= it.nc.fullyQualifiedName %>`
9
+ <% if (it.nc.label) { %>- Label: <%= it.nc.label %><% } %>
10
+ <% if (it.nc.endpoint) { %>- Endpoint: `<%= it.nc.endpoint %>`<% } %>
11
+ <% if (it.nc.protocol) { %>- Protocol: `<%= it.nc.protocol %>`<% } %>
12
+ <% if (it.nc.principalType) { %>- Principal Type: `<%= it.nc.principalType %>`<% } %>
13
+ - シークレット: <%= it.nc.hasSecret ? "✓ あり (値そのものは出力しません)" : "—" %>
14
+ - Source: `<%= it.nc.sourcePath %>`
15
+ - Content hash: `<%= it.nc.contentHash %>`
16
+ <!-- DETERMINISTIC_END id="overview" -->
17
+
18
+ <!-- DETERMINISTIC_START id="security-note" -->
19
+ ## セキュリティ注記
20
+
21
+ > 本ドキュメントには **シークレット (パスワード / OAuth トークン / 証明書 等)** の **値そのもの** を含めていません。値が必要な場合は force-app の生 XML、または Salesforce 組織の Setup から取得してください。本ファイルは **シークレットの存在のみ** を表示します。
22
+ <!-- DETERMINISTIC_END id="security-note" -->
23
+
24
+ <!-- AI_MANAGED_START id="purpose" -->
25
+ この外部連携の業務的目的 (AI 推測)。
26
+ <!-- AI_MANAGED_END id="purpose" -->
27
+
28
+ <!-- HUMAN_MANAGED_START id="business-context" -->
29
+ <!-- 連携先システム名・運用窓口・障害時の連絡先などを人手記述。 -->
30
+ <!-- HUMAN_MANAGED_END id="business-context" -->
@@ -0,0 +1,68 @@
1
+ # <%= it.object.label %> (<%= it.object.fullyQualifiedName %>)
2
+
3
+ <!-- DETERMINISTIC_START id="overview" -->
4
+ - API Name: `<%= it.object.fullyQualifiedName %>`
5
+ - Custom: <%= it.object.isCustom ? "true" : "false" %>
6
+ <% if (it.object.sharingModel) { %>- Sharing Model: <%= it.object.sharingModel %><% } %>
7
+ <% if (it.object.pluralLabel) { %>- Plural Label: <%= it.object.pluralLabel %><% } %>
8
+ - Source: `<%= it.object.sourcePath %>`
9
+ - Content hash: `<%= it.object.contentHash %>`
10
+ <!-- DETERMINISTIC_END id="overview" -->
11
+
12
+ <!-- DETERMINISTIC_START id="fields" -->
13
+ ## Fields (<%= it.fields.length %>)
14
+
15
+ <% if (it.fields.length === 0) { %>
16
+ (なし)
17
+ <% } else { %>
18
+ | API Name | Type | Required | Custom | References |
19
+ |---|---|---|---|---|
20
+ <% it.fields.forEach(function(f){ %>
21
+ | `<%= f.fullyQualifiedName.split('.')[1] %>` | <%= f.type %> | <%= f.required ? "✓" : "" %> | <%= f.isCustom ? "✓" : "" %> | <%= (f.referenceTo || []).join(', ') %> |
22
+ <% }) %>
23
+ <% } %>
24
+ <!-- DETERMINISTIC_END id="fields" -->
25
+
26
+ <!-- DETERMINISTIC_START id="validation-rules" -->
27
+ ## Validation Rules (<%= it.validationRules.length %>)
28
+
29
+ <% if (it.validationRules.length === 0) { %>
30
+ (なし)
31
+ <% } else { %>
32
+ <% it.validationRules.forEach(function(v){ %>
33
+ - `<%= v.fullyQualifiedName %>` <%= v.active ? "(active)" : "(inactive)" %>
34
+ <% }) %>
35
+ <% } %>
36
+ <!-- DETERMINISTIC_END id="validation-rules" -->
37
+
38
+ <!-- DETERMINISTIC_START id="dependencies" -->
39
+ ## Dependencies (<%= it.dependencies.length %>)
40
+
41
+ <% if (it.dependencies.length === 0) { %>
42
+ (なし)
43
+ <% } else { %>
44
+ <% it.dependencies.forEach(function(d){ %>
45
+ - <%= d.kind %>: `<%= d.from.kind %>:<%= d.from.fullyQualifiedName %>` → `<%= d.to.kind %>:<%= d.to.fullyQualifiedName %>`
46
+ <% }) %>
47
+ <% } %>
48
+ <!-- DETERMINISTIC_END id="dependencies" -->
49
+
50
+ <!-- AI_MANAGED_START id="summary" -->
51
+ このオブジェクトの役割と用途 (AI 生成、再生成で上書き)。
52
+ <!-- AI_MANAGED_END id="summary" -->
53
+
54
+ <!-- AI_MANAGED_START id="narrative" -->
55
+ ## このオブジェクトは何で、なぜ存在するか
56
+
57
+ このオブジェクトが業務上どの実体を表しているか、なぜカスタムオブジェクトとして切り出されているかを 2〜3 段落で記述する (AI 生成)。
58
+ <!-- AI_MANAGED_END id="narrative" -->
59
+
60
+ <!-- AI_MANAGED_START id="business-domain" -->
61
+ ## 業務ドメインと位置付け
62
+
63
+ このオブジェクトが属する業務領域 (請求 / 在庫 / 与信 / 案件 等) と、隣接オブジェクトとの関係を記述する (AI 生成)。
64
+ <!-- AI_MANAGED_END id="business-domain" -->
65
+
66
+ <!-- HUMAN_MANAGED_START id="business-context" -->
67
+ <!-- 業務コンテキスト・運用上の留意点をここに記述。AI は上書きしません。 -->
68
+ <!-- HUMAN_MANAGED_END id="business-context" -->
@@ -0,0 +1,80 @@
1
+ # PermissionSet: <%= it.ps.fullyQualifiedName %>
2
+
3
+ <!-- DETERMINISTIC_START id="quick-summary" -->
4
+ > <%~ it.quickSummary %>
5
+ <!-- DETERMINISTIC_END id="quick-summary" -->
6
+
7
+ <!-- DETERMINISTIC_START id="overview" -->
8
+ - API Name: `<%= it.ps.fullyQualifiedName %>`
9
+ - Label: <%= it.ps.label %>
10
+ <% if (it.ps.license) { %>- License: <%= it.ps.license %><% } %>
11
+ <% if (it.ps.description) { %>- Description: <%= it.ps.description %><% } %>
12
+ - Source: `<%= it.ps.sourcePath %>`
13
+ - Content hash: `<%= it.ps.contentHash %>`
14
+ <!-- DETERMINISTIC_END id="overview" -->
15
+
16
+ <!-- DETERMINISTIC_START id="object-permissions" -->
17
+ ## オブジェクト権限 (<%= it.ps.body ? it.ps.body.objectPermissions.length : 0 %>)
18
+
19
+ <% if (!it.ps.body || it.ps.body.objectPermissions.length === 0) { %>
20
+ (なし)
21
+ <% } else { %>
22
+ | オブジェクト | C | R | U | D | View All | Modify All |
23
+ |---|---|---|---|---|---|---|
24
+ <% it.ps.body.objectPermissions.forEach(function(p){ %>
25
+ | `<%= p.object %>` | <%= p.create ? "✓" : "—" %> | <%= p.read ? "✓" : "—" %> | <%= p.edit ? "✓" : "—" %> | <%= p.delete ? "✓" : "—" %> | <%= p.viewAll ? "✓" : "—" %> | <%= p.modifyAll ? "✓" : "—" %> |
26
+ <% }) %>
27
+ <% } %>
28
+ <!-- DETERMINISTIC_END id="object-permissions" -->
29
+
30
+ <!-- DETERMINISTIC_START id="field-permissions" -->
31
+ ## フィールド権限 (<%= it.ps.body ? it.ps.body.fieldPermissions.length : 0 %>)
32
+
33
+ <% if (!it.ps.body || it.ps.body.fieldPermissions.length === 0) { %>
34
+ (なし)
35
+ <% } else { %>
36
+ | フィールド | Read | Edit |
37
+ |---|---|---|
38
+ <% it.ps.body.fieldPermissions.forEach(function(p){ %>
39
+ | `<%= p.field %>` | <%= p.readable ? "✓" : "—" %> | <%= p.editable ? "✓" : "—" %> |
40
+ <% }) %>
41
+ <% } %>
42
+ <!-- DETERMINISTIC_END id="field-permissions" -->
43
+
44
+ <!-- DETERMINISTIC_START id="class-accesses" -->
45
+ ## Apex クラス アクセス (<%= it.ps.body ? it.ps.body.classAccesses.length : 0 %>)
46
+
47
+ <% if (!it.ps.body || it.ps.body.classAccesses.length === 0) { %>
48
+ (なし)
49
+ <% } else { %>
50
+ <% it.ps.body.classAccesses.forEach(function(c){ %>
51
+ - `<%= c.apexClass %>` <%= c.enabled ? "✓ enabled" : "✗ disabled" %>
52
+ <% }) %>
53
+ <% } %>
54
+ <!-- DETERMINISTIC_END id="class-accesses" -->
55
+
56
+ <!-- DETERMINISTIC_START id="user-permissions" -->
57
+ ## ユーザ権限 (システム権限) (<%= it.ps.body ? it.ps.body.userPermissions.length : 0 %>)
58
+
59
+ <% if (!it.ps.body || it.ps.body.userPermissions.length === 0) { %>
60
+ (なし)
61
+ <% } else { %>
62
+ <% it.ps.body.userPermissions.forEach(function(u){ %>
63
+ - `<%= u %>`
64
+ <% }) %>
65
+ <% } %>
66
+ <!-- DETERMINISTIC_END id="user-permissions" -->
67
+
68
+ <!-- AI_MANAGED_START id="purpose" -->
69
+ この PermissionSet の業務的役割 (AI 推測)。
70
+ <!-- AI_MANAGED_END id="purpose" -->
71
+
72
+ <!-- AI_MANAGED_START id="concerns" -->
73
+ ## 気になる点 (AI 推測)
74
+ <!-- - 未割当 (assignment 0 件) -->
75
+ <!-- - 過剰権限の可能性 -->
76
+ <!-- AI_MANAGED_END id="concerns" -->
77
+
78
+ <!-- HUMAN_MANAGED_START id="business-context" -->
79
+ <!-- 対象業務ロール・想定ユーザを人手記述。AI は上書きしません。 -->
80
+ <!-- HUMAN_MANAGED_END id="business-context" -->