@rotifer/playground 0.8.1 → 0.8.5

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 (443) hide show
  1. package/CHANGELOG.md +25 -11
  2. package/README.md +64 -48
  3. package/README.zh.md +60 -37
  4. package/dist/cloud/auth.d.ts +9 -3
  5. package/dist/cloud/auth.d.ts.map +1 -1
  6. package/dist/cloud/auth.js +28 -13
  7. package/dist/cloud/auth.js.map +1 -1
  8. package/dist/cloud/client.d.ts +4 -3
  9. package/dist/cloud/client.d.ts.map +1 -1
  10. package/dist/cloud/client.js +139 -68
  11. package/dist/cloud/client.js.map +1 -1
  12. package/dist/cloud/types.d.ts +3 -0
  13. package/dist/cloud/types.d.ts.map +1 -1
  14. package/dist/cloud/types.js.map +1 -1
  15. package/dist/commands/agent-create.d.ts +20 -0
  16. package/dist/commands/agent-create.d.ts.map +1 -1
  17. package/dist/commands/agent-create.js +91 -80
  18. package/dist/commands/agent-create.js.map +1 -1
  19. package/dist/commands/agent-list.d.ts.map +1 -1
  20. package/dist/commands/agent-list.js +27 -24
  21. package/dist/commands/agent-list.js.map +1 -1
  22. package/dist/commands/agent-run.d.ts +24 -0
  23. package/dist/commands/agent-run.d.ts.map +1 -1
  24. package/dist/commands/agent-run.js +154 -36
  25. package/dist/commands/agent-run.js.map +1 -1
  26. package/dist/commands/api-key.d.ts +3 -0
  27. package/dist/commands/api-key.d.ts.map +1 -0
  28. package/dist/commands/api-key.js +235 -0
  29. package/dist/commands/api-key.js.map +1 -0
  30. package/dist/commands/arena-list.d.ts.map +1 -1
  31. package/dist/commands/arena-list.js +113 -97
  32. package/dist/commands/arena-list.js.map +1 -1
  33. package/dist/commands/arena-submit.d.ts.map +1 -1
  34. package/dist/commands/arena-submit.js +113 -30
  35. package/dist/commands/arena-submit.js.map +1 -1
  36. package/dist/commands/arena-watch.d.ts.map +1 -1
  37. package/dist/commands/arena-watch.js +59 -87
  38. package/dist/commands/arena-watch.js.map +1 -1
  39. package/dist/commands/compare.d.ts.map +1 -1
  40. package/dist/commands/compare.js +40 -50
  41. package/dist/commands/compare.js.map +1 -1
  42. package/dist/commands/compile.d.ts.map +1 -1
  43. package/dist/commands/compile.js +60 -37
  44. package/dist/commands/compile.js.map +1 -1
  45. package/dist/commands/hello.d.ts +3 -0
  46. package/dist/commands/hello.d.ts.map +1 -0
  47. package/dist/commands/hello.js +575 -0
  48. package/dist/commands/hello.js.map +1 -0
  49. package/dist/commands/info.d.ts.map +1 -1
  50. package/dist/commands/info.js +130 -40
  51. package/dist/commands/info.js.map +1 -1
  52. package/dist/commands/init.d.ts.map +1 -1
  53. package/dist/commands/init.js +39 -60
  54. package/dist/commands/init.js.map +1 -1
  55. package/dist/commands/install.d.ts.map +1 -1
  56. package/dist/commands/install.js +35 -9
  57. package/dist/commands/install.js.map +1 -1
  58. package/dist/commands/list.d.ts.map +1 -1
  59. package/dist/commands/list.js +111 -58
  60. package/dist/commands/list.js.map +1 -1
  61. package/dist/commands/login.d.ts.map +1 -1
  62. package/dist/commands/login.js +23 -10
  63. package/dist/commands/login.js.map +1 -1
  64. package/dist/commands/network.d.ts.map +1 -1
  65. package/dist/commands/network.js +48 -67
  66. package/dist/commands/network.js.map +1 -1
  67. package/dist/commands/publish.d.ts.map +1 -1
  68. package/dist/commands/publish.js +127 -53
  69. package/dist/commands/publish.js.map +1 -1
  70. package/dist/commands/reputation.js +84 -85
  71. package/dist/commands/reputation.js.map +1 -1
  72. package/dist/commands/run.d.ts.map +1 -1
  73. package/dist/commands/run.js +26 -9
  74. package/dist/commands/run.js.map +1 -1
  75. package/dist/commands/scan.d.ts.map +1 -1
  76. package/dist/commands/scan.js +8 -9
  77. package/dist/commands/scan.js.map +1 -1
  78. package/dist/commands/search.d.ts.map +1 -1
  79. package/dist/commands/search.js +80 -54
  80. package/dist/commands/search.js.map +1 -1
  81. package/dist/commands/self-update.d.ts +7 -0
  82. package/dist/commands/self-update.d.ts.map +1 -0
  83. package/dist/commands/self-update.js +187 -0
  84. package/dist/commands/self-update.js.map +1 -0
  85. package/dist/commands/stats.d.ts.map +1 -1
  86. package/dist/commands/stats.js +20 -26
  87. package/dist/commands/stats.js.map +1 -1
  88. package/dist/commands/test.d.ts.map +1 -1
  89. package/dist/commands/test.js +95 -75
  90. package/dist/commands/test.js.map +1 -1
  91. package/dist/commands/user-config.d.ts +3 -0
  92. package/dist/commands/user-config.d.ts.map +1 -0
  93. package/dist/commands/user-config.js +82 -0
  94. package/dist/commands/user-config.js.map +1 -0
  95. package/dist/commands/versions.d.ts.map +1 -1
  96. package/dist/commands/versions.js +46 -33
  97. package/dist/commands/versions.js.map +1 -1
  98. package/dist/commands/vg.d.ts.map +1 -1
  99. package/dist/commands/vg.js +65 -63
  100. package/dist/commands/vg.js.map +1 -1
  101. package/dist/commands/whoami.d.ts.map +1 -1
  102. package/dist/commands/whoami.js +33 -23
  103. package/dist/commands/whoami.js.map +1 -1
  104. package/dist/commands/wrap.d.ts.map +1 -1
  105. package/dist/commands/wrap.js +57 -40
  106. package/dist/commands/wrap.js.map +1 -1
  107. package/dist/index.js +61 -1
  108. package/dist/index.js.map +1 -1
  109. package/dist/publish/pre-publish-check.d.ts +15 -0
  110. package/dist/publish/pre-publish-check.d.ts.map +1 -0
  111. package/dist/publish/pre-publish-check.js +228 -0
  112. package/dist/publish/pre-publish-check.js.map +1 -0
  113. package/dist/runtime/domain-failover.d.ts +1 -1
  114. package/dist/runtime/domain-failover.js +1 -1
  115. package/dist/runtime/network-gateway.d.ts +1 -1
  116. package/dist/runtime/network-gateway.d.ts.map +1 -1
  117. package/dist/runtime/network-gateway.js +10 -10
  118. package/dist/runtime/network-gateway.js.map +1 -1
  119. package/dist/scanner/scanner.js +3 -3
  120. package/dist/scanner/scanner.js.map +1 -1
  121. package/dist/utils/binding.d.ts.map +1 -1
  122. package/dist/utils/binding.js +5 -4
  123. package/dist/utils/binding.js.map +1 -1
  124. package/dist/utils/content-hash.d.ts +3 -0
  125. package/dist/utils/content-hash.d.ts.map +1 -0
  126. package/dist/utils/content-hash.js +25 -0
  127. package/dist/utils/content-hash.js.map +1 -0
  128. package/dist/utils/display.d.ts +44 -1
  129. package/dist/utils/display.d.ts.map +1 -1
  130. package/dist/utils/display.js +443 -14
  131. package/dist/utils/display.js.map +1 -1
  132. package/dist/utils/domain-suggest.d.ts.map +1 -1
  133. package/dist/utils/domain-suggest.js +3 -3
  134. package/dist/utils/domain-suggest.js.map +1 -1
  135. package/dist/utils/javy-compiler.js +9 -3
  136. package/dist/utils/javy-compiler.js.map +1 -1
  137. package/dist/utils/open-browser.d.ts +7 -3
  138. package/dist/utils/open-browser.d.ts.map +1 -1
  139. package/dist/utils/open-browser.js +15 -4
  140. package/dist/utils/open-browser.js.map +1 -1
  141. package/dist/utils/palette.d.ts +49 -0
  142. package/dist/utils/palette.d.ts.map +1 -0
  143. package/dist/utils/palette.js +80 -0
  144. package/dist/utils/palette.js.map +1 -0
  145. package/dist/utils/private-fs.d.ts +3 -0
  146. package/dist/utils/private-fs.d.ts.map +1 -0
  147. package/dist/utils/private-fs.js +25 -0
  148. package/dist/utils/private-fs.js.map +1 -0
  149. package/dist/utils/project-root.d.ts +2 -0
  150. package/dist/utils/project-root.d.ts.map +1 -0
  151. package/dist/utils/project-root.js +49 -0
  152. package/dist/utils/project-root.js.map +1 -0
  153. package/dist/utils/run-logger.d.ts +24 -0
  154. package/dist/utils/run-logger.d.ts.map +1 -0
  155. package/dist/utils/run-logger.js +70 -0
  156. package/dist/utils/run-logger.js.map +1 -0
  157. package/dist/utils/update-check.d.ts +20 -0
  158. package/dist/utils/update-check.d.ts.map +1 -0
  159. package/dist/utils/update-check.js +155 -0
  160. package/dist/utils/update-check.js.map +1 -0
  161. package/dist/utils/user-config.d.ts +10 -0
  162. package/dist/utils/user-config.d.ts.map +1 -0
  163. package/dist/utils/user-config.js +54 -0
  164. package/dist/utils/user-config.js.map +1 -0
  165. package/dist/utils/validate-gene-name.d.ts +7 -0
  166. package/dist/utils/validate-gene-name.d.ts.map +1 -0
  167. package/dist/utils/validate-gene-name.js +28 -0
  168. package/dist/utils/validate-gene-name.js.map +1 -0
  169. package/genes/genesis-code-format/phenotype.json +4 -3
  170. package/genes/genesis-file-read/phenotype.json +4 -3
  171. package/genes/genesis-l0-constraint/phenotype.json +4 -3
  172. package/genes/genesis-web-search/phenotype.json +5 -4
  173. package/genes/genesis-web-search-lite/phenotype.json +4 -3
  174. package/package.json +29 -8
  175. package/scripts/postinstall.js +38 -0
  176. package/dist/errors/formatter.d.ts +0 -25
  177. package/dist/errors/formatter.d.ts.map +0 -1
  178. package/dist/errors/formatter.js +0 -43
  179. package/dist/errors/formatter.js.map +0 -1
  180. package/genes/academic-writer/.cloud-manifest.json +0 -6
  181. package/genes/academic-writer/.gene-manifest.json +0 -8
  182. package/genes/academic-writer/SKILL.md +0 -274
  183. package/genes/academic-writer/phenotype.json +0 -28
  184. package/genes/ai-components/.cloud-manifest.json +0 -6
  185. package/genes/ai-components/.gene-manifest.json +0 -8
  186. package/genes/ai-components/SKILL.md +0 -381
  187. package/genes/ai-components/phenotype.json +0 -28
  188. package/genes/algorithmic-art/.cloud-manifest.json +0 -6
  189. package/genes/algorithmic-art/.gene-manifest.json +0 -8
  190. package/genes/algorithmic-art/SKILL.md +0 -405
  191. package/genes/algorithmic-art/phenotype.json +0 -28
  192. package/genes/answer-synthesizer/.cloud-manifest.json +0 -6
  193. package/genes/answer-synthesizer/index.ts +0 -194
  194. package/genes/answer-synthesizer/phenotype.json +0 -61
  195. package/genes/api-designer/.cloud-manifest.json +0 -6
  196. package/genes/api-designer/.gene-manifest.json +0 -8
  197. package/genes/api-designer/SKILL.md +0 -456
  198. package/genes/api-designer/phenotype.json +0 -28
  199. package/genes/auto-coder/.cloud-manifest.json +0 -6
  200. package/genes/auto-coder/.gene-manifest.json +0 -8
  201. package/genes/auto-coder/SKILL.md +0 -400
  202. package/genes/auto-coder/phenotype.json +0 -28
  203. package/genes/auto-writer/.cloud-manifest.json +0 -6
  204. package/genes/auto-writer/.gene-manifest.json +0 -8
  205. package/genes/auto-writer/SKILL.md +0 -361
  206. package/genes/auto-writer/phenotype.json +0 -28
  207. package/genes/brand-personality/.cloud-manifest.json +0 -6
  208. package/genes/brand-personality/.gene-manifest.json +0 -8
  209. package/genes/brand-personality/SKILL.md +0 -549
  210. package/genes/brand-personality/phenotype.json +0 -28
  211. package/genes/business-writer/.cloud-manifest.json +0 -6
  212. package/genes/business-writer/.gene-manifest.json +0 -8
  213. package/genes/business-writer/SKILL.md +0 -448
  214. package/genes/business-writer/phenotype.json +0 -28
  215. package/genes/citation-manager/.cloud-manifest.json +0 -6
  216. package/genes/citation-manager/.gene-manifest.json +0 -8
  217. package/genes/citation-manager/SKILL.md +0 -279
  218. package/genes/citation-manager/index.ts +0 -162
  219. package/genes/citation-manager/package.json +0 -1
  220. package/genes/citation-manager/phenotype.json +0 -50
  221. package/genes/code-complexity/.cloud-manifest.json +0 -6
  222. package/genes/code-complexity/README.md +0 -35
  223. package/genes/code-complexity/index.ts +0 -101
  224. package/genes/code-complexity/phenotype.json +0 -34
  225. package/genes/copywriter/.cloud-manifest.json +0 -6
  226. package/genes/copywriter/.gene-manifest.json +0 -8
  227. package/genes/copywriter/SKILL.md +0 -329
  228. package/genes/copywriter/phenotype.json +0 -28
  229. package/genes/creative-writer/.cloud-manifest.json +0 -6
  230. package/genes/creative-writer/.gene-manifest.json +0 -8
  231. package/genes/creative-writer/SKILL.md +0 -356
  232. package/genes/creative-writer/phenotype.json +0 -28
  233. package/genes/data-modeler/.cloud-manifest.json +0 -6
  234. package/genes/data-modeler/.gene-manifest.json +0 -8
  235. package/genes/data-modeler/SKILL.md +0 -486
  236. package/genes/data-modeler/phenotype.json +0 -28
  237. package/genes/debugger/.cloud-manifest.json +0 -6
  238. package/genes/debugger/.gene-manifest.json +0 -8
  239. package/genes/debugger/SKILL.md +0 -416
  240. package/genes/debugger/phenotype.json +0 -28
  241. package/genes/design-tokens/.cloud-manifest.json +0 -6
  242. package/genes/design-tokens/.gene-manifest.json +0 -8
  243. package/genes/design-tokens/SKILL.md +0 -222
  244. package/genes/design-tokens/index.ts +0 -128
  245. package/genes/design-tokens/package.json +0 -1
  246. package/genes/design-tokens/phenotype.json +0 -1
  247. package/genes/devops-automator/.cloud-manifest.json +0 -6
  248. package/genes/devops-automator/.gene-manifest.json +0 -8
  249. package/genes/devops-automator/SKILL.md +0 -490
  250. package/genes/devops-automator/phenotype.json +0 -28
  251. package/genes/doc-coauthoring/.cloud-manifest.json +0 -6
  252. package/genes/doc-coauthoring/.gene-manifest.json +0 -8
  253. package/genes/doc-coauthoring/SKILL.md +0 -375
  254. package/genes/doc-coauthoring/phenotype.json +0 -28
  255. package/genes/doc-retrieval/.cloud-manifest.json +0 -6
  256. package/genes/doc-retrieval/index.ts +0 -134
  257. package/genes/doc-retrieval/phenotype.json +0 -54
  258. package/genes/docs-writer/.cloud-manifest.json +0 -6
  259. package/genes/docs-writer/.gene-manifest.json +0 -8
  260. package/genes/docs-writer/SKILL.md +0 -492
  261. package/genes/docs-writer/phenotype.json +0 -28
  262. package/genes/evolve-life/.cloud-manifest.json +0 -6
  263. package/genes/evolve-life/.compile-result.json +0 -12
  264. package/genes/evolve-life/README.md +0 -52
  265. package/genes/evolve-life/gene.ir.wasm +0 -0
  266. package/genes/evolve-life/gene.wasm +0 -0
  267. package/genes/evolve-life/index.ts +0 -255
  268. package/genes/evolve-life/phenotype.json +0 -129
  269. package/genes/evolve-life-bitwise/.cloud-manifest.json +0 -6
  270. package/genes/evolve-life-bitwise/.compile-result.json +0 -12
  271. package/genes/evolve-life-bitwise/gene.ir.wasm +0 -0
  272. package/genes/evolve-life-bitwise/gene.wasm +0 -0
  273. package/genes/evolve-life-bitwise/index.ts +0 -273
  274. package/genes/evolve-life-bitwise/phenotype.json +0 -129
  275. package/genes/evolve-life-sparse/.cloud-manifest.json +0 -6
  276. package/genes/evolve-life-sparse/.compile-result.json +0 -12
  277. package/genes/evolve-life-sparse/gene.ir.wasm +0 -0
  278. package/genes/evolve-life-sparse/gene.wasm +0 -0
  279. package/genes/evolve-life-sparse/index.ts +0 -236
  280. package/genes/evolve-life-sparse/phenotype.json +0 -129
  281. package/genes/fact-checker/.cloud-manifest.json +0 -6
  282. package/genes/fact-checker/.gene-manifest.json +0 -8
  283. package/genes/fact-checker/SKILL.md +0 -373
  284. package/genes/fact-checker/phenotype.json +0 -28
  285. package/genes/git-workflow/.cloud-manifest.json +0 -6
  286. package/genes/git-workflow/.gene-manifest.json +0 -8
  287. package/genes/git-workflow/SKILL.md +0 -407
  288. package/genes/git-workflow/phenotype.json +0 -28
  289. package/genes/grammar-checker/.cloud-manifest.json +0 -6
  290. package/genes/grammar-checker/.gene-manifest.json +0 -8
  291. package/genes/grammar-checker/SKILL.md +0 -194
  292. package/genes/grammar-checker/index.ts +0 -168
  293. package/genes/grammar-checker/package.json +0 -1
  294. package/genes/grammar-checker/phenotype.json +0 -52
  295. package/genes/guard-balanced/.gene-manifest.json +0 -8
  296. package/genes/guard-balanced/phenotype.json +0 -105
  297. package/genes/guard-balanced/system-prompt.md +0 -23
  298. package/genes/guard-strict/.gene-manifest.json +0 -8
  299. package/genes/guard-strict/phenotype.json +0 -107
  300. package/genes/guard-strict/system-prompt.md +0 -18
  301. package/genes/json-validator/.cloud-manifest.json +0 -6
  302. package/genes/json-validator/README.md +0 -42
  303. package/genes/json-validator/index.ts +0 -112
  304. package/genes/json-validator/phenotype.json +0 -42
  305. package/genes/license-advisor/.cloud-manifest.json +0 -6
  306. package/genes/license-advisor/.gene-manifest.json +0 -8
  307. package/genes/license-advisor/SKILL.md +0 -117
  308. package/genes/license-advisor/phenotype.json +0 -28
  309. package/genes/logic-architect/.cloud-manifest.json +0 -6
  310. package/genes/logic-architect/.gene-manifest.json +0 -8
  311. package/genes/logic-architect/SKILL.md +0 -451
  312. package/genes/logic-architect/phenotype.json +0 -28
  313. package/genes/markdown-formatter/.cloud-manifest.json +0 -6
  314. package/genes/markdown-formatter/README.md +0 -34
  315. package/genes/markdown-formatter/index.ts +0 -86
  316. package/genes/markdown-formatter/phenotype.json +0 -32
  317. package/genes/orch/.cloud-manifest.json +0 -6
  318. package/genes/orch/.gene-manifest.json +0 -8
  319. package/genes/orch/SKILL.md +0 -504
  320. package/genes/orch/phenotype.json +0 -28
  321. package/genes/particle-barneshut/.cloud-manifest.json +0 -6
  322. package/genes/particle-barneshut/.compile-result.json +0 -12
  323. package/genes/particle-barneshut/README.md +0 -55
  324. package/genes/particle-barneshut/gene.ir.wasm +0 -0
  325. package/genes/particle-barneshut/gene.wasm +0 -0
  326. package/genes/particle-barneshut/index.ts +0 -486
  327. package/genes/particle-barneshut/phenotype.json +0 -137
  328. package/genes/particle-brute/.cloud-manifest.json +0 -6
  329. package/genes/particle-brute/.compile-result.json +0 -12
  330. package/genes/particle-brute/README.md +0 -55
  331. package/genes/particle-brute/gene.ir.wasm +0 -0
  332. package/genes/particle-brute/gene.wasm +0 -0
  333. package/genes/particle-brute/index.ts +0 -277
  334. package/genes/particle-brute/phenotype.json +0 -137
  335. package/genes/particle-spatial/.cloud-manifest.json +0 -6
  336. package/genes/particle-spatial/.compile-result.json +0 -12
  337. package/genes/particle-spatial/README.md +0 -53
  338. package/genes/particle-spatial/gene.ir.wasm +0 -0
  339. package/genes/particle-spatial/gene.wasm +0 -0
  340. package/genes/particle-spatial/index.ts +0 -352
  341. package/genes/particle-spatial/phenotype.json +0 -137
  342. package/genes/performance-optimizer/.cloud-manifest.json +0 -6
  343. package/genes/performance-optimizer/.gene-manifest.json +0 -8
  344. package/genes/performance-optimizer/SKILL.md +0 -480
  345. package/genes/performance-optimizer/phenotype.json +0 -28
  346. package/genes/plagiarism-checker/.cloud-manifest.json +0 -6
  347. package/genes/plagiarism-checker/.gene-manifest.json +0 -8
  348. package/genes/plagiarism-checker/SKILL.md +0 -342
  349. package/genes/plagiarism-checker/phenotype.json +0 -28
  350. package/genes/product-manager/.cloud-manifest.json +0 -6
  351. package/genes/product-manager/.gene-manifest.json +0 -8
  352. package/genes/product-manager/SKILL.md +0 -249
  353. package/genes/product-manager/phenotype.json +0 -28
  354. package/genes/project-reviewer/.cloud-manifest.json +0 -6
  355. package/genes/project-reviewer/.gene-manifest.json +0 -8
  356. package/genes/project-reviewer/SKILL.md +0 -312
  357. package/genes/project-reviewer/phenotype.json +0 -28
  358. package/genes/prompt-engineer/.cloud-manifest.json +0 -6
  359. package/genes/prompt-engineer/.gene-manifest.json +0 -8
  360. package/genes/prompt-engineer/SKILL.md +0 -411
  361. package/genes/prompt-engineer/phenotype.json +0 -28
  362. package/genes/prompt-review-perf/.gene-manifest.json +0 -8
  363. package/genes/prompt-review-perf/phenotype.json +0 -61
  364. package/genes/prompt-review-perf/system-prompt.md +0 -22
  365. package/genes/prompt-review-readability/.gene-manifest.json +0 -8
  366. package/genes/prompt-review-readability/phenotype.json +0 -60
  367. package/genes/prompt-review-readability/system-prompt.md +0 -21
  368. package/genes/prompt-review-security/.gene-manifest.json +0 -8
  369. package/genes/prompt-review-security/phenotype.json +0 -60
  370. package/genes/prompt-review-security/system-prompt.md +0 -21
  371. package/genes/readability-analyzer/.cloud-manifest.json +0 -6
  372. package/genes/readability-analyzer/.gene-manifest.json +0 -8
  373. package/genes/readability-analyzer/SKILL.md +0 -357
  374. package/genes/readability-analyzer/index.ts +0 -123
  375. package/genes/readability-analyzer/package.json +0 -1
  376. package/genes/readability-analyzer/phenotype.json +0 -35
  377. package/genes/rotifer-protocol/SKILL.md +0 -121
  378. package/genes/rule-router-frequency/.gene-manifest.json +0 -8
  379. package/genes/rule-router-frequency/phenotype.json +0 -76
  380. package/genes/rule-router-frequency/system-prompt.md +0 -26
  381. package/genes/rule-router-relevance/.gene-manifest.json +0 -8
  382. package/genes/rule-router-relevance/phenotype.json +0 -76
  383. package/genes/rule-router-relevance/system-prompt.md +0 -29
  384. package/genes/security-auditor/.cloud-manifest.json +0 -6
  385. package/genes/security-auditor/.gene-manifest.json +0 -8
  386. package/genes/security-auditor/SKILL.md +0 -494
  387. package/genes/security-auditor/phenotype.json +0 -28
  388. package/genes/seo-optimizer/.cloud-manifest.json +0 -6
  389. package/genes/seo-optimizer/.gene-manifest.json +0 -8
  390. package/genes/seo-optimizer/SKILL.md +0 -327
  391. package/genes/seo-optimizer/index.ts +0 -206
  392. package/genes/seo-optimizer/package.json +0 -1
  393. package/genes/seo-optimizer/phenotype.json +0 -1
  394. package/genes/source-linker/.cloud-manifest.json +0 -6
  395. package/genes/source-linker/index.ts +0 -88
  396. package/genes/source-linker/phenotype.json +0 -45
  397. package/genes/style-optimizer/.cloud-manifest.json +0 -6
  398. package/genes/style-optimizer/.gene-manifest.json +0 -8
  399. package/genes/style-optimizer/SKILL.md +0 -285
  400. package/genes/style-optimizer/phenotype.json +0 -28
  401. package/genes/tech-lead/.cloud-manifest.json +0 -6
  402. package/genes/tech-lead/.gene-manifest.json +0 -8
  403. package/genes/tech-lead/SKILL.md +0 -451
  404. package/genes/tech-lead/phenotype.json +0 -28
  405. package/genes/test-wrap/.cloud-manifest.json +0 -6
  406. package/genes/test-wrap/.gene-manifest.json +0 -8
  407. package/genes/test-wrap/phenotype.json +0 -28
  408. package/genes/testing-strategist/.cloud-manifest.json +0 -6
  409. package/genes/testing-strategist/.gene-manifest.json +0 -8
  410. package/genes/testing-strategist/SKILL.md +0 -500
  411. package/genes/testing-strategist/phenotype.json +0 -28
  412. package/genes/text-summarizer/.cloud-manifest.json +0 -6
  413. package/genes/text-summarizer/README.md +0 -34
  414. package/genes/text-summarizer/index.ts +0 -122
  415. package/genes/text-summarizer/phenotype.json +0 -32
  416. package/genes/tone-analyzer/.cloud-manifest.json +0 -6
  417. package/genes/tone-analyzer/.gene-manifest.json +0 -8
  418. package/genes/tone-analyzer/SKILL.md +0 -410
  419. package/genes/tone-analyzer/phenotype.json +0 -28
  420. package/genes/translator/.cloud-manifest.json +0 -6
  421. package/genes/translator/.gene-manifest.json +0 -8
  422. package/genes/translator/SKILL.md +0 -355
  423. package/genes/translator/phenotype.json +0 -28
  424. package/genes/ui-components/.cloud-manifest.json +0 -6
  425. package/genes/ui-components/.gene-manifest.json +0 -8
  426. package/genes/ui-components/SKILL.md +0 -467
  427. package/genes/ui-components/phenotype.json +0 -28
  428. package/genes/uiux-designer/.cloud-manifest.json +0 -6
  429. package/genes/uiux-designer/.gene-manifest.json +0 -8
  430. package/genes/uiux-designer/SKILL.md +0 -353
  431. package/genes/uiux-designer/phenotype.json +0 -28
  432. package/genes/url-extractor/.cloud-manifest.json +0 -6
  433. package/genes/url-extractor/README.md +0 -37
  434. package/genes/url-extractor/index.ts +0 -86
  435. package/genes/url-extractor/phenotype.json +0 -48
  436. package/genes/ux-patterns/.cloud-manifest.json +0 -6
  437. package/genes/ux-patterns/.gene-manifest.json +0 -8
  438. package/genes/ux-patterns/SKILL.md +0 -872
  439. package/genes/ux-patterns/phenotype.json +0 -28
  440. package/genes/web3-components/.cloud-manifest.json +0 -6
  441. package/genes/web3-components/.gene-manifest.json +0 -8
  442. package/genes/web3-components/SKILL.md +0 -390
  443. package/genes/web3-components/phenotype.json +0 -28
@@ -1,10 +1,14 @@
1
1
  /**
2
- * Build the shell command to open a URL in the default browser.
2
+ * Get the browser-open binary and arguments for the current platform.
3
3
  * Exported separately for testability.
4
4
  */
5
- export declare function buildOpenCommand(url: string, platform: string): string;
5
+ export declare function buildOpenCommand(url: string, platform: string): {
6
+ bin: string;
7
+ args: string[];
8
+ };
6
9
  /**
7
10
  * Open a URL in the user's default browser, cross-platform.
11
+ * Returns true if the command was launched successfully, false on error.
8
12
  */
9
- export declare function openBrowser(url: string): void;
13
+ export declare function openBrowser(url: string): boolean;
10
14
  //# sourceMappingURL=open-browser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"open-browser.d.ts","sourceRoot":"","sources":["../../src/utils/open-browser.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAMtE;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAE7C"}
1
+ {"version":3,"file":"open-browser.d.ts","sourceRoot":"","sources":["../../src/utils/open-browser.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAM/F;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAWhD"}
@@ -4,20 +4,31 @@ exports.buildOpenCommand = buildOpenCommand;
4
4
  exports.openBrowser = openBrowser;
5
5
  const node_child_process_1 = require("node:child_process");
6
6
  /**
7
- * Build the shell command to open a URL in the default browser.
7
+ * Get the browser-open binary and arguments for the current platform.
8
8
  * Exported separately for testability.
9
9
  */
10
10
  function buildOpenCommand(url, platform) {
11
11
  if (platform === "win32") {
12
- return `start "" "${url}"`;
12
+ return { bin: "cmd", args: ["/c", "start", "", url] };
13
13
  }
14
14
  const bin = platform === "darwin" ? "open" : "xdg-open";
15
- return `${bin} "${url}"`;
15
+ return { bin, args: [url] };
16
16
  }
17
17
  /**
18
18
  * Open a URL in the user's default browser, cross-platform.
19
+ * Returns true if the command was launched successfully, false on error.
19
20
  */
20
21
  function openBrowser(url) {
21
- (0, node_child_process_1.exec)(buildOpenCommand(url, process.platform));
22
+ const { bin, args } = buildOpenCommand(url, process.platform);
23
+ try {
24
+ const child = (0, node_child_process_1.execFile)(bin, args);
25
+ let didFail = false;
26
+ child.on("error", () => { didFail = true; });
27
+ // Give the spawn a moment; if it errors synchronously we catch above
28
+ return !didFail;
29
+ }
30
+ catch {
31
+ return false;
32
+ }
22
33
  }
23
34
  //# sourceMappingURL=open-browser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"open-browser.js","sourceRoot":"","sources":["../../src/utils/open-browser.ts"],"names":[],"mappings":";;AAMA,4CAMC;AAKD,kCAEC;AAnBD,2DAA0C;AAE1C;;;GAGG;AACH,SAAgB,gBAAgB,CAAC,GAAW,EAAE,QAAgB;IAC5D,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;QACzB,OAAO,aAAa,GAAG,GAAG,CAAC;IAC7B,CAAC;IACD,MAAM,GAAG,GAAG,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC;IACxD,OAAO,GAAG,GAAG,KAAK,GAAG,GAAG,CAAC;AAC3B,CAAC;AAED;;GAEG;AACH,SAAgB,WAAW,CAAC,GAAW;IACrC,IAAA,yBAAI,EAAC,gBAAgB,CAAC,GAAG,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;AAChD,CAAC"}
1
+ {"version":3,"file":"open-browser.js","sourceRoot":"","sources":["../../src/utils/open-browser.ts"],"names":[],"mappings":";;AAMA,4CAMC;AAMD,kCAWC;AA7BD,2DAA8C;AAE9C;;;GAGG;AACH,SAAgB,gBAAgB,CAAC,GAAW,EAAE,QAAgB;IAC5D,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;QACzB,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC;IACxD,CAAC;IACD,MAAM,GAAG,GAAG,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC;IACxD,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;AAC9B,CAAC;AAED;;;GAGG;AACH,SAAgB,WAAW,CAAC,GAAW;IACrC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,gBAAgB,CAAC,GAAG,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC9D,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,IAAA,6BAAQ,EAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAClC,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7C,qEAAqE;QACrE,OAAO,CAAC,OAAO,CAAC;IAClB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
@@ -0,0 +1,49 @@
1
+ import chalk from "chalk";
2
+ /**
3
+ * Bioluminescence brand palette (ADR-190)
4
+ * Inspired by rotifer chloroplast symbiosis bioluminescence.
5
+ */
6
+ export declare const hex: {
7
+ readonly accent: "#00C9A7";
8
+ readonly accentBright: "#00FFD1";
9
+ readonly accentDim: "#009E84";
10
+ readonly brand: "#6366F1";
11
+ readonly info: "#6EC6FF";
12
+ readonly success: "#4ADE80";
13
+ readonly warn: "#FBBF24";
14
+ readonly error: "#F87171";
15
+ readonly muted: "#94A3B8";
16
+ };
17
+ /**
18
+ * Semantic color functions. Uses getters so that chalk.level changes
19
+ * (e.g. --plain sets level=0) take effect at call time, not import time.
20
+ * chalk v4's .hex() captures level at creation — getters recreate per access.
21
+ */
22
+ export declare const c: {
23
+ readonly accent: chalk.Chalk;
24
+ readonly accentBright: chalk.Chalk;
25
+ readonly accentDim: chalk.Chalk;
26
+ readonly brand: chalk.Chalk;
27
+ readonly info: chalk.Chalk;
28
+ readonly success: chalk.Chalk;
29
+ readonly warn: chalk.Chalk;
30
+ readonly error: chalk.Chalk;
31
+ readonly muted: chalk.Chalk;
32
+ readonly bold: chalk.Chalk;
33
+ readonly dim: chalk.Chalk;
34
+ };
35
+ export declare const icon: {
36
+ readonly success: "✓";
37
+ readonly error: "✗";
38
+ readonly warn: "⚠";
39
+ readonly info: "ℹ";
40
+ readonly arrow: "→";
41
+ readonly bullet: "•";
42
+ readonly dash: "─";
43
+ readonly up: "↑";
44
+ readonly down: "↓";
45
+ };
46
+ export declare function fidelityColor(fidelity: string): string;
47
+ export declare function scoreColor(score: number | null | undefined): string;
48
+ export declare function scoreColor2(score: number | null | undefined): string;
49
+ //# sourceMappingURL=palette.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"palette.d.ts","sourceRoot":"","sources":["../../src/utils/palette.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B;;;GAGG;AACH,eAAO,MAAM,GAAG;;;;;;;;;;CAUN,CAAC;AAEX;;;;GAIG;AACH,eAAO,MAAM,CAAC;;;;;;;;;;;;CAYb,CAAC;AAEF,eAAO,MAAM,IAAI;;;;;;;;;;CAUP,CAAC;AAEX,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAItD;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAKnE;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAKpE"}
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.icon = exports.c = exports.hex = void 0;
7
+ exports.fidelityColor = fidelityColor;
8
+ exports.scoreColor = scoreColor;
9
+ exports.scoreColor2 = scoreColor2;
10
+ const chalk_1 = __importDefault(require("chalk"));
11
+ /**
12
+ * Bioluminescence brand palette (ADR-190)
13
+ * Inspired by rotifer chloroplast symbiosis bioluminescence.
14
+ */
15
+ exports.hex = {
16
+ accent: "#00C9A7",
17
+ accentBright: "#00FFD1",
18
+ accentDim: "#009E84",
19
+ brand: "#6366F1",
20
+ info: "#6EC6FF",
21
+ success: "#4ADE80",
22
+ warn: "#FBBF24",
23
+ error: "#F87171",
24
+ muted: "#94A3B8",
25
+ };
26
+ /**
27
+ * Semantic color functions. Uses getters so that chalk.level changes
28
+ * (e.g. --plain sets level=0) take effect at call time, not import time.
29
+ * chalk v4's .hex() captures level at creation — getters recreate per access.
30
+ */
31
+ exports.c = {
32
+ get accent() { return chalk_1.default.hex(exports.hex.accent); },
33
+ get accentBright() { return chalk_1.default.hex(exports.hex.accentBright); },
34
+ get accentDim() { return chalk_1.default.hex(exports.hex.accentDim); },
35
+ get brand() { return chalk_1.default.hex(exports.hex.brand); },
36
+ get info() { return chalk_1.default.hex(exports.hex.info); },
37
+ get success() { return chalk_1.default.hex(exports.hex.success); },
38
+ get warn() { return chalk_1.default.hex(exports.hex.warn); },
39
+ get error() { return chalk_1.default.hex(exports.hex.error); },
40
+ get muted() { return chalk_1.default.hex(exports.hex.muted); },
41
+ get bold() { return chalk_1.default.bold; },
42
+ get dim() { return chalk_1.default.dim; },
43
+ };
44
+ exports.icon = {
45
+ success: "✓",
46
+ error: "✗",
47
+ warn: "⚠",
48
+ info: "ℹ",
49
+ arrow: "→",
50
+ bullet: "•",
51
+ dash: "─",
52
+ up: "↑",
53
+ down: "↓",
54
+ };
55
+ function fidelityColor(fidelity) {
56
+ if (fidelity === "Native")
57
+ return exports.c.success(fidelity);
58
+ if (fidelity === "Hybrid")
59
+ return exports.c.brand(fidelity);
60
+ return exports.c.muted(fidelity);
61
+ }
62
+ function scoreColor(score) {
63
+ if (score == null)
64
+ return exports.c.muted("—");
65
+ if (score >= 0.7)
66
+ return exports.c.success(score.toFixed(4));
67
+ if (score >= 0.3)
68
+ return exports.c.warn(score.toFixed(4));
69
+ return exports.c.muted(score.toFixed(4));
70
+ }
71
+ function scoreColor2(score) {
72
+ if (score == null)
73
+ return exports.c.muted("—");
74
+ if (score >= 0.7)
75
+ return exports.c.success(score.toFixed(2));
76
+ if (score >= 0.3)
77
+ return exports.c.warn(score.toFixed(2));
78
+ return exports.c.muted(score.toFixed(2));
79
+ }
80
+ //# sourceMappingURL=palette.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"palette.js","sourceRoot":"","sources":["../../src/utils/palette.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare function ensurePrivateDir(dirPath: string): void;
2
+ export declare function tightenPrivateFile(filePath: string, mode?: number): void;
3
+ //# sourceMappingURL=private-fs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"private-fs.d.ts","sourceRoot":"","sources":["../../src/utils/private-fs.ts"],"names":[],"mappings":"AAEA,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAUtD;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,GAAE,MAAc,GAAG,IAAI,CAM/E"}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ensurePrivateDir = ensurePrivateDir;
4
+ exports.tightenPrivateFile = tightenPrivateFile;
5
+ const node_fs_1 = require("node:fs");
6
+ function ensurePrivateDir(dirPath) {
7
+ if (!(0, node_fs_1.existsSync)(dirPath)) {
8
+ (0, node_fs_1.mkdirSync)(dirPath, { recursive: true, mode: 0o700 });
9
+ }
10
+ try {
11
+ (0, node_fs_1.chmodSync)(dirPath, 0o700);
12
+ }
13
+ catch {
14
+ // Best-effort hardening on existing directories.
15
+ }
16
+ }
17
+ function tightenPrivateFile(filePath, mode = 0o600) {
18
+ try {
19
+ (0, node_fs_1.chmodSync)(filePath, mode);
20
+ }
21
+ catch {
22
+ // Best-effort hardening on files that were just created or updated.
23
+ }
24
+ }
25
+ //# sourceMappingURL=private-fs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"private-fs.js","sourceRoot":"","sources":["../../src/utils/private-fs.ts"],"names":[],"mappings":";;AAEA,4CAUC;AAED,gDAMC;AApBD,qCAA2D;AAE3D,SAAgB,gBAAgB,CAAC,OAAe;IAC9C,IAAI,CAAC,IAAA,oBAAU,EAAC,OAAO,CAAC,EAAE,CAAC;QACzB,IAAA,mBAAS,EAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACvD,CAAC;IAED,IAAI,CAAC;QACH,IAAA,mBAAS,EAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC5B,CAAC;IAAC,MAAM,CAAC;QACP,iDAAiD;IACnD,CAAC;AACH,CAAC;AAED,SAAgB,kBAAkB,CAAC,QAAgB,EAAE,OAAe,KAAK;IACvE,IAAI,CAAC;QACH,IAAA,mBAAS,EAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC5B,CAAC;IAAC,MAAM,CAAC;QACP,oEAAoE;IACtE,CAAC;AACH,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function requireProjectRoot(): string;
2
+ //# sourceMappingURL=project-root.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-root.d.ts","sourceRoot":"","sources":["../../src/utils/project-root.ts"],"names":[],"mappings":"AAGA,wBAAgB,kBAAkB,IAAI,MAAM,CAS3C"}
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.requireProjectRoot = requireProjectRoot;
37
+ const display = __importStar(require("./display.js"));
38
+ const config_js_1 = require("./config.js");
39
+ function requireProjectRoot() {
40
+ try {
41
+ return (0, config_js_1.getProjectRoot)();
42
+ }
43
+ catch {
44
+ display.error("Not in a Rotifer project. Run 'rotifer init' first.");
45
+ process.exit(1);
46
+ }
47
+ throw new Error("unreachable");
48
+ }
49
+ //# sourceMappingURL=project-root.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-root.js","sourceRoot":"","sources":["../../src/utils/project-root.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,gDASC;AAZD,sDAAwC;AACxC,2CAA6C;AAE7C,SAAgB,kBAAkB;IAChC,IAAI,CAAC;QACH,OAAO,IAAA,0BAAc,GAAE,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACrE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;AACjC,CAAC"}
@@ -0,0 +1,24 @@
1
+ interface GeneExecutionMeta {
2
+ geneName: string;
3
+ success: boolean;
4
+ durationMs: number;
5
+ inputSize: number;
6
+ outputSize: number;
7
+ error?: string;
8
+ resourceCost?: number;
9
+ }
10
+ export declare function logGeneExecution(meta: GeneExecutionMeta): void;
11
+ export declare function getLogDir(): string;
12
+ export interface RunLogEntry {
13
+ geneId: string;
14
+ timestamp: string;
15
+ success: boolean;
16
+ durationMs: number;
17
+ inputSize: number;
18
+ outputSize: number;
19
+ error?: string;
20
+ resourceCost?: number;
21
+ }
22
+ export declare function readRunLogs(geneName: string): RunLogEntry[];
23
+ export {};
24
+ //# sourceMappingURL=run-logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-logger.d.ts","sourceRoot":"","sources":["../../src/utils/run-logger.ts"],"names":[],"mappings":"AAQA,UAAU,iBAAiB;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,iBAAiB,GAAG,IAAI,CA8B9D;AAED,wBAAgB,SAAS,IAAI,MAAM,CAElC;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW,EAAE,CAiB3D"}
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.logGeneExecution = logGeneExecution;
4
+ exports.getLogDir = getLogDir;
5
+ exports.readRunLogs = readRunLogs;
6
+ const node_fs_1 = require("node:fs");
7
+ const node_path_1 = require("node:path");
8
+ const node_os_1 = require("node:os");
9
+ const private_fs_js_1 = require("./private-fs.js");
10
+ const MAX_LOG_SIZE = 10 * 1024 * 1024; // 10MB rotation
11
+ const LOG_DIR = (0, node_path_1.join)((0, node_os_1.homedir)(), ".rotifer", "run-logs");
12
+ function logGeneExecution(meta) {
13
+ try {
14
+ (0, private_fs_js_1.ensurePrivateDir)(LOG_DIR);
15
+ const logFile = (0, node_path_1.join)(LOG_DIR, `${meta.geneName}.jsonl`);
16
+ if ((0, node_fs_1.existsSync)(logFile)) {
17
+ const stats = (0, node_fs_1.statSync)(logFile);
18
+ if (stats.size > MAX_LOG_SIZE) {
19
+ const rotated = logFile + ".old";
20
+ try {
21
+ (0, node_fs_1.renameSync)(logFile, rotated);
22
+ }
23
+ catch { /* best-effort */ }
24
+ }
25
+ }
26
+ const entry = {
27
+ geneId: meta.geneName,
28
+ timestamp: new Date().toISOString(),
29
+ success: meta.success,
30
+ durationMs: Math.round(meta.durationMs),
31
+ inputSize: meta.inputSize,
32
+ outputSize: meta.outputSize,
33
+ error: meta.error || undefined,
34
+ resourceCost: meta.resourceCost || undefined,
35
+ };
36
+ (0, node_fs_1.appendFileSync)(logFile, JSON.stringify(entry) + "\n", { mode: 0o600 });
37
+ (0, private_fs_js_1.tightenPrivateFile)(logFile);
38
+ }
39
+ catch {
40
+ // Zero-disruption: never throw from logging
41
+ }
42
+ }
43
+ function getLogDir() {
44
+ return LOG_DIR;
45
+ }
46
+ function readRunLogs(geneName) {
47
+ const logFile = (0, node_path_1.join)(LOG_DIR, `${geneName}.jsonl`);
48
+ if (!(0, node_fs_1.existsSync)(logFile))
49
+ return [];
50
+ try {
51
+ const { readFileSync } = require("node:fs");
52
+ const content = readFileSync(logFile, "utf-8");
53
+ return content
54
+ .split("\n")
55
+ .filter((line) => line.trim())
56
+ .map((line) => {
57
+ try {
58
+ return JSON.parse(line);
59
+ }
60
+ catch {
61
+ return null;
62
+ }
63
+ })
64
+ .filter(Boolean);
65
+ }
66
+ catch {
67
+ return [];
68
+ }
69
+ }
70
+ //# sourceMappingURL=run-logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-logger.js","sourceRoot":"","sources":["../../src/utils/run-logger.ts"],"names":[],"mappings":";;AAkBA,4CA8BC;AAED,8BAEC;AAaD,kCAiBC;AAlFD,qCAA2E;AAC3E,yCAAiC;AACjC,qCAAkC;AAClC,mDAAuE;AAEvE,MAAM,YAAY,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,gBAAgB;AACvD,MAAM,OAAO,GAAG,IAAA,gBAAI,EAAC,IAAA,iBAAO,GAAE,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;AAYxD,SAAgB,gBAAgB,CAAC,IAAuB;IACtD,IAAI,CAAC;QACH,IAAA,gCAAgB,EAAC,OAAO,CAAC,CAAC;QAE1B,MAAM,OAAO,GAAG,IAAA,gBAAI,EAAC,OAAO,EAAE,GAAG,IAAI,CAAC,QAAQ,QAAQ,CAAC,CAAC;QAExD,IAAI,IAAA,oBAAU,EAAC,OAAO,CAAC,EAAE,CAAC;YACxB,MAAM,KAAK,GAAG,IAAA,kBAAQ,EAAC,OAAO,CAAC,CAAC;YAChC,IAAI,KAAK,CAAC,IAAI,GAAG,YAAY,EAAE,CAAC;gBAC9B,MAAM,OAAO,GAAG,OAAO,GAAG,MAAM,CAAC;gBACjC,IAAI,CAAC;oBAAC,IAAA,oBAAU,EAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;YACnE,CAAC;QACH,CAAC;QAED,MAAM,KAAK,GAAG;YACZ,MAAM,EAAE,IAAI,CAAC,QAAQ;YACrB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC;YACvC,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,SAAS;YAC9B,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,SAAS;SAC7C,CAAC;QAEF,IAAA,wBAAc,EAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QACvE,IAAA,kCAAkB,EAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;IAAC,MAAM,CAAC;QACP,4CAA4C;IAC9C,CAAC;AACH,CAAC;AAED,SAAgB,SAAS;IACvB,OAAO,OAAO,CAAC;AACjB,CAAC;AAaD,SAAgB,WAAW,CAAC,QAAgB;IAC1C,MAAM,OAAO,GAAG,IAAA,gBAAI,EAAC,OAAO,EAAE,GAAG,QAAQ,QAAQ,CAAC,CAAC;IACnD,IAAI,CAAC,IAAA,oBAAU,EAAC,OAAO,CAAC;QAAE,OAAO,EAAE,CAAC;IAEpC,IAAI,CAAC;QACH,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;QAC5C,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC/C,OAAO,OAAO;aACX,KAAK,CAAC,IAAI,CAAC;aACX,MAAM,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;aACrC,GAAG,CAAC,CAAC,IAAY,EAAE,EAAE;YACpB,IAAI,CAAC;gBAAC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC;gBAAC,OAAO,IAAI,CAAC;YAAC,CAAC;QACzD,CAAC,CAAC;aACD,MAAM,CAAC,OAAO,CAAkB,CAAC;IACtC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC"}
@@ -0,0 +1,20 @@
1
+ export declare function isMajorUpgrade(current: string, latest: string): boolean;
2
+ export interface UpdateInfo {
3
+ current: string;
4
+ latest: string;
5
+ isMajor: boolean;
6
+ }
7
+ /**
8
+ * Non-blocking version check against npm registry.
9
+ * Returns update info if a newer version exists, null otherwise.
10
+ * Caches results for 24 hours. Never throws — fails silently.
11
+ */
12
+ export declare function checkForUpdate(pkgName: string, currentVersion: string): Promise<UpdateInfo | null>;
13
+ /**
14
+ * Synchronous cache-only check. Returns UpdateInfo if cache is fresh and
15
+ * a newer version exists, null otherwise. Never hits the network.
16
+ * Use this to register process.on("exit") handlers that survive process.exit().
17
+ */
18
+ export declare function checkCacheSync(pkgName: string, currentVersion: string): UpdateInfo | null;
19
+ export declare function printUpdateNotification(info: UpdateInfo, pkgName: string): void;
20
+ //# sourceMappingURL=update-check.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-check.d.ts","sourceRoot":"","sources":["../../src/utils/update-check.ts"],"names":[],"mappings":"AA+EA,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAIvE;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;;;GAIG;AACH,wBAAsB,cAAc,CAClC,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CA2B5B;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,MAAM,GACrB,UAAU,GAAG,IAAI,CAUnB;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAwB/E"}
@@ -0,0 +1,155 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isMajorUpgrade = isMajorUpgrade;
4
+ exports.checkForUpdate = checkForUpdate;
5
+ exports.checkCacheSync = checkCacheSync;
6
+ exports.printUpdateNotification = printUpdateNotification;
7
+ const node_fs_1 = require("node:fs");
8
+ const node_path_1 = require("node:path");
9
+ const node_os_1 = require("node:os");
10
+ const palette_js_1 = require("./palette.js");
11
+ const CHECK_INTERVAL_MS = 24 * 60 * 60 * 1000;
12
+ function getConfigDir() {
13
+ return process.env.ROTIFER_CONFIG_DIR || (0, node_path_1.join)((0, node_os_1.homedir)(), ".config", "rotifer");
14
+ }
15
+ function getCacheFile() {
16
+ return (0, node_path_1.join)(getConfigDir(), "update-check.json");
17
+ }
18
+ const REGISTRY_URL = "https://registry.npmjs.org";
19
+ const FETCH_TIMEOUT_MS = 5000;
20
+ function shouldSkip() {
21
+ if (process.env.CI)
22
+ return true;
23
+ if (process.env.NO_UPDATE_NOTIFIER)
24
+ return true;
25
+ if (process.env.ROTIFER_NO_UPDATE_CHECK)
26
+ return true;
27
+ if (isRunViaNpx())
28
+ return true;
29
+ return false;
30
+ }
31
+ function isRunViaNpx() {
32
+ const execPath = process.env.npm_execpath || "";
33
+ const npmCommand = process.env.npm_command || "";
34
+ return execPath.includes("npx") || npmCommand === "exec";
35
+ }
36
+ function readCache() {
37
+ try {
38
+ const f = getCacheFile();
39
+ if ((0, node_fs_1.existsSync)(f)) {
40
+ return JSON.parse((0, node_fs_1.readFileSync)(f, "utf-8"));
41
+ }
42
+ }
43
+ catch { /* corrupt cache, regenerate */ }
44
+ return {};
45
+ }
46
+ function writeCache(cache) {
47
+ try {
48
+ (0, node_fs_1.mkdirSync)(getConfigDir(), { recursive: true });
49
+ (0, node_fs_1.writeFileSync)(getCacheFile(), JSON.stringify(cache, null, 2));
50
+ }
51
+ catch { /* non-critical */ }
52
+ }
53
+ async function fetchLatestVersion(pkgName) {
54
+ try {
55
+ const controller = new AbortController();
56
+ const timeout = setTimeout(() => controller.abort(), FETCH_TIMEOUT_MS);
57
+ const res = await fetch(`${REGISTRY_URL}/${encodeURIComponent(pkgName)}/latest`, {
58
+ signal: controller.signal,
59
+ headers: { accept: "application/json" },
60
+ });
61
+ clearTimeout(timeout);
62
+ if (!res.ok)
63
+ return null;
64
+ const data = await res.json();
65
+ return data.version || null;
66
+ }
67
+ catch {
68
+ return null;
69
+ }
70
+ }
71
+ function compareSemver(a, b) {
72
+ const pa = a.split(".").map(Number);
73
+ const pb = b.split(".").map(Number);
74
+ for (let i = 0; i < 3; i++) {
75
+ if ((pa[i] || 0) > (pb[i] || 0))
76
+ return 1;
77
+ if ((pa[i] || 0) < (pb[i] || 0))
78
+ return -1;
79
+ }
80
+ return 0;
81
+ }
82
+ function isMajorUpgrade(current, latest) {
83
+ const curMajor = parseInt(current.split(".")[0], 10);
84
+ const latMajor = parseInt(latest.split(".")[0], 10);
85
+ return latMajor > curMajor;
86
+ }
87
+ /**
88
+ * Non-blocking version check against npm registry.
89
+ * Returns update info if a newer version exists, null otherwise.
90
+ * Caches results for 24 hours. Never throws — fails silently.
91
+ */
92
+ async function checkForUpdate(pkgName, currentVersion) {
93
+ if (shouldSkip())
94
+ return null;
95
+ try {
96
+ const cache = readCache();
97
+ const entry = cache[pkgName];
98
+ if (entry && Date.now() - entry.lastCheck < CHECK_INTERVAL_MS) {
99
+ if (compareSemver(entry.latest, currentVersion) > 0) {
100
+ return { current: currentVersion, latest: entry.latest, isMajor: isMajorUpgrade(currentVersion, entry.latest) };
101
+ }
102
+ return null;
103
+ }
104
+ const latest = await fetchLatestVersion(pkgName);
105
+ if (!latest)
106
+ return null;
107
+ cache[pkgName] = { lastCheck: Date.now(), latest };
108
+ writeCache(cache);
109
+ if (compareSemver(latest, currentVersion) > 0) {
110
+ return { current: currentVersion, latest, isMajor: isMajorUpgrade(currentVersion, latest) };
111
+ }
112
+ return null;
113
+ }
114
+ catch {
115
+ return null;
116
+ }
117
+ }
118
+ /**
119
+ * Synchronous cache-only check. Returns UpdateInfo if cache is fresh and
120
+ * a newer version exists, null otherwise. Never hits the network.
121
+ * Use this to register process.on("exit") handlers that survive process.exit().
122
+ */
123
+ function checkCacheSync(pkgName, currentVersion) {
124
+ if (shouldSkip())
125
+ return null;
126
+ try {
127
+ const cache = readCache();
128
+ const entry = cache[pkgName];
129
+ if (entry && compareSemver(entry.latest, currentVersion) > 0) {
130
+ return { current: currentVersion, latest: entry.latest, isMajor: isMajorUpgrade(currentVersion, entry.latest) };
131
+ }
132
+ }
133
+ catch { /* non-critical */ }
134
+ return null;
135
+ }
136
+ function printUpdateNotification(info, pkgName) {
137
+ const border = palette_js_1.c.warn(palette_js_1.icon.dash.repeat(50));
138
+ console.error("");
139
+ console.error(border);
140
+ console.error(palette_js_1.c.warn(" Update available: ") +
141
+ palette_js_1.c.error(info.current) +
142
+ palette_js_1.c.warn(` ${palette_js_1.icon.arrow} `) +
143
+ palette_js_1.c.success(info.latest));
144
+ if (info.isMajor) {
145
+ console.error(palette_js_1.c.error(` ${palette_js_1.icon.warn} Major version upgrade — review breaking changes first`));
146
+ }
147
+ console.error(palette_js_1.c.warn(" Run ") +
148
+ palette_js_1.c.accent(`npm i -g ${pkgName}@latest`) +
149
+ palette_js_1.c.warn(" to update"));
150
+ console.error(palette_js_1.c.warn(" Or: ") +
151
+ palette_js_1.c.accent("rotifer self-update"));
152
+ console.error(border);
153
+ console.error("");
154
+ }
155
+ //# sourceMappingURL=update-check.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-check.js","sourceRoot":"","sources":["../../src/utils/update-check.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ export interface UserConfig {
2
+ "update-check"?: boolean;
3
+ "last-version"?: string;
4
+ }
5
+ export declare function isValidKey(key: string): key is keyof UserConfig;
6
+ export declare function loadUserConfig(): UserConfig;
7
+ export declare function saveUserConfig(config: UserConfig): void;
8
+ export declare function getUserConfigValue(key: keyof UserConfig): string;
9
+ export declare function setUserConfigValue(key: keyof UserConfig, value: string): void;
10
+ //# sourceMappingURL=user-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-config.d.ts","sourceRoot":"","sources":["../../src/utils/user-config.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,UAAU;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AASD,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,IAAI,MAAM,UAAU,CAE/D;AAED,wBAAgB,cAAc,IAAI,UAAU,CAQ3C;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CAGvD;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,UAAU,GAAG,MAAM,CAIhE;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAQ7E"}