@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,445 @@
1
+ import { SqliteGraphStore } from "./sqlite-store.js";
2
+ const DEFAULT_API = "62.0";
3
+ function parseApexBody(json) {
4
+ if (json === null)
5
+ return undefined;
6
+ try {
7
+ return JSON.parse(json);
8
+ }
9
+ catch {
10
+ return undefined;
11
+ }
12
+ }
13
+ function parseFlowBody(json) {
14
+ if (json === null)
15
+ return undefined;
16
+ try {
17
+ return JSON.parse(json);
18
+ }
19
+ catch {
20
+ return undefined;
21
+ }
22
+ }
23
+ function parsePermissionSetBody(json) {
24
+ if (json === null)
25
+ return undefined;
26
+ try {
27
+ return JSON.parse(json);
28
+ }
29
+ catch {
30
+ return undefined;
31
+ }
32
+ }
33
+ export class KnowledgeGraphReader {
34
+ #store;
35
+ constructor(options) {
36
+ this.#store = new SqliteGraphStore({ dbPath: options.dbPath });
37
+ }
38
+ close() {
39
+ this.#store.close();
40
+ }
41
+ read() {
42
+ return {
43
+ meta: this.readMeta(),
44
+ objects: this.readObjects(),
45
+ fields: this.readFields(),
46
+ validationRules: this.readValidationRules(),
47
+ flows: this.readFlows(),
48
+ apexClasses: this.readApexClasses(),
49
+ apexTriggers: this.readApexTriggers(),
50
+ permissionSets: this.readPermissionSets(),
51
+ profiles: this.readProfiles(),
52
+ recordTypes: this.readRecordTypes(),
53
+ approvalProcesses: this.readApprovalProcesses(),
54
+ sharingRules: this.readSharingRules(),
55
+ layouts: this.readLayouts(),
56
+ customMetadataRecords: this.readCustomMetadataRecords(),
57
+ namedCredentials: this.readNamedCredentials(),
58
+ remoteSiteSettings: this.readRemoteSiteSettings(),
59
+ lwcs: this.readLwcs(),
60
+ auraBundles: this.readAuraBundles(),
61
+ flexiPages: this.readFlexiPages(),
62
+ visualforcePages: this.readVisualforcePages(),
63
+ visualforceComponents: this.readVisualforceComponents(),
64
+ customApplications: this.readCustomApplications(),
65
+ dependencies: [],
66
+ tags: [],
67
+ };
68
+ }
69
+ readVisualforcePages() {
70
+ return this.#store
71
+ .query("SELECT fqn, api_version, label, description, controller, standard_controller, render_as, body_json, source_path, content_hash FROM visualforce_pages")
72
+ .map((r) => {
73
+ const body = JSON.parse(r.body_json);
74
+ return {
75
+ fullyQualifiedName: r.fqn,
76
+ apiVersion: r.api_version ?? undefined,
77
+ label: r.label ?? undefined,
78
+ description: r.description ?? undefined,
79
+ controller: r.controller ?? undefined,
80
+ extensions: body.extensions,
81
+ standardController: r.standard_controller ?? undefined,
82
+ renderAs: r.render_as ?? undefined,
83
+ availableInTouch: body.availableInTouch,
84
+ confirmationTokenRequired: body.confirmationTokenRequired,
85
+ hasMarkup: body.hasMarkup,
86
+ markupCounts: body.markupCounts,
87
+ methodReferences: body.methodReferences,
88
+ sourcePath: r.source_path,
89
+ contentHash: r.content_hash,
90
+ };
91
+ });
92
+ }
93
+ readVisualforceComponents() {
94
+ return this.#store
95
+ .query("SELECT fqn, api_version, label, description, controller, body_json, source_path, content_hash FROM visualforce_components")
96
+ .map((r) => {
97
+ const body = JSON.parse(r.body_json);
98
+ return {
99
+ fullyQualifiedName: r.fqn,
100
+ apiVersion: r.api_version ?? undefined,
101
+ label: r.label ?? undefined,
102
+ description: r.description ?? undefined,
103
+ controller: r.controller ?? undefined,
104
+ attributes: body.attributes,
105
+ hasMarkup: body.hasMarkup,
106
+ markupCounts: body.markupCounts,
107
+ sourcePath: r.source_path,
108
+ contentHash: r.content_hash,
109
+ };
110
+ });
111
+ }
112
+ readCustomApplications() {
113
+ return this.#store
114
+ .query("SELECT fqn, label, description, nav_type, body_json, source_path, content_hash FROM custom_applications")
115
+ .map((r) => {
116
+ const body = JSON.parse(r.body_json);
117
+ return {
118
+ fullyQualifiedName: r.fqn,
119
+ label: r.label ?? undefined,
120
+ description: r.description ?? undefined,
121
+ navType: r.nav_type ?? undefined,
122
+ formFactors: body.formFactors,
123
+ tabs: body.tabs,
124
+ utilityBar: body.utilityBar,
125
+ brandColor: body.brandColor,
126
+ logo: body.logo,
127
+ sourcePath: r.source_path,
128
+ contentHash: r.content_hash,
129
+ };
130
+ });
131
+ }
132
+ readLwcs() {
133
+ return this.#store
134
+ .query("SELECT fqn, api_version, master_label, description, is_exposed, body_json, source_path, content_hash FROM lwcs")
135
+ .map((r) => {
136
+ const body = JSON.parse(r.body_json);
137
+ return {
138
+ fullyQualifiedName: r.fqn,
139
+ apiVersion: r.api_version ?? undefined,
140
+ masterLabel: r.master_label ?? undefined,
141
+ description: r.description ?? undefined,
142
+ isExposed: r.is_exposed === 1,
143
+ targets: body.targets,
144
+ hasHtml: body.hasHtml,
145
+ hasCss: body.hasCss,
146
+ apexImports: body.apexImports,
147
+ labelImports: body.labelImports,
148
+ publicProperties: body.publicProperties,
149
+ wires: body.wires,
150
+ customEvents: body.customEvents,
151
+ childComponents: body.childComponents,
152
+ standardComponents: body.standardComponents,
153
+ directives: body.directives,
154
+ sourcePath: r.source_path,
155
+ contentHash: r.content_hash,
156
+ };
157
+ });
158
+ }
159
+ readAuraBundles() {
160
+ return this.#store
161
+ .query("SELECT fqn, bundle_kind, api_version, description, body_json, source_path, content_hash FROM aura_bundles")
162
+ .map((r) => {
163
+ const body = JSON.parse(r.body_json);
164
+ return {
165
+ fullyQualifiedName: r.fqn,
166
+ bundleKind: r.bundle_kind,
167
+ apiVersion: r.api_version ?? undefined,
168
+ description: r.description ?? undefined,
169
+ hasController: body.hasController,
170
+ hasHelper: body.hasHelper,
171
+ hasRenderer: body.hasRenderer,
172
+ hasStyle: body.hasStyle,
173
+ attributes: body.attributes,
174
+ handlers: body.handlers,
175
+ sourcePath: r.source_path,
176
+ contentHash: r.content_hash,
177
+ };
178
+ });
179
+ }
180
+ readFlexiPages() {
181
+ return this.#store
182
+ .query("SELECT fqn, type, sobject_type, page_template, master_label, description, body_json, source_path, content_hash FROM flexi_pages")
183
+ .map((r) => {
184
+ const body = JSON.parse(r.body_json);
185
+ return {
186
+ fullyQualifiedName: r.fqn,
187
+ type: r.type ?? undefined,
188
+ sobjectType: r.sobject_type ?? undefined,
189
+ pageTemplate: r.page_template ?? undefined,
190
+ masterLabel: r.master_label ?? undefined,
191
+ description: r.description ?? undefined,
192
+ regions: body.regions,
193
+ sourcePath: r.source_path,
194
+ contentHash: r.content_hash,
195
+ };
196
+ });
197
+ }
198
+ readLayouts() {
199
+ return this.#store
200
+ .query("SELECT fqn, object, layout_name, body_json, source_path, content_hash FROM layouts")
201
+ .map((r) => {
202
+ const body = JSON.parse(r.body_json);
203
+ return {
204
+ fullyQualifiedName: r.fqn,
205
+ object: r.object,
206
+ layoutName: r.layout_name,
207
+ sections: body.sections,
208
+ relatedLists: body.relatedLists,
209
+ quickActions: body.quickActions,
210
+ sourcePath: r.source_path,
211
+ contentHash: r.content_hash,
212
+ };
213
+ });
214
+ }
215
+ readCustomMetadataRecords() {
216
+ return this.#store
217
+ .query("SELECT fqn, type, record_name, label, is_protected, body_json, source_path, content_hash FROM custom_metadata_records")
218
+ .map((r) => {
219
+ const body = JSON.parse(r.body_json);
220
+ return {
221
+ fullyQualifiedName: r.fqn,
222
+ type: r.type,
223
+ recordName: r.record_name,
224
+ label: r.label ?? undefined,
225
+ protected: r.is_protected === null ? undefined : r.is_protected === 1,
226
+ values: body.values,
227
+ sourcePath: r.source_path,
228
+ contentHash: r.content_hash,
229
+ };
230
+ });
231
+ }
232
+ readNamedCredentials() {
233
+ return this.#store
234
+ .query("SELECT fqn, label, endpoint, principal_type, protocol, has_secret, source_path, content_hash FROM named_credentials")
235
+ .map((r) => ({
236
+ fullyQualifiedName: r.fqn,
237
+ label: r.label ?? undefined,
238
+ endpoint: r.endpoint ?? undefined,
239
+ principalType: r.principal_type ?? undefined,
240
+ protocol: r.protocol ?? undefined,
241
+ hasSecret: r.has_secret === 1,
242
+ sourcePath: r.source_path,
243
+ contentHash: r.content_hash,
244
+ }));
245
+ }
246
+ readRemoteSiteSettings() {
247
+ return this.#store
248
+ .query("SELECT fqn, url, description, active, disable_protocol_security, source_path, content_hash FROM remote_site_settings")
249
+ .map((r) => ({
250
+ fullyQualifiedName: r.fqn,
251
+ url: r.url ?? undefined,
252
+ description: r.description ?? undefined,
253
+ active: r.active === 1,
254
+ disableProtocolSecurity: r.disable_protocol_security === 1,
255
+ sourcePath: r.source_path,
256
+ contentHash: r.content_hash,
257
+ }));
258
+ }
259
+ readApprovalProcesses() {
260
+ return this.#store
261
+ .query("SELECT fqn, object, label, description, active, body_json, source_path, content_hash FROM approval_processes")
262
+ .map((r) => {
263
+ const body = JSON.parse(r.body_json);
264
+ return {
265
+ fullyQualifiedName: r.fqn,
266
+ object: r.object,
267
+ label: r.label ?? undefined,
268
+ description: r.description ?? undefined,
269
+ active: r.active === 1,
270
+ entryCriteria: body.entryCriteria,
271
+ steps: body.steps,
272
+ initialSubmissionActions: body.initialSubmissionActions,
273
+ finalApprovalActions: body.finalApprovalActions,
274
+ finalRejectionActions: body.finalRejectionActions,
275
+ recallActions: body.recallActions,
276
+ recordEditability: body.recordEditability,
277
+ sourcePath: r.source_path,
278
+ contentHash: r.content_hash,
279
+ };
280
+ });
281
+ }
282
+ readSharingRules() {
283
+ return this.#store
284
+ .query("SELECT fqn, object, kind, label, description, access_level, body_json, source_path, content_hash FROM sharing_rules")
285
+ .map((r) => {
286
+ const body = JSON.parse(r.body_json);
287
+ return {
288
+ fullyQualifiedName: r.fqn,
289
+ object: r.object,
290
+ kind: r.kind,
291
+ label: r.label ?? undefined,
292
+ description: r.description ?? undefined,
293
+ accessLevel: r.access_level,
294
+ sharedTo: body.sharedTo,
295
+ criteriaItems: body.criteriaItems,
296
+ criteriaBooleanFilter: body.criteriaBooleanFilter,
297
+ ownerSource: body.ownerSource,
298
+ sourcePath: r.source_path,
299
+ contentHash: r.content_hash,
300
+ };
301
+ });
302
+ }
303
+ readRecordTypes() {
304
+ return this.#store
305
+ .query("SELECT fqn, object, label, description, active, source_path, content_hash FROM record_types")
306
+ .map((r) => ({
307
+ fullyQualifiedName: r.fqn,
308
+ object: r.object,
309
+ label: r.label ?? undefined,
310
+ description: r.description ?? undefined,
311
+ active: r.active === 1,
312
+ sourcePath: r.source_path,
313
+ contentHash: r.content_hash,
314
+ }));
315
+ }
316
+ readMeta() {
317
+ const rows = this.#store.query("SELECT key, value FROM meta");
318
+ const map = new Map(rows.map((r) => [r.key, r.value]));
319
+ return {
320
+ yohakuVersion: map.get("yohaku_version") ?? "0.0.1",
321
+ builtAt: map.get("built_at") ?? new Date().toISOString(),
322
+ sourceAdapter: (map.get("source_adapter") ?? "local"),
323
+ salesforceApiVersion: map.get("salesforce_api_version") ?? DEFAULT_API,
324
+ sourceHash: map.get("source_hash") ?? "sha256:unknown",
325
+ };
326
+ }
327
+ readObjects() {
328
+ return this.#store
329
+ .query("SELECT fqn, label, plural_label, description, is_custom, sharing_model, source_path, content_hash FROM objects")
330
+ .map((r) => ({
331
+ fullyQualifiedName: r.fqn,
332
+ label: r.label,
333
+ pluralLabel: r.plural_label ?? undefined,
334
+ description: r.description ?? undefined,
335
+ isCustom: r.is_custom === 1,
336
+ sharingModel: (r.sharing_model ?? undefined),
337
+ sourcePath: r.source_path,
338
+ contentHash: r.content_hash,
339
+ }));
340
+ }
341
+ readFields() {
342
+ return this.#store
343
+ .query("SELECT fqn, object, label, description, type, required, is_unique, is_custom, reference_to_json, picklist_values_json, source_path, content_hash FROM fields")
344
+ .map((r) => ({
345
+ fullyQualifiedName: r.fqn,
346
+ object: r.object,
347
+ label: r.label ?? undefined,
348
+ description: r.description ?? undefined,
349
+ type: r.type,
350
+ required: r.required === null ? undefined : r.required === 1,
351
+ unique: r.is_unique === null ? undefined : r.is_unique === 1,
352
+ isCustom: r.is_custom === 1,
353
+ referenceTo: r.reference_to_json !== null
354
+ ? JSON.parse(r.reference_to_json)
355
+ : undefined,
356
+ picklistValues: r.picklist_values_json !== null
357
+ ? JSON.parse(r.picklist_values_json)
358
+ : undefined,
359
+ sourcePath: r.source_path,
360
+ contentHash: r.content_hash,
361
+ }));
362
+ }
363
+ readValidationRules() {
364
+ return this.#store
365
+ .query("SELECT fqn, object, active, error_condition_formula, error_message, error_display_field, source_path, content_hash FROM validation_rules")
366
+ .map((r) => ({
367
+ fullyQualifiedName: r.fqn,
368
+ object: r.object,
369
+ active: r.active === 1,
370
+ errorConditionFormula: r.error_condition_formula ?? undefined,
371
+ errorMessage: r.error_message ?? undefined,
372
+ errorDisplayField: r.error_display_field ?? undefined,
373
+ sourcePath: r.source_path,
374
+ contentHash: r.content_hash,
375
+ }));
376
+ }
377
+ readFlows() {
378
+ return this.#store
379
+ .query("SELECT fqn, label, description, type, status, triggering_object, source_path, content_hash, body_json FROM flows")
380
+ .map((r) => ({
381
+ fullyQualifiedName: r.fqn,
382
+ label: r.label ?? undefined,
383
+ description: r.description ?? undefined,
384
+ type: r.type,
385
+ status: r.status,
386
+ triggeringObject: r.triggering_object ?? undefined,
387
+ sourcePath: r.source_path,
388
+ contentHash: r.content_hash,
389
+ body: parseFlowBody(r.body_json),
390
+ }));
391
+ }
392
+ readApexClasses() {
393
+ return this.#store
394
+ .query("SELECT fqn, api_version, is_test, is_interface, is_abstract, lines_of_code, source_path, content_hash, body_json FROM apex_classes")
395
+ .map((r) => ({
396
+ fullyQualifiedName: r.fqn,
397
+ apiVersion: r.api_version,
398
+ isTest: r.is_test === 1,
399
+ isInterface: r.is_interface === null ? undefined : r.is_interface === 1,
400
+ isAbstract: r.is_abstract === null ? undefined : r.is_abstract === 1,
401
+ linesOfCode: r.lines_of_code ?? undefined,
402
+ sourcePath: r.source_path,
403
+ contentHash: r.content_hash,
404
+ body: parseApexBody(r.body_json),
405
+ }));
406
+ }
407
+ readApexTriggers() {
408
+ return this.#store
409
+ .query("SELECT fqn, object, events_json, api_version, source_path, content_hash, body_json FROM apex_triggers")
410
+ .map((r) => ({
411
+ fullyQualifiedName: r.fqn,
412
+ object: r.object,
413
+ events: JSON.parse(r.events_json),
414
+ apiVersion: r.api_version,
415
+ sourcePath: r.source_path,
416
+ contentHash: r.content_hash,
417
+ body: parseApexBody(r.body_json),
418
+ }));
419
+ }
420
+ readPermissionSets() {
421
+ return this.#store
422
+ .query("SELECT fqn, label, description, license, source_path, content_hash, body_json FROM permission_sets")
423
+ .map((r) => ({
424
+ fullyQualifiedName: r.fqn,
425
+ label: r.label,
426
+ description: r.description ?? undefined,
427
+ license: r.license ?? undefined,
428
+ sourcePath: r.source_path,
429
+ contentHash: r.content_hash,
430
+ body: parsePermissionSetBody(r.body_json),
431
+ }));
432
+ }
433
+ readProfiles() {
434
+ return this.#store
435
+ .query("SELECT fqn, user_license, source_path, content_hash, body_json FROM profiles")
436
+ .map((r) => ({
437
+ fullyQualifiedName: r.fqn,
438
+ userLicense: r.user_license ?? undefined,
439
+ sourcePath: r.source_path,
440
+ contentHash: r.content_hash,
441
+ body: parsePermissionSetBody(r.body_json),
442
+ }));
443
+ }
444
+ }
445
+ //# sourceMappingURL=sqlite-reader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sqlite-reader.js","sourceRoot":"","sources":["../../src/graph/sqlite-reader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,78 @@
1
+ import type { KnowledgeGraph } from "../types/graph.js";
2
+ export interface SqliteStoreOptions {
3
+ readonly dbPath: string;
4
+ /** read-only モード。CLI の `yohaku graph query` 等、外部入力を扱う経路で必ず true を指定する */
5
+ readonly readonly?: boolean;
6
+ }
7
+ /** 単一カラムの定義 (PRAGMA table_info ベース) */
8
+ export interface ColumnSchema {
9
+ readonly name: string;
10
+ readonly type: string;
11
+ readonly notNull: boolean;
12
+ readonly defaultValue: string | null;
13
+ readonly primaryKey: boolean;
14
+ }
15
+ /** 単一テーブルのスキーマ (`yohaku graph schema --tables` の出力単位) */
16
+ export interface TableSchema {
17
+ readonly table: string;
18
+ readonly columns: readonly ColumnSchema[];
19
+ }
20
+ /**
21
+ * 外部入力 (CLI 引数, AI 経由) の SQL を実行する前に、
22
+ * SELECT / WITH (CTE) 以外の構文を拒否する。
23
+ * better-sqlite3 の `readonly: true` と併せた多層防御。
24
+ */
25
+ export declare function isSafeReadOnlyQuery(sql: string): boolean;
26
+ export declare class SqliteGraphStore {
27
+ #private;
28
+ constructor(options: SqliteStoreOptions);
29
+ close(): void;
30
+ query<T = unknown>(sql: string, params?: readonly unknown[]): readonly T[];
31
+ /**
32
+ * 外部入力由来の SQL を実行する。SELECT / WITH のみ許可、危険キーワードを拒否。
33
+ * `readonly: true` で開いた接続でのみ呼び出すことを推奨 (二重防御)。
34
+ */
35
+ queryUntrusted<T = unknown>(sql: string, params?: readonly unknown[]): readonly T[];
36
+ /**
37
+ * `.yohaku/graph.sqlite` の実テーブル定義を返す。
38
+ * `yohaku graph query` 経由では `PRAGMA` が拒否されるため、
39
+ * AI / 外部ツールがスキーマ確認に使える安全な経路を提供する。
40
+ *
41
+ * @param tableName 単一テーブルに絞る場合に指定 (sqlite_* システムテーブルは除外)
42
+ */
43
+ getTableSchemas(tableName?: string): readonly TableSchema[];
44
+ /**
45
+ * 全テーブルの全カラム名をフラットに返す。エラー時のサジェスト用。
46
+ */
47
+ getAllColumnNames(): readonly string[];
48
+ /**
49
+ * テーブル名一覧を返す。エラー時のサジェスト用。
50
+ */
51
+ getAllTableNames(): readonly string[];
52
+ writeAll(graph: KnowledgeGraph, mode: "full" | "incremental"): void;
53
+ private writeMeta;
54
+ private writeObjects;
55
+ private writeFields;
56
+ private writeValidationRules;
57
+ private writeFlows;
58
+ private writeApexClasses;
59
+ private writeApexTriggers;
60
+ private writePermissionSets;
61
+ private writeProfiles;
62
+ private writeRecordTypes;
63
+ private writeApprovalProcesses;
64
+ private writeLayouts;
65
+ private writeCustomMetadataRecords;
66
+ private writeNamedCredentials;
67
+ private writeLwcs;
68
+ private writeAuraBundles;
69
+ private writeFlexiPages;
70
+ private writeVisualforcePages;
71
+ private writeVisualforceComponents;
72
+ private writeCustomApplications;
73
+ private writeRemoteSiteSettings;
74
+ private writeSharingRules;
75
+ private writeDependencies;
76
+ private writeTags;
77
+ }
78
+ //# sourceMappingURL=sqlite-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sqlite-store.d.ts","sourceRoot":"","sources":["../../src/graph/sqlite-store.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAwSxD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,yEAAyE;IACzE,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,uCAAuC;AACvC,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;CAC9B;AAED,yDAAyD;AACzD,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,SAAS,YAAY,EAAE,CAAC;CAC3C;AAuCD;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAuBxD;AAED,qBAAa,gBAAgB;;gBAIf,OAAO,EAAE,kBAAkB;IAsBvC,KAAK,IAAI,IAAI;IAIb,KAAK,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,GAAE,SAAS,OAAO,EAAO,GAAG,SAAS,CAAC,EAAE;IAI9E;;;OAGG;IACH,cAAc,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,GAAE,SAAS,OAAO,EAAO,GAAG,SAAS,CAAC,EAAE;IASvF;;;;;;OAMG;IACH,eAAe,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,WAAW,EAAE;IAqC3D;;OAEG;IACH,iBAAiB,IAAI,SAAS,MAAM,EAAE;IAStC;;OAEG;IACH,gBAAgB,IAAI,SAAS,MAAM,EAAE;IAUrC,QAAQ,CAAC,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI;IA+BnE,OAAO,CAAC,SAAS;IASjB,OAAO,CAAC,YAAY;IAkBpB,OAAO,CAAC,WAAW;IAsBnB,OAAO,CAAC,oBAAoB;IAkB5B,OAAO,CAAC,UAAU;IAmBlB,OAAO,CAAC,gBAAgB;IAmBxB,OAAO,CAAC,iBAAiB;IAiBzB,OAAO,CAAC,mBAAmB;IAiB3B,OAAO,CAAC,aAAa;IAerB,OAAO,CAAC,gBAAgB;IAiBxB,OAAO,CAAC,sBAAsB;IA2B9B,OAAO,CAAC,YAAY;IAqBpB,OAAO,CAAC,0BAA0B;IAkBlC,OAAO,CAAC,qBAAqB;IAkB7B,OAAO,CAAC,SAAS;IA+BjB,OAAO,CAAC,gBAAgB;IAyBxB,OAAO,CAAC,eAAe;IAmBvB,OAAO,CAAC,qBAAqB;IA4B7B,OAAO,CAAC,0BAA0B;IAuBlC,OAAO,CAAC,uBAAuB;IAwB/B,OAAO,CAAC,uBAAuB;IAiB/B,OAAO,CAAC,iBAAiB;IAyBzB,OAAO,CAAC,iBAAiB;IAgBzB,OAAO,CAAC,SAAS;CAQlB"}