@owlmeans/viable-common 0.0.43 → 0.0.45

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 (708) hide show
  1. package/README.md +3 -3
  2. package/agent-meta/manifest.json +2 -2
  3. package/agent-meta/skills/agent-presentation/SKILL.md +4 -4
  4. package/agent-meta/skills/viable-common/SKILL.md +59 -36
  5. package/build/agent/consts.d.ts +58 -0
  6. package/build/agent/consts.d.ts.map +1 -0
  7. package/build/agent/consts.js +63 -0
  8. package/build/agent/consts.js.map +1 -0
  9. package/build/agent/consts.local.d.ts +21 -0
  10. package/build/agent/consts.local.d.ts.map +1 -0
  11. package/build/agent/consts.local.js +44 -0
  12. package/build/agent/consts.local.js.map +1 -0
  13. package/build/agent/index.d.ts +2 -0
  14. package/build/agent/index.d.ts.map +1 -1
  15. package/build/agent/index.js +1 -0
  16. package/build/agent/index.js.map +1 -1
  17. package/build/agent/presentation/types.d.ts +21 -0
  18. package/build/agent/presentation/types.d.ts.map +1 -0
  19. package/build/agent/presentation/types.js.map +1 -0
  20. package/build/agent/presentation.d.ts +12 -94
  21. package/build/agent/presentation.d.ts.map +1 -1
  22. package/build/agent/presentation.js +218 -299
  23. package/build/agent/presentation.js.map +1 -1
  24. package/build/agent/types.d.ts +30 -0
  25. package/build/agent/types.d.ts.map +1 -1
  26. package/build/agent/types.local.d.ts +4 -0
  27. package/build/agent/types.local.d.ts.map +1 -0
  28. package/build/agent/types.local.js +2 -0
  29. package/build/agent/types.local.js.map +1 -0
  30. package/build/areas/consts.d.ts +5 -0
  31. package/build/areas/consts.d.ts.map +1 -1
  32. package/build/areas/consts.js +4 -0
  33. package/build/areas/consts.js.map +1 -1
  34. package/build/areas/index.d.ts +1 -0
  35. package/build/areas/index.d.ts.map +1 -1
  36. package/build/areas/index.js.map +1 -1
  37. package/build/areas/tenancy/types.d.ts +23 -0
  38. package/build/areas/tenancy/types.d.ts.map +1 -0
  39. package/build/areas/tenancy/types.js +2 -0
  40. package/build/areas/tenancy/types.js.map +1 -0
  41. package/build/areas/tenancy.d.ts +6 -50
  42. package/build/areas/tenancy.d.ts.map +1 -1
  43. package/build/areas/tenancy.js +21 -31
  44. package/build/areas/tenancy.js.map +1 -1
  45. package/build/areas/types.d.ts +32 -0
  46. package/build/areas/types.d.ts.map +1 -1
  47. package/build/ba/connecting/types.d.ts +45 -0
  48. package/build/ba/connecting/types.d.ts.map +1 -0
  49. package/build/ba/connecting/types.js +2 -0
  50. package/build/ba/connecting/types.js.map +1 -0
  51. package/build/ba/connecting.d.ts +4 -0
  52. package/build/ba/connecting.d.ts.map +1 -0
  53. package/build/ba/connecting.js +47 -0
  54. package/build/ba/connecting.js.map +1 -0
  55. package/build/ba/helpers.d.ts +4 -39
  56. package/build/ba/helpers.d.ts.map +1 -1
  57. package/build/ba/helpers.js +5 -79
  58. package/build/ba/helpers.js.map +1 -1
  59. package/build/ba/index.d.ts +2 -0
  60. package/build/ba/index.d.ts.map +1 -1
  61. package/build/ba/index.js +1 -0
  62. package/build/ba/index.js.map +1 -1
  63. package/build/ba/types.d.ts +1 -1
  64. package/build/ba/types.d.ts.map +1 -1
  65. package/build/blueprint/consts.d.ts +41 -0
  66. package/build/blueprint/consts.d.ts.map +1 -1
  67. package/build/blueprint/consts.js +51 -0
  68. package/build/blueprint/consts.js.map +1 -1
  69. package/build/blueprint/consts.local.d.ts +2 -0
  70. package/build/blueprint/consts.local.d.ts.map +1 -0
  71. package/build/blueprint/consts.local.js +3 -0
  72. package/build/blueprint/consts.local.js.map +1 -0
  73. package/build/blueprint/index.d.ts +1 -0
  74. package/build/blueprint/index.d.ts.map +1 -1
  75. package/build/blueprint/index.js +1 -0
  76. package/build/blueprint/index.js.map +1 -1
  77. package/build/blueprint/types.d.ts +3 -52
  78. package/build/blueprint/types.d.ts.map +1 -1
  79. package/build/blueprint/types.js +1 -65
  80. package/build/blueprint/types.js.map +1 -1
  81. package/build/blueprint/utils.d.ts +11 -0
  82. package/build/blueprint/utils.d.ts.map +1 -0
  83. package/build/blueprint/utils.js +16 -0
  84. package/build/blueprint/utils.js.map +1 -0
  85. package/build/branding.d.ts +0 -8
  86. package/build/branding.d.ts.map +1 -1
  87. package/build/branding.js +0 -16
  88. package/build/branding.js.map +1 -1
  89. package/build/connect/branding/types.d.ts +28 -0
  90. package/build/connect/branding/types.d.ts.map +1 -0
  91. package/build/connect/branding/types.js +2 -0
  92. package/build/connect/branding/types.js.map +1 -0
  93. package/build/connect/consts.d.ts +2 -10
  94. package/build/connect/consts.d.ts.map +1 -1
  95. package/build/connect/consts.js +2 -23
  96. package/build/connect/consts.js.map +1 -1
  97. package/build/connect/conversion/types.d.ts +93 -0
  98. package/build/connect/conversion/types.d.ts.map +1 -0
  99. package/build/connect/conversion/types.js +2 -0
  100. package/build/connect/conversion/types.js.map +1 -0
  101. package/build/connect/entrypoints/types.d.ts +30 -0
  102. package/build/connect/entrypoints/types.d.ts.map +1 -0
  103. package/build/connect/entrypoints/types.js +2 -0
  104. package/build/connect/entrypoints/types.js.map +1 -0
  105. package/build/connect/entrypoints.d.ts +61 -92
  106. package/build/connect/entrypoints.d.ts.map +1 -1
  107. package/build/connect/entrypoints.js +5 -2
  108. package/build/connect/entrypoints.js.map +1 -1
  109. package/build/connect/errors/types.d.ts +20 -0
  110. package/build/connect/errors/types.d.ts.map +1 -0
  111. package/build/connect/errors/types.js +2 -0
  112. package/build/connect/errors/types.js.map +1 -0
  113. package/build/connect/errors.d.ts +32 -0
  114. package/build/connect/errors.d.ts.map +1 -1
  115. package/build/connect/errors.js +65 -0
  116. package/build/connect/errors.js.map +1 -1
  117. package/build/connect/index.d.ts +13 -2
  118. package/build/connect/index.d.ts.map +1 -1
  119. package/build/connect/index.js +1 -0
  120. package/build/connect/index.js.map +1 -1
  121. package/build/connect/kit/types.d.ts +52 -0
  122. package/build/connect/kit/types.d.ts.map +1 -0
  123. package/build/connect/kit/types.js +2 -0
  124. package/build/connect/{types.js.map → kit/types.js.map} +1 -1
  125. package/build/connect/model-tier/types.d.ts +16 -0
  126. package/build/connect/model-tier/types.d.ts.map +1 -0
  127. package/build/connect/model-tier/types.js +2 -0
  128. package/build/connect/model-tier/types.js.map +1 -0
  129. package/build/connect/model-tier.d.ts +4 -0
  130. package/build/connect/model-tier.d.ts.map +1 -0
  131. package/build/connect/model-tier.js +21 -0
  132. package/build/connect/model-tier.js.map +1 -0
  133. package/build/connect/{ops.d.ts → ops/types.d.ts} +13 -4
  134. package/build/connect/ops/types.d.ts.map +1 -0
  135. package/build/connect/ops/types.js +2 -0
  136. package/build/connect/ops/types.js.map +1 -0
  137. package/build/connect/pipeline/types.d.ts +39 -0
  138. package/build/connect/pipeline/types.d.ts.map +1 -0
  139. package/build/connect/pipeline/types.js +2 -0
  140. package/build/connect/pipeline/types.js.map +1 -0
  141. package/build/connect/project/types.d.ts +127 -0
  142. package/build/connect/project/types.d.ts.map +1 -0
  143. package/build/connect/project/types.js +2 -0
  144. package/build/connect/project/types.js.map +1 -0
  145. package/build/connect/references/types.d.ts +157 -0
  146. package/build/connect/references/types.d.ts.map +1 -0
  147. package/build/connect/references/types.js +2 -0
  148. package/build/connect/references/types.js.map +1 -0
  149. package/build/connect/references/types.local.d.ts +5 -0
  150. package/build/connect/references/types.local.d.ts.map +1 -0
  151. package/build/connect/references/types.local.js +2 -0
  152. package/build/connect/references/types.local.js.map +1 -0
  153. package/build/connect/references.d.ts +1 -153
  154. package/build/connect/references.d.ts.map +1 -1
  155. package/build/connect/references.js.map +1 -1
  156. package/build/connect/schemas.d.ts +9 -5
  157. package/build/connect/schemas.d.ts.map +1 -1
  158. package/build/connect/schemas.js +10 -3
  159. package/build/connect/schemas.js.map +1 -1
  160. package/build/connect/session/types.d.ts +73 -0
  161. package/build/connect/session/types.d.ts.map +1 -0
  162. package/build/connect/session/types.js +2 -0
  163. package/build/connect/session/types.js.map +1 -0
  164. package/build/connect/settings/types.d.ts +48 -0
  165. package/build/connect/settings/types.d.ts.map +1 -0
  166. package/build/connect/settings/types.js +2 -0
  167. package/build/connect/settings/types.js.map +1 -0
  168. package/build/consts.d.ts +8 -0
  169. package/build/consts.d.ts.map +1 -1
  170. package/build/consts.js +16 -0
  171. package/build/consts.js.map +1 -1
  172. package/build/convert/analysis/types.d.ts +93 -0
  173. package/build/convert/analysis/types.d.ts.map +1 -0
  174. package/build/convert/analysis/types.js +2 -0
  175. package/build/convert/analysis/types.js.map +1 -0
  176. package/build/convert/census/consts.local.d.ts +55 -0
  177. package/build/convert/census/consts.local.d.ts.map +1 -0
  178. package/build/convert/census/consts.local.js +104 -0
  179. package/build/convert/census/consts.local.js.map +1 -0
  180. package/build/convert/census/types.d.ts +176 -0
  181. package/build/convert/census/types.d.ts.map +1 -0
  182. package/build/convert/census/types.js +2 -0
  183. package/build/convert/census/types.js.map +1 -0
  184. package/build/convert/census.d.ts +4 -0
  185. package/build/convert/census.d.ts.map +1 -0
  186. package/build/convert/census.js +83 -0
  187. package/build/convert/census.js.map +1 -0
  188. package/build/convert/consts.d.ts +4 -12
  189. package/build/convert/consts.d.ts.map +1 -1
  190. package/build/convert/consts.js +4 -3
  191. package/build/convert/consts.js.map +1 -1
  192. package/build/convert/detection/types.d.ts +67 -0
  193. package/build/convert/detection/types.d.ts.map +1 -0
  194. package/build/convert/detection/types.js +2 -0
  195. package/build/convert/detection/types.js.map +1 -0
  196. package/build/convert/docs/types.d.ts +129 -0
  197. package/build/convert/docs/types.d.ts.map +1 -0
  198. package/build/convert/docs/types.js +2 -0
  199. package/build/convert/docs/types.js.map +1 -0
  200. package/build/convert/docs.d.ts +4 -0
  201. package/build/convert/docs.d.ts.map +1 -0
  202. package/build/convert/docs.js +9 -0
  203. package/build/convert/docs.js.map +1 -0
  204. package/build/convert/estimate/types.d.ts +77 -0
  205. package/build/convert/estimate/types.d.ts.map +1 -0
  206. package/build/convert/estimate/types.js +2 -0
  207. package/build/convert/estimate/types.js.map +1 -0
  208. package/build/convert/estimate.d.ts +11 -0
  209. package/build/convert/estimate.d.ts.map +1 -0
  210. package/build/convert/estimate.js +18 -0
  211. package/build/convert/estimate.js.map +1 -0
  212. package/build/convert/helpers.d.ts +14 -78
  213. package/build/convert/helpers.d.ts.map +1 -1
  214. package/build/convert/helpers.js +27 -300
  215. package/build/convert/helpers.js.map +1 -1
  216. package/build/convert/index.d.ts +15 -0
  217. package/build/convert/index.d.ts.map +1 -1
  218. package/build/convert/index.js +6 -0
  219. package/build/convert/index.js.map +1 -1
  220. package/build/convert/origin/types.d.ts +41 -0
  221. package/build/convert/origin/types.d.ts.map +1 -0
  222. package/build/convert/origin/types.js +2 -0
  223. package/build/convert/origin/types.js.map +1 -0
  224. package/build/convert/origin.d.ts +4 -0
  225. package/build/convert/origin.d.ts.map +1 -0
  226. package/build/convert/origin.js +25 -0
  227. package/build/convert/origin.js.map +1 -0
  228. package/build/convert/record/types.d.ts +98 -0
  229. package/build/convert/record/types.d.ts.map +1 -0
  230. package/build/convert/record/types.js +2 -0
  231. package/build/convert/record/types.js.map +1 -0
  232. package/build/convert/schemas.d.ts +7 -6
  233. package/build/convert/schemas.d.ts.map +1 -1
  234. package/build/convert/schemas.js +1 -5
  235. package/build/convert/schemas.js.map +1 -1
  236. package/build/convert/stage/types.d.ts +27 -0
  237. package/build/convert/stage/types.d.ts.map +1 -0
  238. package/build/convert/stage/types.js +2 -0
  239. package/build/convert/stage/types.js.map +1 -0
  240. package/build/convert/stage.d.ts +4 -0
  241. package/build/convert/stage.d.ts.map +1 -0
  242. package/build/convert/stage.js +25 -0
  243. package/build/convert/stage.js.map +1 -0
  244. package/build/convert/taxonomy/types.d.ts +71 -0
  245. package/build/convert/taxonomy/types.d.ts.map +1 -0
  246. package/build/convert/taxonomy/types.js +2 -0
  247. package/build/convert/taxonomy/types.js.map +1 -0
  248. package/build/convert/types.d.ts +1 -648
  249. package/build/convert/types.d.ts.map +1 -1
  250. package/build/convert/utils.d.ts +5 -0
  251. package/build/convert/utils.d.ts.map +1 -0
  252. package/build/convert/utils.js +6 -0
  253. package/build/convert/utils.js.map +1 -0
  254. package/build/design/consts.d.ts +37 -0
  255. package/build/design/consts.d.ts.map +1 -1
  256. package/build/design/consts.js +44 -8
  257. package/build/design/consts.js.map +1 -1
  258. package/build/design/helpers.d.ts +9 -49
  259. package/build/design/helpers.d.ts.map +1 -1
  260. package/build/design/helpers.js +17 -224
  261. package/build/design/helpers.js.map +1 -1
  262. package/build/design/index.d.ts +3 -0
  263. package/build/design/index.d.ts.map +1 -1
  264. package/build/design/index.js +1 -0
  265. package/build/design/index.js.map +1 -1
  266. package/build/design/runtime/types.d.ts +16 -0
  267. package/build/design/runtime/types.d.ts.map +1 -0
  268. package/build/design/runtime/types.js +2 -0
  269. package/build/design/runtime/types.js.map +1 -0
  270. package/build/design/runtime.d.ts +8 -105
  271. package/build/design/runtime.d.ts.map +1 -1
  272. package/build/design/runtime.js +13 -48
  273. package/build/design/runtime.js.map +1 -1
  274. package/build/design/schemas.d.ts +1 -9
  275. package/build/design/schemas.d.ts.map +1 -1
  276. package/build/design/schemas.js +1 -1
  277. package/build/design/schemas.js.map +1 -1
  278. package/build/design/story/types.d.ts +67 -0
  279. package/build/design/story/types.d.ts.map +1 -0
  280. package/build/design/story/types.js +2 -0
  281. package/build/design/story/types.js.map +1 -0
  282. package/build/design/story.d.ts +4 -0
  283. package/build/design/story.d.ts.map +1 -0
  284. package/build/design/story.js +184 -0
  285. package/build/design/story.js.map +1 -0
  286. package/build/design/types.d.ts +75 -1
  287. package/build/design/types.d.ts.map +1 -1
  288. package/build/dev/schemas.d.ts.map +1 -1
  289. package/build/dev/schemas.js.map +1 -1
  290. package/build/dev/types.local.d.ts +5 -0
  291. package/build/dev/types.local.d.ts.map +1 -0
  292. package/build/dev/types.local.js +2 -0
  293. package/build/dev/types.local.js.map +1 -0
  294. package/build/integrity/consts.d.ts +0 -117
  295. package/build/integrity/consts.d.ts.map +1 -1
  296. package/build/integrity/consts.js +0 -281
  297. package/build/integrity/consts.js.map +1 -1
  298. package/build/integrity/consts.local.d.ts +5 -0
  299. package/build/integrity/consts.local.d.ts.map +1 -0
  300. package/build/integrity/consts.local.js +5 -0
  301. package/build/integrity/consts.local.js.map +1 -0
  302. package/build/integrity/index.d.ts +5 -0
  303. package/build/integrity/index.d.ts.map +1 -1
  304. package/build/integrity/index.js +3 -0
  305. package/build/integrity/index.js.map +1 -1
  306. package/build/integrity/layout/consts.d.ts +59 -0
  307. package/build/integrity/layout/consts.d.ts.map +1 -0
  308. package/build/integrity/layout/consts.js +66 -0
  309. package/build/integrity/layout/consts.js.map +1 -0
  310. package/build/integrity/layout/consts.local.d.ts +18 -0
  311. package/build/integrity/layout/consts.local.d.ts.map +1 -0
  312. package/build/integrity/layout/consts.local.js +176 -0
  313. package/build/integrity/layout/consts.local.js.map +1 -0
  314. package/build/integrity/layout/types.d.ts +35 -0
  315. package/build/integrity/layout/types.d.ts.map +1 -0
  316. package/build/integrity/layout/types.js +2 -0
  317. package/build/integrity/layout/types.js.map +1 -0
  318. package/build/integrity/layout.d.ts +4 -0
  319. package/build/integrity/layout.d.ts.map +1 -0
  320. package/build/integrity/layout.js +25 -0
  321. package/build/integrity/layout.js.map +1 -0
  322. package/build/integrity/types.d.ts +36 -2
  323. package/build/integrity/types.d.ts.map +1 -1
  324. package/build/integrity/utils.d.ts +13 -0
  325. package/build/integrity/utils.d.ts.map +1 -0
  326. package/build/integrity/utils.js +12 -0
  327. package/build/integrity/utils.js.map +1 -0
  328. package/build/integrity/verify/types.d.ts +26 -0
  329. package/build/integrity/verify/types.d.ts.map +1 -0
  330. package/build/integrity/verify/types.js +2 -0
  331. package/build/integrity/verify/types.js.map +1 -0
  332. package/build/integrity/verify.d.ts +5 -19
  333. package/build/integrity/verify.d.ts.map +1 -1
  334. package/build/integrity/verify.js +165 -175
  335. package/build/integrity/verify.js.map +1 -1
  336. package/build/intent/consts.d.ts +16 -0
  337. package/build/intent/consts.d.ts.map +1 -1
  338. package/build/intent/consts.js +63 -0
  339. package/build/intent/consts.js.map +1 -1
  340. package/build/intent/entrypoints.d.ts +2 -12
  341. package/build/intent/entrypoints.d.ts.map +1 -1
  342. package/build/intent/entrypoints.js.map +1 -1
  343. package/build/intent/index.d.ts +0 -1
  344. package/build/intent/index.d.ts.map +1 -1
  345. package/build/intent/index.js +0 -1
  346. package/build/intent/index.js.map +1 -1
  347. package/build/intent/types.d.ts +13 -0
  348. package/build/intent/types.d.ts.map +1 -1
  349. package/build/metadata/consts.d.ts +33 -0
  350. package/build/metadata/consts.d.ts.map +1 -1
  351. package/build/metadata/consts.js +37 -0
  352. package/build/metadata/consts.js.map +1 -1
  353. package/build/metadata/types.d.ts +1 -33
  354. package/build/metadata/types.d.ts.map +1 -1
  355. package/build/metadata/types.js +1 -38
  356. package/build/metadata/types.js.map +1 -1
  357. package/build/moderation/index.d.ts +2 -0
  358. package/build/moderation/index.d.ts.map +1 -1
  359. package/build/moderation/index.js +1 -0
  360. package/build/moderation/index.js.map +1 -1
  361. package/build/moderation/utils.d.ts +3 -15
  362. package/build/moderation/utils.d.ts.map +1 -1
  363. package/build/moderation/utils.js +5 -30
  364. package/build/moderation/utils.js.map +1 -1
  365. package/build/moderation/verdict/types.d.ts +24 -0
  366. package/build/moderation/verdict/types.d.ts.map +1 -0
  367. package/build/moderation/verdict/types.js +2 -0
  368. package/build/moderation/verdict/types.js.map +1 -0
  369. package/build/moderation/verdict.d.ts +4 -0
  370. package/build/moderation/verdict.d.ts.map +1 -0
  371. package/build/moderation/verdict.js +21 -0
  372. package/build/moderation/verdict.js.map +1 -0
  373. package/build/planning/card/types.d.ts +42 -0
  374. package/build/planning/card/types.d.ts.map +1 -0
  375. package/build/planning/card/types.js +2 -0
  376. package/build/planning/card/types.js.map +1 -0
  377. package/build/planning/card.d.ts +4 -0
  378. package/build/planning/card.d.ts.map +1 -0
  379. package/build/planning/card.js +51 -0
  380. package/build/planning/card.js.map +1 -0
  381. package/build/planning/consts.d.ts +13 -1
  382. package/build/planning/consts.d.ts.map +1 -1
  383. package/build/planning/consts.js +13 -0
  384. package/build/planning/consts.js.map +1 -1
  385. package/build/planning/helpers.d.ts +11 -37
  386. package/build/planning/helpers.d.ts.map +1 -1
  387. package/build/planning/helpers.js +24 -103
  388. package/build/planning/helpers.js.map +1 -1
  389. package/build/planning/index.d.ts +5 -1
  390. package/build/planning/index.d.ts.map +1 -1
  391. package/build/planning/index.js +2 -1
  392. package/build/planning/index.js.map +1 -1
  393. package/build/planning/landing/types.d.ts +16 -0
  394. package/build/planning/landing/types.d.ts.map +1 -0
  395. package/build/planning/landing/types.js +2 -0
  396. package/build/planning/landing/types.js.map +1 -0
  397. package/build/planning/landing.d.ts +5 -22
  398. package/build/planning/landing.d.ts.map +1 -1
  399. package/build/planning/landing.js +21 -35
  400. package/build/planning/landing.js.map +1 -1
  401. package/build/planning/schemas.d.ts +33 -0
  402. package/build/planning/schemas.d.ts.map +1 -1
  403. package/build/planning/schemas.js +173 -4
  404. package/build/planning/schemas.js.map +1 -1
  405. package/build/planning/spec/types.d.ts +22 -0
  406. package/build/planning/spec/types.d.ts.map +1 -0
  407. package/build/planning/spec/types.js +2 -0
  408. package/build/planning/spec/types.js.map +1 -0
  409. package/build/planning/spec.d.ts +4 -0
  410. package/build/planning/spec.d.ts.map +1 -0
  411. package/build/planning/spec.js +30 -0
  412. package/build/planning/spec.js.map +1 -0
  413. package/build/planning/types.d.ts +6 -5
  414. package/build/planning/types.d.ts.map +1 -1
  415. package/build/preview/consts.d.ts +3 -1
  416. package/build/preview/consts.d.ts.map +1 -1
  417. package/build/preview/consts.js +2 -0
  418. package/build/preview/consts.js.map +1 -1
  419. package/build/preview/types.d.ts +17 -2
  420. package/build/preview/types.d.ts.map +1 -1
  421. package/build/scaffold/consts.d.ts +40 -1
  422. package/build/scaffold/consts.d.ts.map +1 -1
  423. package/build/scaffold/consts.js +52 -0
  424. package/build/scaffold/consts.js.map +1 -1
  425. package/build/scaffold/helpers.d.ts +5 -30
  426. package/build/scaffold/helpers.d.ts.map +1 -1
  427. package/build/scaffold/helpers.js +9 -53
  428. package/build/scaffold/helpers.js.map +1 -1
  429. package/build/scaffold/index.d.ts +4 -0
  430. package/build/scaffold/index.d.ts.map +1 -1
  431. package/build/scaffold/index.js +2 -0
  432. package/build/scaffold/index.js.map +1 -1
  433. package/build/scaffold/landing/types.d.ts +48 -0
  434. package/build/scaffold/landing/types.d.ts.map +1 -0
  435. package/build/scaffold/landing/types.js +2 -0
  436. package/build/scaffold/landing/types.js.map +1 -0
  437. package/build/scaffold/landing.d.ts +4 -0
  438. package/build/scaffold/landing.d.ts.map +1 -0
  439. package/build/scaffold/landing.js +95 -0
  440. package/build/scaffold/landing.js.map +1 -0
  441. package/build/scaffold/schemas.d.ts +3 -2
  442. package/build/scaffold/schemas.d.ts.map +1 -1
  443. package/build/scaffold/schemas.js +177 -7
  444. package/build/scaffold/schemas.js.map +1 -1
  445. package/build/scaffold/share/types.d.ts +35 -0
  446. package/build/scaffold/share/types.d.ts.map +1 -0
  447. package/build/scaffold/share/types.js +2 -0
  448. package/build/scaffold/share/types.js.map +1 -0
  449. package/build/scaffold/share.d.ts +4 -0
  450. package/build/scaffold/share.d.ts.map +1 -0
  451. package/build/scaffold/share.js +42 -0
  452. package/build/scaffold/share.js.map +1 -0
  453. package/build/scaffold/types.d.ts +114 -2
  454. package/build/scaffold/types.d.ts.map +1 -1
  455. package/build/skills/consts.d.ts +42 -0
  456. package/build/skills/consts.d.ts.map +1 -1
  457. package/build/skills/consts.js +43 -0
  458. package/build/skills/consts.js.map +1 -1
  459. package/build/skills/index.d.ts +0 -1
  460. package/build/skills/index.d.ts.map +1 -1
  461. package/build/skills/index.js +0 -1
  462. package/build/skills/index.js.map +1 -1
  463. package/build/slot/command/types.d.ts +21 -0
  464. package/build/slot/command/types.d.ts.map +1 -0
  465. package/build/slot/command/types.js +2 -0
  466. package/build/slot/command/types.js.map +1 -0
  467. package/build/slot/command.d.ts +4 -0
  468. package/build/slot/command.d.ts.map +1 -0
  469. package/build/slot/command.js +31 -0
  470. package/build/slot/command.js.map +1 -0
  471. package/build/slot/consts.d.ts +7 -13
  472. package/build/slot/consts.d.ts.map +1 -1
  473. package/build/slot/consts.js +10 -36
  474. package/build/slot/consts.js.map +1 -1
  475. package/build/slot/helpers.d.ts +3 -22
  476. package/build/slot/helpers.d.ts.map +1 -1
  477. package/build/slot/helpers.js +5 -26
  478. package/build/slot/helpers.js.map +1 -1
  479. package/build/slot/index.d.ts +6 -0
  480. package/build/slot/index.d.ts.map +1 -1
  481. package/build/slot/index.js +3 -0
  482. package/build/slot/index.js.map +1 -1
  483. package/build/slot/layout/types.d.ts +17 -0
  484. package/build/slot/layout/types.d.ts.map +1 -0
  485. package/build/slot/layout/types.js +2 -0
  486. package/build/slot/layout/types.js.map +1 -0
  487. package/build/slot/layout.d.ts +5 -66
  488. package/build/slot/layout.d.ts.map +1 -1
  489. package/build/slot/layout.js +13 -27
  490. package/build/slot/layout.js.map +1 -1
  491. package/build/slot/origin/types.d.ts +23 -0
  492. package/build/slot/origin/types.d.ts.map +1 -0
  493. package/build/slot/origin/types.js +2 -0
  494. package/build/slot/origin/types.js.map +1 -0
  495. package/build/slot/origin.d.ts +4 -0
  496. package/build/slot/origin.d.ts.map +1 -0
  497. package/build/slot/origin.js +15 -0
  498. package/build/slot/origin.js.map +1 -0
  499. package/build/slot/types.d.ts +55 -1
  500. package/build/slot/types.d.ts.map +1 -1
  501. package/build/slot/utils.d.ts +6 -0
  502. package/build/slot/utils.d.ts.map +1 -0
  503. package/build/slot/utils.js +6 -0
  504. package/build/slot/utils.js.map +1 -0
  505. package/build/topology/card/types.d.ts +21 -0
  506. package/build/topology/card/types.d.ts.map +1 -0
  507. package/build/topology/card/types.js +2 -0
  508. package/build/topology/card/types.js.map +1 -0
  509. package/build/topology/card.d.ts +7 -19
  510. package/build/topology/card.d.ts.map +1 -1
  511. package/build/topology/card.js +84 -89
  512. package/build/topology/card.js.map +1 -1
  513. package/build/topology/consts.local.d.ts +4 -0
  514. package/build/topology/consts.local.d.ts.map +1 -0
  515. package/build/topology/consts.local.js +4 -0
  516. package/build/topology/consts.local.js.map +1 -0
  517. package/build/topology/helpers.d.ts +7 -33
  518. package/build/topology/helpers.d.ts.map +1 -1
  519. package/build/topology/helpers.js +15 -111
  520. package/build/topology/helpers.js.map +1 -1
  521. package/build/topology/index.d.ts +3 -0
  522. package/build/topology/index.d.ts.map +1 -1
  523. package/build/topology/index.js +1 -0
  524. package/build/topology/index.js.map +1 -1
  525. package/build/topology/resolve/types.d.ts +47 -0
  526. package/build/topology/resolve/types.d.ts.map +1 -0
  527. package/build/topology/resolve/types.js +2 -0
  528. package/build/topology/resolve/types.js.map +1 -0
  529. package/build/topology/resolve.d.ts +4 -0
  530. package/build/topology/resolve.d.ts.map +1 -0
  531. package/build/topology/resolve.js +89 -0
  532. package/build/topology/resolve.js.map +1 -0
  533. package/build/topology/types.d.ts +5 -0
  534. package/build/topology/types.d.ts.map +1 -1
  535. package/package.json +13 -13
  536. package/src/agent/consts.local.ts +47 -0
  537. package/src/agent/consts.ts +61 -0
  538. package/src/agent/index.ts +2 -0
  539. package/src/agent/presentation/types.ts +21 -0
  540. package/src/agent/presentation.ts +200 -309
  541. package/src/agent/types.local.ts +3 -0
  542. package/src/agent/types.ts +40 -0
  543. package/src/areas/consts.ts +7 -0
  544. package/src/areas/index.ts +1 -0
  545. package/src/areas/tenancy/types.ts +23 -0
  546. package/src/areas/tenancy.ts +26 -61
  547. package/src/areas/types.ts +31 -0
  548. package/src/ba/connecting/types.ts +45 -0
  549. package/src/ba/connecting.ts +64 -0
  550. package/src/ba/helpers.ts +8 -92
  551. package/src/ba/index.ts +2 -0
  552. package/src/ba/types.ts +1 -1
  553. package/src/blueprint/consts.local.ts +3 -0
  554. package/src/blueprint/consts.ts +52 -0
  555. package/src/blueprint/index.ts +1 -0
  556. package/src/blueprint/types.ts +4 -74
  557. package/src/blueprint/utils.ts +20 -0
  558. package/src/branding.ts +0 -17
  559. package/src/connect/branding/types.ts +29 -0
  560. package/src/connect/consts.ts +3 -22
  561. package/src/connect/conversion/types.ts +96 -0
  562. package/src/connect/entrypoints/types.ts +25 -0
  563. package/src/connect/entrypoints.ts +18 -35
  564. package/src/connect/errors/types.ts +22 -0
  565. package/src/connect/errors.ts +75 -0
  566. package/src/connect/index.ts +13 -2
  567. package/src/connect/kit/types.ts +56 -0
  568. package/src/connect/model-tier/types.ts +16 -0
  569. package/src/connect/model-tier.ts +22 -0
  570. package/src/connect/{ops.ts → ops/types.ts} +13 -3
  571. package/src/connect/pipeline/types.ts +41 -0
  572. package/src/connect/project/types.ts +127 -0
  573. package/src/connect/references/types.local.ts +5 -0
  574. package/src/connect/references/types.ts +73 -0
  575. package/src/connect/references.ts +15 -75
  576. package/src/connect/schemas.ts +19 -12
  577. package/src/connect/session/types.ts +81 -0
  578. package/src/connect/settings/types.ts +52 -0
  579. package/src/consts.ts +17 -0
  580. package/src/convert/analysis/types.ts +89 -0
  581. package/src/convert/census/consts.local.ts +120 -0
  582. package/src/convert/census/types.ts +181 -0
  583. package/src/convert/census.ts +95 -0
  584. package/src/convert/consts.ts +5 -14
  585. package/src/convert/detection/types.ts +74 -0
  586. package/src/convert/docs/types.ts +151 -0
  587. package/src/convert/docs.ts +15 -0
  588. package/src/convert/estimate/types.ts +75 -0
  589. package/src/convert/estimate.ts +19 -0
  590. package/src/convert/helpers.ts +29 -328
  591. package/src/convert/index.ts +15 -0
  592. package/src/convert/origin/types.ts +43 -0
  593. package/src/convert/origin.ts +33 -0
  594. package/src/convert/record/types.ts +105 -0
  595. package/src/convert/schemas.ts +13 -12
  596. package/src/convert/stage/types.ts +27 -0
  597. package/src/convert/stage.ts +31 -0
  598. package/src/convert/taxonomy/types.ts +74 -0
  599. package/src/convert/types.ts +5 -703
  600. package/src/convert/utils.ts +7 -0
  601. package/src/design/consts.ts +48 -0
  602. package/src/design/helpers.ts +20 -245
  603. package/src/design/index.ts +3 -0
  604. package/src/design/runtime/types.ts +14 -0
  605. package/src/design/runtime.ts +18 -116
  606. package/src/design/schemas.ts +2 -10
  607. package/src/design/story/types.ts +67 -0
  608. package/src/design/story.ts +221 -0
  609. package/src/design/types.ts +81 -1
  610. package/src/dev/schemas.ts +1 -3
  611. package/src/dev/types.local.ts +4 -0
  612. package/src/integrity/consts.local.ts +5 -0
  613. package/src/integrity/consts.ts +0 -348
  614. package/src/integrity/index.ts +5 -0
  615. package/src/integrity/layout/consts.local.ts +188 -0
  616. package/src/integrity/layout/consts.ts +79 -0
  617. package/src/integrity/layout/types.ts +35 -0
  618. package/src/integrity/layout.ts +39 -0
  619. package/src/integrity/types.ts +37 -2
  620. package/src/integrity/utils.ts +21 -0
  621. package/src/integrity/verify/types.ts +26 -0
  622. package/src/integrity/verify.ts +178 -184
  623. package/src/intent/consts.ts +67 -0
  624. package/src/intent/entrypoints.ts +2 -3
  625. package/src/intent/index.ts +0 -1
  626. package/src/intent/types.ts +10 -0
  627. package/src/metadata/consts.ts +37 -0
  628. package/src/metadata/types.ts +1 -37
  629. package/src/moderation/index.ts +2 -0
  630. package/src/moderation/utils.ts +7 -30
  631. package/src/moderation/verdict/types.ts +22 -0
  632. package/src/moderation/verdict.ts +28 -0
  633. package/src/planning/card/types.ts +44 -0
  634. package/src/planning/card.ts +77 -0
  635. package/src/planning/consts.ts +15 -2
  636. package/src/planning/helpers.ts +28 -116
  637. package/src/planning/index.ts +5 -1
  638. package/src/planning/landing/types.ts +15 -0
  639. package/src/planning/landing.ts +28 -38
  640. package/src/planning/schemas.ts +191 -4
  641. package/src/planning/spec/types.ts +22 -0
  642. package/src/planning/spec.ts +41 -0
  643. package/src/planning/types.ts +6 -6
  644. package/src/preview/consts.ts +2 -0
  645. package/src/preview/types.ts +19 -0
  646. package/src/scaffold/consts.ts +65 -1
  647. package/src/scaffold/helpers.ts +14 -80
  648. package/src/scaffold/index.ts +4 -0
  649. package/src/scaffold/landing/types.ts +48 -0
  650. package/src/scaffold/landing.ts +120 -0
  651. package/src/scaffold/schemas.ts +183 -7
  652. package/src/scaffold/share/types.ts +35 -0
  653. package/src/scaffold/share.ts +60 -0
  654. package/src/scaffold/types.ts +123 -1
  655. package/src/skills/consts.ts +46 -0
  656. package/src/skills/index.ts +0 -1
  657. package/src/slot/command/types.ts +21 -0
  658. package/src/slot/command.ts +38 -0
  659. package/src/slot/consts.ts +11 -40
  660. package/src/slot/helpers.ts +6 -31
  661. package/src/slot/index.ts +6 -0
  662. package/src/slot/layout/types.ts +17 -0
  663. package/src/slot/layout.ts +19 -77
  664. package/src/slot/origin/types.ts +23 -0
  665. package/src/slot/origin.ts +20 -0
  666. package/src/slot/types.ts +58 -1
  667. package/src/slot/utils.ts +10 -0
  668. package/src/topology/card/types.ts +21 -0
  669. package/src/topology/card.ts +85 -90
  670. package/src/topology/consts.local.ts +6 -0
  671. package/src/topology/helpers.ts +20 -125
  672. package/src/topology/index.ts +3 -0
  673. package/src/topology/resolve/types.ts +47 -0
  674. package/src/topology/resolve.ts +118 -0
  675. package/src/topology/types.ts +6 -0
  676. package/tests/blueprint.spec.ts +1 -2
  677. package/tests/branding.spec.ts +2 -2
  678. package/tests/connect-convert.spec.ts +21 -1
  679. package/tests/connect-errors.spec.ts +34 -1
  680. package/tests/convert.spec.ts +51 -52
  681. package/tests/design.spec.ts +13 -16
  682. package/tests/error-status.spec.ts +7 -1
  683. package/tests/planning.spec.ts +58 -75
  684. package/tests/presentation.spec.ts +21 -23
  685. package/tests/scaffold.spec.ts +286 -6
  686. package/tests/tenancy.spec.ts +21 -21
  687. package/build/connect/ops.d.ts.map +0 -1
  688. package/build/connect/ops.js +0 -2
  689. package/build/connect/ops.js.map +0 -1
  690. package/build/connect/types.d.ts +0 -437
  691. package/build/connect/types.d.ts.map +0 -1
  692. package/build/intent/flow.d.ts +0 -17
  693. package/build/intent/flow.d.ts.map +0 -1
  694. package/build/intent/flow.js +0 -65
  695. package/build/intent/flow.js.map +0 -1
  696. package/build/planning/flows.d.ts +0 -34
  697. package/build/planning/flows.d.ts.map +0 -1
  698. package/build/planning/flows.js +0 -174
  699. package/build/planning/flows.js.map +0 -1
  700. package/build/skills/roles.d.ts +0 -43
  701. package/build/skills/roles.d.ts.map +0 -1
  702. package/build/skills/roles.js +0 -44
  703. package/build/skills/roles.js.map +0 -1
  704. package/src/connect/types.ts +0 -466
  705. package/src/intent/flow.ts +0 -67
  706. package/src/planning/flows.ts +0 -204
  707. package/src/skills/roles.ts +0 -46
  708. /package/build/{connect → agent/presentation}/types.js +0 -0
@@ -0,0 +1,181 @@
1
+ import type { DumpKind, EntropyClass, FileClass, SizeClass, WorkspaceKind } from '../consts.js'
2
+
3
+ /**
4
+ * The census's file classification: pure, deterministic derivations over the conversion
5
+ * vocabulary.
6
+ *
7
+ * Everything here answers the same way for the same input, in every runtime, forever — which is
8
+ * what makes the documents a conversion writes byte-stable across two runs, and therefore what
9
+ * makes the prompt cache prefix they are injected into actually hit. Nothing here reads a file,
10
+ * calls a model or looks at a clock.
11
+ */
12
+ export interface CensusHelper {
13
+ /** Which {@link SizeClass} a byte count falls in. Boundaries are exclusive upper bounds. */
14
+ sizeClassOf: (bytes: number) => SizeClass
15
+ /**
16
+ * What one file of the origin is.
17
+ *
18
+ * Location outranks the tail wherever it says more — a `.ts` under `__tests__/` is a test, a
19
+ * `.json` under `seed/` is data — but only where it says more. The seed/dump rule therefore runs
20
+ * AFTER the extension table and applies only to {@link DATA_OVERRIDABLE}: asked first, it answered
21
+ * `Data` for every path merely containing the word (`tests/fixtures/user.ts`, `src/seedUsers.ts`,
22
+ * `src/exportReport.ts`), which is the census's source budget spent on the wrong files twice over.
23
+ */
24
+ fileClassOf: (path: string, ext: string) => FileClass
25
+ /**
26
+ * The binary verdict a path already carries, or `null` for a file that has to be probed.
27
+ *
28
+ * The three executors that walk a tree — the library-local helper, the publisher and the connector
29
+ * SDK — must answer the same verdict for the same file, and a probe alone does not: a small `.ico`
30
+ * with no NUL in its first bytes reads as text, so a census run on a laptop and the same census
31
+ * run in the slot disagreed about the same repository. The tail is asked first and the probe only
32
+ * where the tail says nothing, which is also why the probe is affordable at census scale — the
33
+ * extensions above are the bulk of any repository.
34
+ *
35
+ * The extension is taken exactly the way `path.extname` takes it, because two of the three callers
36
+ * used to: the last dot of the last SEGMENT, and nothing for a name with no dot or for a dotfile.
37
+ */
38
+ binaryByExtension: (path: string) => boolean | null
39
+ /**
40
+ * How usable a file's head is as evidence.
41
+ *
42
+ * The printable ratio over the sampled head, and nothing cleverer: the question is only whether a
43
+ * model can read it. A minified bundle is printable and useless, so a second rule catches the
44
+ * shape that gives it away — very long lines with almost no whitespace.
45
+ */
46
+ entropyClassOf: (head: string) => EntropyClass
47
+ /** Whether a path names bulk data — an export, not the application's own data. */
48
+ isBulkPath: (path: string) => boolean
49
+ /** Whether a path names seed data — what the application needs in order to make sense. */
50
+ isSeedPath: (path: string) => boolean
51
+ }
52
+
53
+ /**
54
+ * {@link FileStat} is declared in `../../slot/types.js`, not here.
55
+ *
56
+ * It is the element of a `statTree` answer, and a slot command's result shape belongs to the slot
57
+ * vocabulary the publisher and the connector both implement. Redeclaring it beside the census that
58
+ * consumes it would give the root barrel two `FileStat`s and the two would drift the first time
59
+ * one end added a field.
60
+ */
61
+
62
+ /** One file, as the census classified it. `read` says whether its head was actually opened. */
63
+ export interface FileCensusEntry {
64
+ path: string
65
+ bytes: number
66
+ ext: string
67
+ cls: FileClass
68
+ size: SizeClass
69
+ entropy?: EntropyClass
70
+ read: boolean
71
+ }
72
+
73
+ /** A package manifest found in the origin, and what it declares. */
74
+ export interface InventoryPackage {
75
+ name?: string
76
+ path: string
77
+ /** The manifest file itself, root-relative — `package.json`, `pom.xml`, `go.mod`, … */
78
+ manifest: string
79
+ /** `member` for a package a workspace root declares; otherwise the workspace kind it declares. */
80
+ kind: WorkspaceKind | 'member'
81
+ deps: string[]
82
+ scripts: Record<string, string>
83
+ /** Whether something in the tree actually reaches it. See {@link UnlinkedRef}. */
84
+ linked: boolean
85
+ }
86
+
87
+ export interface WorkspaceMember {
88
+ name?: string
89
+ path: string
90
+ /** The manifest that declared this member. */
91
+ declaredBy: string
92
+ present: boolean
93
+ }
94
+
95
+ export interface SubmoduleRef {
96
+ path: string
97
+ url?: string
98
+ present: boolean
99
+ }
100
+
101
+ /**
102
+ * A directory holding code that nothing in the workspace declares, or a declaration with nothing
103
+ * behind it.
104
+ *
105
+ * Reported rather than silently included: code the build never sees is code the origin does not
106
+ * run, and converting it produces stories for behaviour the application does not have.
107
+ */
108
+ export interface UnlinkedRef {
109
+ path: string
110
+ reason: 'not-a-member' | 'missing-submodule' | 'declared-not-present'
111
+ }
112
+
113
+ export interface WorkspaceReport {
114
+ kind: WorkspaceKind
115
+ globs: string[]
116
+ members: WorkspaceMember[]
117
+ submodules: SubmoduleRef[]
118
+ unlinked: UnlinkedRef[]
119
+ }
120
+
121
+ /** A data file the origin carries that is too large, or too generated, to become seed data. */
122
+ export interface DumpRecord {
123
+ path: string
124
+ kind: DumpKind
125
+ bytes: number
126
+ format: string
127
+ rows?: number
128
+ /** At most {@link DUMP_SAMPLE_LINES} lines, read from the head. Never the whole file. */
129
+ sample: string[]
130
+ columns?: string[]
131
+ }
132
+
133
+ /** A small data file the code itself references — the data the application needs to make sense. */
134
+ export interface SeedRecord {
135
+ name: string
136
+ path: string
137
+ bytes: number
138
+ format: string
139
+ rows?: number
140
+ /** The source files that name it. The proof that it is seed rather than an export. */
141
+ referencedBy: string[]
142
+ carried: boolean
143
+ /** Where it was written in the target, once carried. */
144
+ target?: string
145
+ }
146
+
147
+ export interface InventorySummary {
148
+ root: string
149
+ files: number
150
+ bytes: number
151
+ read: number
152
+ skipped: number
153
+ /** A census that hit {@link CENSUS_MAX_ENTRIES}. Everything downstream must say so. */
154
+ truncated: boolean
155
+ byClass: Record<FileClass, number>
156
+ bySize: Record<SizeClass, number>
157
+ extensions: { ext: string, files: number, bytes: number }[]
158
+ packages: InventoryPackage[]
159
+ workspace: WorkspaceReport
160
+ dumps: DumpRecord[]
161
+ seeds: SeedRecord[]
162
+ manifests: string[]
163
+ vcs: { git: boolean, submodules: number }
164
+ version: number
165
+ takenAt: string
166
+ }
167
+
168
+ /** One data file, classified by the model where the path and the size alone were not enough. */
169
+ export interface SeedDetectionItem {
170
+ path: string
171
+ name: string
172
+ /** Whether it is data the application needs rather than an export of what it produced. */
173
+ seed: boolean
174
+ /** Whether it should be carried into the target. */
175
+ carry: boolean
176
+ reason: string
177
+ }
178
+
179
+ export interface SeedDetection {
180
+ items: SeedDetectionItem[]
181
+ }
@@ -0,0 +1,95 @@
1
+ import { EntropyClass, FileClass, SizeClass, SIZE_CLASS_BOUNDS } from './consts.js'
2
+ import {
3
+ BINARY_EXTENSIONS, BULK_HINTS, DATA_AMBIGUOUS_EXT, DATA_OVERRIDABLE, EXT_CLASS, GENERATED_SEGMENTS, LOCK_NAMES,
4
+ MANIFEST_NAMES, SEED_HINTS, TEST_SEGMENTS, TEXT_EXTENSIONS
5
+ } from './census/consts.local.js'
6
+ import type { CensusHelper } from './census/types.js'
7
+
8
+ export const createCensusHelper = (): CensusHelper => {
9
+ const sizeClassOf = (bytes: number): SizeClass => {
10
+ if (bytes < SIZE_CLASS_BOUNDS[SizeClass.Tiny]) return SizeClass.Tiny
11
+ if (bytes < SIZE_CLASS_BOUNDS[SizeClass.Small]) return SizeClass.Small
12
+ if (bytes < SIZE_CLASS_BOUNDS[SizeClass.Medium]) return SizeClass.Medium
13
+ if (bytes < SIZE_CLASS_BOUNDS[SizeClass.Large]) return SizeClass.Large
14
+
15
+ return SizeClass.Huge
16
+ }
17
+
18
+ const segmentsOf = (path: string): string[] => path.split('/').filter(part => part !== '')
19
+
20
+ const hasSegment = (path: string, of: string[]): boolean =>
21
+ segmentsOf(path).some(part => of.includes(part.toLowerCase()))
22
+
23
+ const fileClassOf = (path: string, ext: string): FileClass => {
24
+ const lower = path.toLowerCase()
25
+ const base = segmentsOf(lower).pop() ?? lower
26
+ const tail = (ext.startsWith('.') ? ext.slice(1) : ext).toLowerCase()
27
+
28
+ if (LOCK_NAMES.includes(base)) return FileClass.Lock
29
+ if (hasSegment(lower, GENERATED_SEGMENTS)) return FileClass.Generated
30
+ if (MANIFEST_NAMES.includes(base)) return FileClass.Manifest
31
+ if (hasSegment(lower, TEST_SEGMENTS) || base.includes('.test.') || base.includes('.spec.')) {
32
+ return FileClass.Test
33
+ }
34
+ if (base.startsWith('.env')) return FileClass.Config
35
+
36
+ const byExt = EXT_CLASS[tail] ?? FileClass.Unknown
37
+ if (
38
+ (DATA_OVERRIDABLE.includes(byExt) || DATA_AMBIGUOUS_EXT.includes(tail))
39
+ && (isSeedPath(lower) || isBulkPath(lower))
40
+ ) {
41
+ return FileClass.Data
42
+ }
43
+
44
+ return byExt
45
+ }
46
+
47
+ const binaryByExtension = (path: string): boolean | null => {
48
+ const base = segmentsOf(path).pop() ?? path
49
+ const dot = base.lastIndexOf('.')
50
+ if (dot < 1) return null
51
+ const ext = base.slice(dot).toLowerCase()
52
+
53
+ return TEXT_EXTENSIONS.includes(ext) ? false : BINARY_EXTENSIONS.includes(ext) ? true : null
54
+ }
55
+
56
+ const entropyClassOf = (head: string): EntropyClass => {
57
+ if (head.length < 1) return EntropyClass.Text
58
+
59
+ let printable = 0
60
+ let whitespace = 0
61
+ for (const char of head) {
62
+ const code = char.codePointAt(0) ?? 0
63
+ if (code === 9 || code === 10 || code === 13 || code === 32) {
64
+ ++whitespace
65
+ ++printable
66
+ } else if (code >= 32 && code !== 127) {
67
+ ++printable
68
+ }
69
+ }
70
+
71
+ const ratio = printable / head.length
72
+ if (ratio < 0.85) return EntropyClass.Opaque
73
+ // Prose, code and markup all break lines and indent. A body that does neither is minified,
74
+ // encoded or packed — printable, and not something a model can reason over.
75
+ if (whitespace / head.length < 0.05) return EntropyClass.Dense
76
+
77
+ return EntropyClass.Text
78
+ }
79
+
80
+ const matchesHint = (path: string, hints: string[]): boolean => {
81
+ const lower = path.toLowerCase()
82
+ if (hasSegment(lower, hints)) return true
83
+ const base = segmentsOf(lower).pop() ?? lower
84
+
85
+ return hints.some(hint => base.includes(hint))
86
+ }
87
+
88
+ const isBulkPath = (path: string): boolean => matchesHint(path, BULK_HINTS)
89
+
90
+ const isSeedPath = (path: string): boolean => matchesHint(path, SEED_HINTS)
91
+
92
+ return { sizeClassOf, fileClassOf, binaryByExtension, entropyClassOf, isBulkPath, isSeedPath }
93
+ }
94
+
95
+ export const censusHelper = createCensusHelper()
@@ -14,7 +14,6 @@
14
14
  * things at each hop.
15
15
  */
16
16
 
17
- import type { StoryKind } from '../ba/consts.js'
18
17
  import { HISTORY_FILE, METADATA_DIRS } from '../metadata/consts.js'
19
18
 
20
19
  /**
@@ -359,15 +358,6 @@ export enum EstimateSlice {
359
358
  Fixed = 'fixed',
360
359
  }
361
360
 
362
- /**
363
- * What KIND of story a conversion produced.
364
- *
365
- * The analysis half of a conversion produces exactly the two kinds an ordinary initialization
366
- * does; a conversion adds one more — a `coverage` story, written so an area the origin serves but
367
- * the flow never reaches still has something in it.
368
- */
369
- export type ConversionStoryKind = StoryKind | 'coverage'
370
-
371
361
  /**
372
362
  * Where the origin's own sources live inside the target's volume.
373
363
  *
@@ -454,10 +444,6 @@ export const CONVERSION_SEED_DIR = `${CONVERSION_DIR}/seed`
454
444
  /** The carried seed data itself, beside its description. */
455
445
  export const CONVERSION_SEED_DATA_DIR = `${CONVERSION_SEED_DIR}/data`
456
446
 
457
- export const conversionStoryDoc = (code: string): string => `${CONVERSION_STORY_DIR}/${code}.md`
458
- export const conversionSeedDoc = (name: string): string => `${CONVERSION_SEED_DIR}/${name}.md`
459
- export const conversionSeedData = (name: string, ext: string): string =>
460
- `${CONVERSION_SEED_DATA_DIR}/${name}.${ext}`
461
447
 
462
448
  /**
463
449
  * The two agent-memory nodes a conversion writes into the TARGET's own harness.
@@ -670,3 +656,8 @@ export const CONVERSION_INQUIRY = {
670
656
  areasMap: 'convert.areas.map',
671
657
  originRelocate: 'convert.origin.relocate',
672
658
  } as const
659
+
660
+ /** The reasons a convertibility verdict can carry, for a consumer building its own enum check. */
661
+ export const ConvertibilityReasonValues = Object.values(ConvertibilityReason)
662
+ export const ConvertibilityVerdictValues = Object.values(ConvertibilityVerdict)
663
+ export const EstimateSliceValues = Object.values(EstimateSlice)
@@ -0,0 +1,74 @@
1
+ import type { TargetLayout } from '../../integrity/consts.js'
2
+ import type {
3
+ ArchitectureCase, ConvertibilityReason, ConvertibilityVerdict, OriginShape, StackFamily, StackId
4
+ } from '../consts.js'
5
+
6
+ /** One piece of evidence for a stack, and how much it counts for. */
7
+ export interface StackSignal {
8
+ id: StackId
9
+ weight: number
10
+ evidence: string
11
+ }
12
+
13
+ /**
14
+ * What the pure detector concluded, before any model was asked.
15
+ *
16
+ * `confirmed` records whether the ONE model confirmation ran and agreed. `confirmedCase` is what
17
+ * that same call answered about the architecture — asked together because a model that has just
18
+ * read the manifests to name a framework has already read everything the case follows from, and
19
+ * two calls over the same evidence is twice the price for one answer.
20
+ */
21
+ export interface StackDetection {
22
+ stack: StackId
23
+ family: StackFamily
24
+ alternative?: StackId
25
+ confidence: number
26
+ confirmed: boolean
27
+ confirmedCase?: ArchitectureCase
28
+ signals: StackSignal[]
29
+ runtime?: string
30
+ reason?: string
31
+ }
32
+
33
+ /** The ONE model confirmation of the detected stack, and the case it implies. */
34
+ export interface StackConfirmation {
35
+ stack: StackId
36
+ alternative?: StackId
37
+ case: ArchitectureCase
38
+ runtime?: string
39
+ confidence: number
40
+ reason: string
41
+ }
42
+
43
+ /**
44
+ * What the tree IS, as the integrity manifest sees it.
45
+ *
46
+ * `violations` is how far a tree is from being a Viable target: zero means it IS one and the
47
+ * conversion is a repair, a handful means somebody edited a generated project, and a large number
48
+ * means it is foreign code that happens to be TypeScript.
49
+ */
50
+ export interface OriginShapeReport {
51
+ shape: OriginShape
52
+ layout?: TargetLayout
53
+ violations: number
54
+ evidence: string[]
55
+ }
56
+
57
+ export interface ArchitectureVerdict {
58
+ case: ArchitectureCase
59
+ confidence: number
60
+ reasons: string[]
61
+ /** Two cases fit equally well; the user is asked which. */
62
+ ambiguous: boolean
63
+ /** The origin has no user interface at all — a case the implementation stage must design one for. */
64
+ uiGap: boolean
65
+ }
66
+
67
+ export interface ConvertibilityReport {
68
+ verdict: ConvertibilityVerdict
69
+ reasons: ConvertibilityReason[]
70
+ /** What makes the verdict `Refused`, phrased for a person. */
71
+ blockers: string[]
72
+ /** What makes it `Limited` — shown before the user pays for anything. */
73
+ notes: string[]
74
+ }
@@ -0,0 +1,151 @@
1
+ import type { ProjectArea } from '../../areas/consts.js'
2
+ import type {
3
+ ArchitectureCase, ConversionStage, ConvertibilityVerdict, OriginKind, PurposeEvidenceSource, StackFamily, StackId
4
+ } from '../consts.js'
5
+
6
+ /** Where the per-story and per-seed conversion documents live in a target. */
7
+ export interface ConversionDocHelper {
8
+ /** The restored story document of one story code. */
9
+ conversionStoryDoc: (code: string) => string
10
+ /** The description document of one carried seed. */
11
+ conversionSeedDoc: (name: string) => string
12
+ /** The carried seed data file itself. */
13
+ conversionSeedData: (name: string, ext: string) => string
14
+ }
15
+
16
+ export interface ConversionDocMeta {
17
+ version: number
18
+ stage: ConversionStage
19
+ updatedAt: string
20
+ }
21
+
22
+ export interface ConversionIndexMeta extends ConversionDocMeta {
23
+ origin: string
24
+ originKind: OriginKind
25
+ stack: StackId
26
+ case: ArchitectureCase
27
+ verdict: ConvertibilityVerdict
28
+ purged: boolean
29
+ }
30
+
31
+ export interface InventoryDocMeta extends ConversionDocMeta {
32
+ files: number
33
+ bytes: number
34
+ packages: number
35
+ dumps: number
36
+ seeds: number
37
+ truncated: boolean
38
+ }
39
+
40
+ export interface StackDocMeta extends ConversionDocMeta {
41
+ stack: StackId
42
+ family: StackFamily
43
+ alternative?: StackId
44
+ confidence: number
45
+ confirmed: boolean
46
+ }
47
+
48
+ export interface ArchitectureDocMeta extends ConversionDocMeta {
49
+ case: ArchitectureCase
50
+ confidence: number
51
+ ambiguous: boolean
52
+ uiGap: boolean
53
+ }
54
+
55
+ export interface HarnessDocMeta extends ConversionDocMeta {
56
+ docs: number
57
+ hasReadme: boolean
58
+ hasAgents: boolean
59
+ openapi: boolean
60
+ }
61
+
62
+ export interface TaxonomyDocMeta extends ConversionDocMeta {
63
+ case: ArchitectureCase
64
+ packages: number
65
+ counts: Record<string, number>
66
+ deviations: number
67
+ }
68
+
69
+ export interface PurposeDocMeta extends ConversionDocMeta {
70
+ source: PurposeEvidenceSource
71
+ confidence: number
72
+ }
73
+
74
+ export interface AnalysisDocMeta extends ConversionDocMeta {
75
+ name: string
76
+ language: string
77
+ entities: string[]
78
+ flowSteps: number
79
+ }
80
+
81
+ export interface StoryListDocMeta extends ConversionDocMeta {
82
+ total: number
83
+ flow: number
84
+ connective: number
85
+ coverage: number
86
+ }
87
+
88
+ export interface StoryProofDocMeta extends ConversionDocMeta {
89
+ code: string
90
+ area: ProjectArea
91
+ origin: string[]
92
+ complexity: number
93
+ }
94
+
95
+ export interface EstimateDocMeta extends ConversionDocMeta {
96
+ stages: ConversionStage[]
97
+ inputTokens: number
98
+ outputTokens: number
99
+ }
100
+
101
+ export interface AssumptionsDocMeta extends ConversionDocMeta {
102
+ count: number
103
+ }
104
+
105
+ export interface InquiriesDocMeta extends ConversionDocMeta {
106
+ asked: number
107
+ answered: number
108
+ declined: number
109
+ }
110
+
111
+ export interface DumpsDocMeta extends ConversionDocMeta {
112
+ dumps: number
113
+ bytes: number
114
+ sampled: number
115
+ }
116
+
117
+ export interface SeedDocMeta extends ConversionDocMeta {
118
+ name: string
119
+ format: string
120
+ bytes: number
121
+ rows?: number
122
+ carried: boolean
123
+ }
124
+
125
+ export interface AreasDocMeta extends ConversionDocMeta {
126
+ areas: ProjectArea[]
127
+ roles: number
128
+ permissions: number
129
+ }
130
+
131
+ export interface StructureDocMeta extends ConversionDocMeta {
132
+ nodes: number
133
+ edges: number
134
+ }
135
+
136
+ export interface OriginCardDocMeta extends ConversionDocMeta {
137
+ chars: number
138
+ stack: StackId
139
+ case: ArchitectureCase
140
+ }
141
+
142
+ /** The frontmatter of the target's own `.agents/memory/conversion.md` node. */
143
+ export interface ConversionMemoryMeta {
144
+ version: number
145
+ stage: ConversionStage
146
+ case: ArchitectureCase
147
+ stack: StackId
148
+ origin: string
149
+ purged: boolean
150
+ updatedAt: string
151
+ }
@@ -0,0 +1,15 @@
1
+ import { CONVERSION_SEED_DATA_DIR, CONVERSION_SEED_DIR, CONVERSION_STORY_DIR } from './consts.js'
2
+ import type { ConversionDocHelper } from './docs/types.js'
3
+
4
+ export const createConversionDocHelper = (): ConversionDocHelper => {
5
+ const conversionStoryDoc = (code: string): string => `${CONVERSION_STORY_DIR}/${code}.md`
6
+
7
+ const conversionSeedDoc = (name: string): string => `${CONVERSION_SEED_DIR}/${name}.md`
8
+
9
+ const conversionSeedData = (name: string, ext: string): string =>
10
+ `${CONVERSION_SEED_DATA_DIR}/${name}.${ext}`
11
+
12
+ return { conversionStoryDoc, conversionSeedDoc, conversionSeedData }
13
+ }
14
+
15
+ export const conversionDocHelper = createConversionDocHelper()
@@ -0,0 +1,75 @@
1
+ import type { ModelRole } from '../../execution/consts.js'
2
+ import type { ConversionStage, EstimateSlice } from '../consts.js'
3
+
4
+ /**
5
+ * One row of a stage's role plan — what the estimator believes a step will spend.
6
+ *
7
+ * Data rather than a measurement: the plan says which slices of the origin a step reads, how many
8
+ * calls it makes and what it writes back, and the estimator projects tokens from the census. A
9
+ * step that is per-story is multiplied by the story count instead of run once.
10
+ */
11
+ export interface RolePlanEntry {
12
+ step: string
13
+ role: ModelRole
14
+ slices: EstimateSlice[]
15
+ /** What share of the named slices this step actually reads. */
16
+ factor: number
17
+ calls: number
18
+ /** Fixed input tokens per call — the persona, the framing, the schema. */
19
+ overhead: number
20
+ /** Expected output tokens per call. */
21
+ output: number
22
+ perStory?: boolean
23
+ }
24
+
25
+ export interface RoleEstimate {
26
+ role: ModelRole
27
+ calls: number
28
+ inputTokens: number
29
+ outputTokens: number
30
+ steps: string[]
31
+ }
32
+
33
+ /**
34
+ * What one stage is expected to cost, as the platform stores it on the conversion record.
35
+ *
36
+ * Priced on the agent, where the model presets and the run mode are: a DELEGATED conversion runs
37
+ * its model calls on the parent agent and costs the platform nothing, so `usd` is zero and
38
+ * `delegated` says why. `basis` is kept so a user can see what the number was projected from
39
+ * rather than being handed a figure with no provenance.
40
+ */
41
+ export interface ConversionEstimate {
42
+ stage: ConversionStage
43
+ version: number
44
+ roles: RoleEstimate[]
45
+ inputTokens: number
46
+ outputTokens: number
47
+ usd: number
48
+ /** @deprecated Credits are USD at the reference rate now — read `usd`. Kept for records stored before the change. */
49
+ credits?: number
50
+ delegated: boolean
51
+ basis: {
52
+ files: number
53
+ bytes: number
54
+ storyCount?: number
55
+ sampleRatio: number
56
+ retryFactor: number
57
+ }
58
+ computedAt: string
59
+ }
60
+
61
+ /**
62
+ * The per-story band shown before the implementation stage.
63
+ *
64
+ * A range, because a story's cost is set by how much code it turns out to need — which is exactly
65
+ * what nothing knows before it is written. Shown with the disclaimer that says so.
66
+ */
67
+ export interface StoryEstimateBand {
68
+ minUsd: number
69
+ maxUsd: number
70
+ /** @deprecated Credits are USD at the reference rate now — read `minUsd`. Kept for records stored before the change. */
71
+ minCredits?: number
72
+ /** @deprecated Credits are USD at the reference rate now — read `maxUsd`. Kept for records stored before the change. */
73
+ maxCredits?: number
74
+ perStory: { code: string, complexity: number, minUsd: number, maxUsd: number }[]
75
+ }
@@ -0,0 +1,19 @@
1
+ import type { StoryProof } from './analysis/types.js'
2
+
3
+ /**
4
+ * How much work re-implementing a story is, as a multiplier on the per-story price band.
5
+ *
6
+ * Derived from what the extraction found, never asked of a model: a story backed by a handful of
7
+ * proofs and no algorithm is ordinary CRUD, one that carries described algorithms is business
8
+ * logic somebody has to reproduce. Two runs over the same extraction therefore price identically,
9
+ * which is the point — a band that moved between two viewings of the same screen would be noise.
10
+ */
11
+ export const storyComplexity = (proof: Pick<StoryProof, 'proofs' | 'algorithms'>): number => {
12
+ const proofs = proof.proofs?.length ?? 0
13
+ const algorithms = proof.algorithms?.length ?? 0
14
+
15
+ if (algorithms > 1 || proofs > 8) return 2
16
+ if (algorithms > 0 || proofs > 3) return 1.5
17
+
18
+ return 1
19
+ }