@pasosdejesus/m 0.27.2 → 0.28.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (315) hide show
  1. package/README.md +2 -2
  2. package/dist/CHANGELOG.md +126 -0
  3. package/dist/compose/derive.d.ts +53 -0
  4. package/dist/compose/derive.d.ts.map +1 -0
  5. package/dist/compose/derive.js +128 -0
  6. package/dist/compose/derive.js.map +1 -0
  7. package/dist/compose/discover.d.ts +32 -0
  8. package/dist/compose/discover.d.ts.map +1 -0
  9. package/dist/compose/discover.js +96 -0
  10. package/dist/compose/discover.js.map +1 -0
  11. package/dist/compose/index.d.ts +17 -0
  12. package/dist/compose/index.d.ts.map +1 -0
  13. package/dist/compose/index.js +16 -0
  14. package/dist/compose/index.js.map +1 -0
  15. package/dist/compose/manifest.d.ts +89 -0
  16. package/dist/compose/manifest.d.ts.map +1 -0
  17. package/dist/compose/manifest.js +16 -0
  18. package/dist/compose/manifest.js.map +1 -0
  19. package/dist/compose/sync.d.ts +12 -0
  20. package/dist/compose/sync.d.ts.map +1 -0
  21. package/dist/compose/sync.js +27 -0
  22. package/dist/compose/sync.js.map +1 -0
  23. package/dist/compose/usage.d.ts +54 -0
  24. package/dist/compose/usage.d.ts.map +1 -0
  25. package/dist/compose/usage.js +167 -0
  26. package/dist/compose/usage.js.map +1 -0
  27. package/dist/compose/vendor.d.ts +45 -0
  28. package/dist/compose/vendor.d.ts.map +1 -0
  29. package/dist/compose/vendor.js +147 -0
  30. package/dist/compose/vendor.js.map +1 -0
  31. package/dist/compose/verify.d.ts +11 -0
  32. package/dist/compose/verify.d.ts.map +1 -0
  33. package/dist/compose/verify.js +74 -0
  34. package/dist/compose/verify.js.map +1 -0
  35. package/dist/e2e/env.d.ts +1 -1
  36. package/dist/e2e/env.js +3 -3
  37. package/dist/e2e/env.js.map +1 -1
  38. package/dist/e2e/local-node.js +1 -1
  39. package/dist/e2e/local-node.js.map +1 -1
  40. package/dist/e2e/wallet-mock.js +1 -1
  41. package/dist/e2e/wallet-mock.js.map +1 -1
  42. package/dist/e2e/warmup.js +1 -1
  43. package/dist/e2e/warmup.js.map +1 -1
  44. package/dist/engine.d.ts +3 -16
  45. package/dist/engine.d.ts.map +1 -1
  46. package/dist/i18n/locales/cli.d.ts.map +1 -1
  47. package/dist/i18n/locales/cli.js +16 -10
  48. package/dist/i18n/locales/cli.js.map +1 -1
  49. package/dist/m.js +13 -10
  50. package/dist/m.js.map +1 -1
  51. package/dist/shadcn_components/ui/button.d.ts +1 -1
  52. package/dist/tasks/create.d.ts +1 -1
  53. package/dist/tasks/create.d.ts.map +1 -1
  54. package/dist/tasks/create.js +5 -13
  55. package/dist/tasks/create.js.map +1 -1
  56. package/dist/tasks/db.d.ts +2 -1
  57. package/dist/tasks/db.d.ts.map +1 -1
  58. package/dist/tasks/db.js +14 -11
  59. package/dist/tasks/db.js.map +1 -1
  60. package/dist/tasks/e2e-summary.js +1 -1
  61. package/dist/tasks/e2e-summary.js.map +1 -1
  62. package/dist/tasks/e2e.js +1 -1
  63. package/dist/tasks/e2e.js.map +1 -1
  64. package/dist/tasks/engine.d.ts.map +1 -1
  65. package/dist/tasks/engine.js +246 -17
  66. package/dist/tasks/engine.js.map +1 -1
  67. package/dist/tasks/msip.d.ts +11 -0
  68. package/dist/tasks/msip.d.ts.map +1 -0
  69. package/dist/tasks/{base-model.js → msip.js} +161 -25
  70. package/dist/tasks/msip.js.map +1 -0
  71. package/dist/tasks/warmup.js +1 -1
  72. package/dist/tasks/warmup.js.map +1 -1
  73. package/dist/templates/apps/hardhat/README.md +0 -8
  74. package/dist/templates/apps/nextjs/bin/m +3 -0
  75. package/dist/templates/apps/nextjs/tests/global-setup.ts +28 -0
  76. package/dist/templates/apps/nextjs/vitest.config.ts +3 -0
  77. package/dist/test-utils/console.d.ts +1 -1
  78. package/dist/test-utils/console.js +1 -1
  79. package/dist/test-utils/kysely-mocks.d.ts +1 -1
  80. package/dist/test-utils/kysely-mocks.js +1 -1
  81. package/dist/test-utils/wallet-mocks.js +1 -1
  82. package/dist/test-utils/wallet-setup.js +1 -1
  83. package/dist/util/engines.d.ts +4 -6
  84. package/dist/util/engines.d.ts.map +1 -1
  85. package/dist/util/engines.js +5 -38
  86. package/dist/util/engines.js.map +1 -1
  87. package/dist/util/msip.d.ts +17 -0
  88. package/dist/util/msip.d.ts.map +1 -0
  89. package/dist/util/msip.js +86 -0
  90. package/dist/util/msip.js.map +1 -0
  91. package/dist/wallet/index.js +1 -1
  92. package/dist/wallet/index.js.map +1 -1
  93. package/dist/wallet/next/i18n.d.ts +1 -1
  94. package/dist/wallet/next/i18n.js +1 -1
  95. package/dist/wallet/next/index.js +1 -1
  96. package/dist/wallet/next/index.js.map +1 -1
  97. package/dist/wallet/next/namespaces.d.ts +1 -1
  98. package/dist/wallet/next/namespaces.js +1 -1
  99. package/dist/wallet/storage/idb.d.ts +1 -1
  100. package/dist/wallet/storage/idb.js +1 -1
  101. package/package.json +4 -6
  102. package/src/e2e/README.md +6 -6
  103. package/src/tasks/README.md +3 -3
  104. package/src/test-utils/README.md +2 -2
  105. package/src/wallet/README.md +4 -4
  106. package/dist/base-model/baseline.generated.d.ts +0 -48
  107. package/dist/base-model/baseline.generated.d.ts.map +0 -1
  108. package/dist/base-model/baseline.generated.js +0 -930
  109. package/dist/base-model/baseline.generated.js.map +0 -1
  110. package/dist/base-model/check.d.ts +0 -6
  111. package/dist/base-model/check.d.ts.map +0 -1
  112. package/dist/base-model/check.js +0 -195
  113. package/dist/base-model/check.js.map +0 -1
  114. package/dist/base-model/forward/baseline_1_0_0.d.ts +0 -3
  115. package/dist/base-model/forward/baseline_1_0_0.d.ts.map +0 -1
  116. package/dist/base-model/forward/baseline_1_0_0.js +0 -23
  117. package/dist/base-model/forward/baseline_1_0_0.js.map +0 -1
  118. package/dist/base-model/forward/index.d.ts +0 -28
  119. package/dist/base-model/forward/index.d.ts.map +0 -1
  120. package/dist/base-model/forward/index.js +0 -126
  121. package/dist/base-model/forward/index.js.map +0 -1
  122. package/dist/base-model/forward/index.test.d.ts +0 -2
  123. package/dist/base-model/forward/index.test.d.ts.map +0 -1
  124. package/dist/base-model/forward/index.test.js +0 -65
  125. package/dist/base-model/forward/index.test.js.map +0 -1
  126. package/dist/base-model/forward/policy.d.ts +0 -16
  127. package/dist/base-model/forward/policy.d.ts.map +0 -1
  128. package/dist/base-model/forward/policy.js +0 -37
  129. package/dist/base-model/forward/policy.js.map +0 -1
  130. package/dist/base-model/forward/policy.test.d.ts +0 -2
  131. package/dist/base-model/forward/policy.test.d.ts.map +0 -1
  132. package/dist/base-model/forward/policy.test.js +0 -40
  133. package/dist/base-model/forward/policy.test.js.map +0 -1
  134. package/dist/base-model/forward/types.d.ts +0 -21
  135. package/dist/base-model/forward/types.d.ts.map +0 -1
  136. package/dist/base-model/forward/types.js +0 -2
  137. package/dist/base-model/forward/types.js.map +0 -1
  138. package/dist/base-model/generate.d.ts +0 -42
  139. package/dist/base-model/generate.d.ts.map +0 -1
  140. package/dist/base-model/generate.js +0 -241
  141. package/dist/base-model/generate.js.map +0 -1
  142. package/dist/base-model/guidelines.d.ts +0 -13
  143. package/dist/base-model/guidelines.d.ts.map +0 -1
  144. package/dist/base-model/guidelines.js +0 -61
  145. package/dist/base-model/guidelines.js.map +0 -1
  146. package/dist/base-model/index.d.ts +0 -24
  147. package/dist/base-model/index.d.ts.map +0 -1
  148. package/dist/base-model/index.js +0 -29
  149. package/dist/base-model/index.js.map +0 -1
  150. package/dist/base-model/parse-structure.d.ts +0 -4
  151. package/dist/base-model/parse-structure.d.ts.map +0 -1
  152. package/dist/base-model/parse-structure.js +0 -170
  153. package/dist/base-model/parse-structure.js.map +0 -1
  154. package/dist/base-model/queries.d.ts +0 -34
  155. package/dist/base-model/queries.d.ts.map +0 -1
  156. package/dist/base-model/queries.js +0 -118
  157. package/dist/base-model/queries.js.map +0 -1
  158. package/dist/base-model/references/learn-tg.d.ts +0 -21
  159. package/dist/base-model/references/learn-tg.d.ts.map +0 -1
  160. package/dist/base-model/references/learn-tg.js +0 -65
  161. package/dist/base-model/references/learn-tg.js.map +0 -1
  162. package/dist/base-model/references/msip.d.ts +0 -29
  163. package/dist/base-model/references/msip.d.ts.map +0 -1
  164. package/dist/base-model/references/msip.js +0 -33
  165. package/dist/base-model/references/msip.js.map +0 -1
  166. package/dist/base-model/types.d.ts +0 -207
  167. package/dist/base-model/types.d.ts.map +0 -1
  168. package/dist/base-model/types.js +0 -10
  169. package/dist/base-model/types.js.map +0 -1
  170. package/dist/base-model/version.d.ts +0 -19
  171. package/dist/base-model/version.d.ts.map +0 -1
  172. package/dist/base-model/version.js +0 -26
  173. package/dist/base-model/version.js.map +0 -1
  174. package/dist/base-model/wallet-link.d.ts +0 -69
  175. package/dist/base-model/wallet-link.d.ts.map +0 -1
  176. package/dist/base-model/wallet-link.js +0 -220
  177. package/dist/base-model/wallet-link.js.map +0 -1
  178. package/dist/base-model/wallet-link.test.d.ts +0 -2
  179. package/dist/base-model/wallet-link.test.d.ts.map +0 -1
  180. package/dist/base-model/wallet-link.test.js +0 -147
  181. package/dist/base-model/wallet-link.test.js.map +0 -1
  182. package/dist/e2e/env.test.d.ts +0 -2
  183. package/dist/e2e/env.test.d.ts.map +0 -1
  184. package/dist/e2e/env.test.js +0 -72
  185. package/dist/e2e/env.test.js.map +0 -1
  186. package/dist/e2e/full-wallet.test.d.ts +0 -2
  187. package/dist/e2e/full-wallet.test.d.ts.map +0 -1
  188. package/dist/e2e/full-wallet.test.js +0 -63
  189. package/dist/e2e/full-wallet.test.js.map +0 -1
  190. package/dist/e2e/in-app-wallet.test.d.ts +0 -2
  191. package/dist/e2e/in-app-wallet.test.d.ts.map +0 -1
  192. package/dist/e2e/in-app-wallet.test.js +0 -52
  193. package/dist/e2e/in-app-wallet.test.js.map +0 -1
  194. package/dist/e2e/local-node.test.d.ts +0 -2
  195. package/dist/e2e/local-node.test.d.ts.map +0 -1
  196. package/dist/e2e/local-node.test.js +0 -43
  197. package/dist/e2e/local-node.test.js.map +0 -1
  198. package/dist/e2e/retry.test.d.ts +0 -2
  199. package/dist/e2e/retry.test.d.ts.map +0 -1
  200. package/dist/e2e/retry.test.js +0 -43
  201. package/dist/e2e/retry.test.js.map +0 -1
  202. package/dist/e2e/signer.test.d.ts +0 -2
  203. package/dist/e2e/signer.test.d.ts.map +0 -1
  204. package/dist/e2e/signer.test.js +0 -57
  205. package/dist/e2e/signer.test.js.map +0 -1
  206. package/dist/e2e/siwe-optional.test.d.ts +0 -2
  207. package/dist/e2e/siwe-optional.test.d.ts.map +0 -1
  208. package/dist/e2e/siwe-optional.test.js +0 -13
  209. package/dist/e2e/siwe-optional.test.js.map +0 -1
  210. package/dist/e2e/wallet-mock.test.d.ts +0 -2
  211. package/dist/e2e/wallet-mock.test.d.ts.map +0 -1
  212. package/dist/e2e/wallet-mock.test.js +0 -28
  213. package/dist/e2e/wallet-mock.test.js.map +0 -1
  214. package/dist/e2e/warmup.test.d.ts +0 -2
  215. package/dist/e2e/warmup.test.d.ts.map +0 -1
  216. package/dist/e2e/warmup.test.js +0 -67
  217. package/dist/e2e/warmup.test.js.map +0 -1
  218. package/dist/engine.test.d.ts +0 -2
  219. package/dist/engine.test.d.ts.map +0 -1
  220. package/dist/engine.test.js +0 -35
  221. package/dist/engine.test.js.map +0 -1
  222. package/dist/index.test.d.ts +0 -2
  223. package/dist/index.test.d.ts.map +0 -1
  224. package/dist/index.test.js +0 -11
  225. package/dist/index.test.js.map +0 -1
  226. package/dist/tasks/base-model.d.ts +0 -5
  227. package/dist/tasks/base-model.d.ts.map +0 -1
  228. package/dist/tasks/base-model.js.map +0 -1
  229. package/dist/tasks/create.test.d.ts +0 -2
  230. package/dist/tasks/create.test.d.ts.map +0 -1
  231. package/dist/tasks/create.test.js +0 -41
  232. package/dist/tasks/create.test.js.map +0 -1
  233. package/dist/tasks/e2e.test.d.ts +0 -2
  234. package/dist/tasks/e2e.test.d.ts.map +0 -1
  235. package/dist/tasks/e2e.test.js +0 -108
  236. package/dist/tasks/e2e.test.js.map +0 -1
  237. package/dist/tasks/update.test.d.ts +0 -2
  238. package/dist/tasks/update.test.d.ts.map +0 -1
  239. package/dist/tasks/update.test.js +0 -79
  240. package/dist/tasks/update.test.js.map +0 -1
  241. package/dist/tasks/warmup.test.d.ts +0 -2
  242. package/dist/tasks/warmup.test.d.ts.map +0 -1
  243. package/dist/tasks/warmup.test.js +0 -40
  244. package/dist/tasks/warmup.test.js.map +0 -1
  245. package/dist/templates/apps/nextjs/tests/index.test.ts +0 -7
  246. package/dist/templates/apps/nextjs/tests/test-utils.example.test.ts +0 -169
  247. package/dist/templates/apps/nextjs/tsconfig.test.json +0 -38
  248. package/dist/test-utils/console.test.d.ts +0 -2
  249. package/dist/test-utils/console.test.d.ts.map +0 -1
  250. package/dist/test-utils/console.test.js +0 -70
  251. package/dist/test-utils/console.test.js.map +0 -1
  252. package/dist/test-utils/kysely-mocks.test.d.ts +0 -2
  253. package/dist/test-utils/kysely-mocks.test.d.ts.map +0 -1
  254. package/dist/test-utils/kysely-mocks.test.js +0 -126
  255. package/dist/test-utils/kysely-mocks.test.js.map +0 -1
  256. package/dist/test-utils/wallet-mocks.test.d.ts +0 -2
  257. package/dist/test-utils/wallet-mocks.test.d.ts.map +0 -1
  258. package/dist/test-utils/wallet-mocks.test.js +0 -55
  259. package/dist/test-utils/wallet-mocks.test.js.map +0 -1
  260. package/dist/test-utils/wallet-setup.test.d.ts +0 -2
  261. package/dist/test-utils/wallet-setup.test.d.ts.map +0 -1
  262. package/dist/test-utils/wallet-setup.test.js +0 -18
  263. package/dist/test-utils/wallet-setup.test.js.map +0 -1
  264. package/dist/util/engines.test.d.ts +0 -2
  265. package/dist/util/engines.test.d.ts.map +0 -1
  266. package/dist/util/engines.test.js +0 -79
  267. package/dist/util/engines.test.js.map +0 -1
  268. package/dist/wallet/biometric.test.d.ts +0 -2
  269. package/dist/wallet/biometric.test.d.ts.map +0 -1
  270. package/dist/wallet/biometric.test.js +0 -44
  271. package/dist/wallet/biometric.test.js.map +0 -1
  272. package/dist/wallet/crypto.test.d.ts +0 -2
  273. package/dist/wallet/crypto.test.d.ts.map +0 -1
  274. package/dist/wallet/crypto.test.js +0 -34
  275. package/dist/wallet/crypto.test.js.map +0 -1
  276. package/dist/wallet/destinations.test.d.ts +0 -2
  277. package/dist/wallet/destinations.test.d.ts.map +0 -1
  278. package/dist/wallet/destinations.test.js +0 -34
  279. package/dist/wallet/destinations.test.js.map +0 -1
  280. package/dist/wallet/external-provider.test.d.ts +0 -2
  281. package/dist/wallet/external-provider.test.d.ts.map +0 -1
  282. package/dist/wallet/external-provider.test.js +0 -44
  283. package/dist/wallet/external-provider.test.js.map +0 -1
  284. package/dist/wallet/indexeddb.test.d.ts +0 -2
  285. package/dist/wallet/indexeddb.test.d.ts.map +0 -1
  286. package/dist/wallet/indexeddb.test.js +0 -28
  287. package/dist/wallet/indexeddb.test.js.map +0 -1
  288. package/dist/wallet/kdf.test.d.ts +0 -2
  289. package/dist/wallet/kdf.test.d.ts.map +0 -1
  290. package/dist/wallet/kdf.test.js +0 -54
  291. package/dist/wallet/kdf.test.js.map +0 -1
  292. package/dist/wallet/next/components.test.d.ts +0 -2
  293. package/dist/wallet/next/components.test.d.ts.map +0 -1
  294. package/dist/wallet/next/components.test.js +0 -122
  295. package/dist/wallet/next/components.test.js.map +0 -1
  296. package/dist/wallet/next/useInAppWallet.test.d.ts +0 -2
  297. package/dist/wallet/next/useInAppWallet.test.d.ts.map +0 -1
  298. package/dist/wallet/next/useInAppWallet.test.js +0 -261
  299. package/dist/wallet/next/useInAppWallet.test.js.map +0 -1
  300. package/dist/wallet/provider.test.d.ts +0 -2
  301. package/dist/wallet/provider.test.d.ts.map +0 -1
  302. package/dist/wallet/provider.test.js +0 -170
  303. package/dist/wallet/provider.test.js.map +0 -1
  304. package/dist/wallet/signer.test.d.ts +0 -2
  305. package/dist/wallet/signer.test.d.ts.map +0 -1
  306. package/dist/wallet/signer.test.js +0 -62
  307. package/dist/wallet/signer.test.js.map +0 -1
  308. package/dist/wallet/storage.test.d.ts +0 -2
  309. package/dist/wallet/storage.test.d.ts.map +0 -1
  310. package/dist/wallet/storage.test.js +0 -103
  311. package/dist/wallet/storage.test.js.map +0 -1
  312. package/dist/wallet/wallet.test.d.ts +0 -2
  313. package/dist/wallet/wallet.test.d.ts.map +0 -1
  314. package/dist/wallet/wallet.test.js +0 -150
  315. package/dist/wallet/wallet.test.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"engine.js","sourceRoot":"","sources":["../../src/tasks/engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine.js","sourceRoot":"","sources":["../../src/tasks/engine.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Resuelve el motor `msip` (ver `src/util/msip.ts`: instalado o vendorizado) y enlaza sus
3
+ * símbolos, para no repetir el prefijo del módulo en cada uso.
4
+ */
5
+ export declare function loadMsip(cwd?: string): Promise<string>;
6
+ export declare function runBaseModelSetup(): Promise<void>;
7
+ export declare function runBaseModelBaseline(): Promise<void>;
8
+ export declare function runBaseModelDump(): Promise<void>;
9
+ export declare function runBaseModelVerify(): Promise<void>;
10
+ export declare function runBaseModelSeed(): Promise<void>;
11
+ //# sourceMappingURL=msip.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"msip.d.ts","sourceRoot":"","sources":["../../src/tasks/msip.ts"],"names":[],"mappings":"AA2CA;;;GAGG;AACH,wBAAsB,QAAQ,CAAC,GAAG,GAAE,MAAsB,GAAG,OAAO,CAAC,MAAM,CAAC,CAY3E;AAmSD,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAOvD;AAED,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC,CAO1D;AAED,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAOtD;AAED,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CAOxD;AAwFD,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAOtD"}
@@ -1,15 +1,58 @@
1
1
  import { existsSync, mkdirSync, readFileSync, readdirSync, writeFileSync } from 'node:fs';
2
2
  import { dirname, isAbsolute, join } from 'node:path';
3
3
  import { createHash } from 'node:crypto';
4
+ import { gunzipSync } from 'node:zlib';
4
5
  import { spawnSync } from 'node:child_process';
5
6
  import { info, success, warn, problem } from '../util/colors.js';
6
7
  import { parseFlags } from '../util/cli-parser.js';
7
- import { BASE_MODEL_TABLES, BASE_MODEL_VERSION } from '../base-model/version.js';
8
- import { parseStructureSql } from '../base-model/parse-structure.js';
9
- import { buildBaseline, buildInventory, renderGeneratedModule } from '../base-model/generate.js';
10
- import { MSIP_ADDITIONS } from '../base-model/references/msip.js';
11
- import { BASE_MODEL_MIGRATIONS, migrationMarker, planSetup, renderMigrationFile, checkMigrationPolicy, } from '../base-model/forward/index.js';
12
- import { BASELINE_INVENTORY, BASELINE_SQL } from '../base-model/baseline.generated.js';
8
+ import { resolveMsip } from '../util/msip.js';
9
+ /**
10
+ * El motor `msip` **no** es dependencia de `m`: se resuelve donde el consumidor lo tenga
11
+ * (instalado, o vendorizado en `packages/generated/msip`) con `import()` al ejecutar. Los
12
+ * símbolos se copian a estos enlaces para no tocar el resto del archivo.
13
+ */
14
+ let BASE_MODEL_VERSION;
15
+ let parseStructureSql;
16
+ let buildBaseline;
17
+ let buildInventory;
18
+ let renderGeneratedModule;
19
+ let BASE_MODEL_MIGRATIONS;
20
+ let migrationMarker;
21
+ let planSetup;
22
+ let renderMigrationFile;
23
+ let checkMigrationPolicy;
24
+ let BASELINE_INVENTORY;
25
+ let BASELINE_SQL;
26
+ let seedTables;
27
+ let seedIsLoaded;
28
+ let countStatement;
29
+ let truncateStatement;
30
+ /** Directorio del motor resuelto (de ahí sale `db/seed.sql.gz`). */
31
+ let msipDir = null;
32
+ /**
33
+ * Resuelve el motor `msip` (ver `src/util/msip.ts`: instalado o vendorizado) y enlaza sus
34
+ * símbolos, para no repetir el prefijo del módulo en cada uso.
35
+ */
36
+ export async function loadMsip(cwd = process.cwd()) {
37
+ if (msipDir)
38
+ return msipDir;
39
+ const resolved = await resolveMsip(cwd);
40
+ const loaded = resolved.module;
41
+ ({
42
+ BASE_MODEL_VERSION, parseStructureSql, buildBaseline, buildInventory,
43
+ renderGeneratedModule, BASE_MODEL_MIGRATIONS, migrationMarker, planSetup, renderMigrationFile,
44
+ checkMigrationPolicy, BASELINE_INVENTORY, BASELINE_SQL,
45
+ seedTables, seedIsLoaded, countStatement, truncateStatement,
46
+ } = loaded);
47
+ msipDir = resolved.dir;
48
+ return msipDir;
49
+ }
50
+ /**
51
+ * Sin adiciones propias: el modelo base es exactamente la referencia. Lo que un
52
+ * consumidor necesite agregar lo aporta él con `--additions <file.json>` (m no
53
+ * codifica el esquema de ningún consumidor).
54
+ */
55
+ const EMPTY_ADDITIONS = { tables: [], sequences: [], columns: [], constraints: [] };
13
56
  const FLAGS = {
14
57
  'from-structure': { type: 'string' },
15
58
  'from-db': { type: 'boolean' },
@@ -55,14 +98,13 @@ function readExtensions(options) {
55
98
  return { extensions: JSON.parse(readFileSync(options.extensions, 'utf-8')), source: options.extensions };
56
99
  }
57
100
  /**
58
- * Additions: what the base declares beyond the reference. With msip-2.2 as the
59
- * reference the built-in list is `references/msip.ts`; `--additions <file.json>`
60
- * replaces it. `references/learn-tg.ts` is only a subtraction list (it belongs to
61
- * a learn.tg reference) and is not used by default any more.
101
+ * Additions: what the model declares beyond the reference. `m` ships **no**
102
+ * built-in additions (`EMPTY_ADDITIONS`); a consumer aporta lo suyo en tiempo de
103
+ * ejecución con `--additions <file.json>`.
62
104
  */
63
105
  function readAdditions(options) {
64
106
  if (!options.additions)
65
- return { additions: MSIP_ADDITIONS, source: 'built-in msip additions (references/msip.ts)' };
107
+ return { additions: EMPTY_ADDITIONS, source: 'empty (no built-in additions; pass --additions)' };
66
108
  return { additions: JSON.parse(readFileSync(options.additions, 'utf-8')), source: options.additions };
67
109
  }
68
110
  function keptColumns(inventory, table) {
@@ -95,6 +137,7 @@ function diffInventories(base, other) {
95
137
  return diffs;
96
138
  }
97
139
  async function runDump() {
140
+ await loadMsip();
98
141
  const options = readOptions();
99
142
  const say = options.print ? (message) => process.stderr.write(message + '\n') : info;
100
143
  const sayWarn = options.print ? (message) => process.stderr.write(message + '\n') : warn;
@@ -111,16 +154,12 @@ async function runDump() {
111
154
  version: BASE_MODEL_VERSION,
112
155
  reference: { source: reference.source, sha256 },
113
156
  });
114
- const consideredTables = [...new Set([...BASE_MODEL_TABLES, ...additions.tables.map((entry) => entry.name)])];
115
- for (const table of consideredTables) {
116
- if (parsed.tables[table])
157
+ // El modelo son todas las tablas del esquema de referencia; una adición que no
158
+ // está en la referencia la aporta ella misma.
159
+ for (const entry of additions.tables) {
160
+ if (parsed.tables[entry.name])
117
161
  continue;
118
- if (additions.tables.some((entry) => entry.name === table)) {
119
- say(` ${table}: no está en la referencia, lo aportan las adiciones`);
120
- }
121
- else {
122
- sayWarn(`[WARN] "${table}" es del modelo base pero no está en la referencia ni en las adiciones`);
123
- }
162
+ say(` ${entry.name}: no está en la referencia, lo aportan las adiciones`);
124
163
  }
125
164
  for (const entry of extensions.columns) {
126
165
  const [table, column] = entry.split('.');
@@ -144,11 +183,12 @@ async function runDump() {
144
183
  process.stdout.write(baseline.sql);
145
184
  return;
146
185
  }
147
- const out = options.out ?? 'packages/m/src/base-model/baseline.generated.ts';
186
+ const out = options.out ?? 'packages/msip/src/baseline.generated.ts';
148
187
  writeFileSync(out, renderGeneratedModule(baseline), 'utf-8');
149
188
  success(`[OK] wrote ${out}`);
150
189
  }
151
190
  async function runVerify() {
191
+ await loadMsip();
152
192
  const options = readOptions();
153
193
  const reference = readReference(options);
154
194
  const { extensions } = readExtensions(options);
@@ -223,9 +263,10 @@ async function runVerify() {
223
263
  /**
224
264
  * Imprime el baseline **publicado** (el que un consumidor aplica a una base
225
265
  * nueva). Con `--out <archivo>` lo guarda. Lo usa la migración del consumidor;
226
- * `base-model:dump` es distinto: **regenera** el baseline desde una referencia.
266
+ * `eng:msip:dump` es distinto: **regenera** el baseline desde una referencia.
227
267
  */
228
268
  async function runBaseline() {
269
+ await loadMsip();
229
270
  const options = readOptions();
230
271
  const sql = BASELINE_SQL.endsWith('\n') ? BASELINE_SQL : `${BASELINE_SQL}\n`;
231
272
  if (options.out) {
@@ -237,11 +278,12 @@ async function runBaseline() {
237
278
  process.stdout.write(sql);
238
279
  }
239
280
  /**
240
- * `base-model:setup [--out db/migrations] [--check]` (D11). Escribe como migraciones
281
+ * `eng:msip:setup [--out db/migrations] [--check]` (D11). Escribe como migraciones
241
282
  * Kysely del consumidor los pasos que le faltan; `--check` no escribe y sale con
242
283
  * código distinto de cero si falta alguno (lo que corre la CI del consumidor).
243
284
  */
244
285
  async function runSetup() {
286
+ await loadMsip();
245
287
  const { options } = parseFlags(process.argv.slice(3), {
246
288
  out: { type: 'string' },
247
289
  check: { type: 'boolean' },
@@ -259,7 +301,7 @@ async function runSetup() {
259
301
  for (const migration of missing) {
260
302
  problem(`[FAIL] falta ${migrationMarker(migration)} — ${migration.description}`);
261
303
  }
262
- problem('[FAIL] corre `bin/m base-model:setup` para generar las migraciones del modelo base');
304
+ problem('[FAIL] corre `bin/m eng:msip:setup` para generar las migraciones del modelo base');
263
305
  process.exitCode = 1;
264
306
  return;
265
307
  }
@@ -307,4 +349,98 @@ export async function runBaseModelVerify() {
307
349
  process.exitCode = 1;
308
350
  }
309
351
  }
310
- //# sourceMappingURL=base-model.js.map
352
+ /** Seed empaquetado por el motor (`<motor>/db/seed.sql.gz`), con el motor ya resuelto. */
353
+ function defaultSeedFile() {
354
+ if (!msipDir)
355
+ throw new Error('loadMsip() debe correr antes de leer el seed');
356
+ return join(msipDir, 'db', 'seed.sql.gz');
357
+ }
358
+ function readSeed(file) {
359
+ const buffer = readFileSync(file);
360
+ return file.endsWith('.gz') ? gunzipSync(buffer).toString('utf-8') : buffer.toString('utf-8');
361
+ }
362
+ function runPsql(args, input) {
363
+ const res = spawnSync('psql', args, {
364
+ input,
365
+ encoding: 'utf-8',
366
+ env: { ...process.env, PAGER: '', PSQL_PAGER: '', PSQLRC: '/dev/null' },
367
+ timeout: 600_000,
368
+ });
369
+ return { status: res.status ?? 1, stdout: res.stdout ?? '', stderr: res.stderr ?? '' };
370
+ }
371
+ function readSeedCounts(tables) {
372
+ const res = runPsql(['-tA', '-F', '\t', '-v', 'ON_ERROR_STOP=1', '-c', countStatement(tables)]);
373
+ const counts = {};
374
+ for (const line of res.stdout.split('\n')) {
375
+ const [table, n] = line.split('\t');
376
+ if (table)
377
+ counts[table.trim()] = Number(n);
378
+ }
379
+ return counts;
380
+ }
381
+ /**
382
+ * `eng:msip:seed [--file <sql|sql.gz>] [--force] [--check]` — carga los datos
383
+ * iniciales del modelo. Es **idempotente**: si ya están cargados no hace nada
384
+ * (salvo `--force`, que vacía las tablas del seed y recarga). `--check` no escribe
385
+ * y sale ≠0 si falta.
386
+ */
387
+ async function runSeed() {
388
+ await loadMsip();
389
+ const { options } = parseFlags(process.argv.slice(3), {
390
+ file: { type: 'string' },
391
+ force: { type: 'boolean' },
392
+ check: { type: 'boolean' },
393
+ });
394
+ const file = options.file ?? defaultSeedFile();
395
+ if (!existsSync(file)) {
396
+ problem(`[FAIL] seed no encontrado: ${file}`);
397
+ process.exitCode = 1;
398
+ return;
399
+ }
400
+ const sql = readSeed(file);
401
+ const tables = seedTables(sql);
402
+ if (tables.length === 0) {
403
+ warn('[WARN] el seed no trae INSERTs');
404
+ return;
405
+ }
406
+ const loaded = seedIsLoaded(tables, readSeedCounts(tables));
407
+ if (options.check) {
408
+ if (loaded)
409
+ success(`[OK] seed aplicado (${tables.length} tablas)`);
410
+ else {
411
+ problem('[FAIL] seed no aplicado; corre `bin/m eng:msip:seed`');
412
+ process.exitCode = 1;
413
+ }
414
+ return;
415
+ }
416
+ if (loaded && !options.force) {
417
+ info(`[OK] seed ya aplicado (${tables.length} tablas); usa --force para recargar`);
418
+ return;
419
+ }
420
+ if (options.force) {
421
+ const emptied = runPsql(['-v', 'ON_ERROR_STOP=1', '-c', truncateStatement(tables)]);
422
+ if (emptied.status !== 0) {
423
+ problem(`[FAIL] no se pudieron vaciar las tablas: ${emptied.stderr.trim()}`);
424
+ process.exitCode = 1;
425
+ return;
426
+ }
427
+ }
428
+ info(`Aplicando seed ${file} (${tables.length} tablas)...`);
429
+ const load = runPsql(['-1', '-v', 'ON_ERROR_STOP=1', '-q'], sql);
430
+ if (load.status !== 0) {
431
+ problem(`[FAIL] el seed falló: ${load.stderr.trim()}`);
432
+ process.exitCode = 1;
433
+ return;
434
+ }
435
+ success(`[OK] seed aplicado (${tables.length} tablas)`);
436
+ }
437
+ export async function runBaseModelSeed() {
438
+ try {
439
+ await runSeed();
440
+ }
441
+ catch (error) {
442
+ problem(error instanceof Error ? error.message : String(error));
443
+ process.exitCode = 1;
444
+ }
445
+ }
446
+ //# sourceMappingURL=msip.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"msip.js","sourceRoot":"","sources":["../../src/tasks/msip.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- // warmup — calienta un sitio (Next.js compila rutas bajo demanda) (m/REQ/49 P5).
1
+ // warmup — calienta un sitio (Next.js compila rutas bajo demanda) (https://gitlab.com/pasosdeJesus/m/-/work_items/49 P5).
2
2
  //
3
3
  // La lista de rutas vive en el consumidor: `e2e/warmup-paths.json` o
4
4
  // `package.json:e2e.warmupPaths`. El sitio base sale de `SITE_URL`.
@@ -1 +1 @@
1
- {"version":3,"file":"warmup.js","sourceRoot":"","sources":["../../src/tasks/warmup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"warmup.js","sourceRoot":"","sources":["../../src/tasks/warmup.ts"],"names":[],"mappings":"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"}
@@ -76,14 +76,6 @@ cd ../nextjs && pnpm contract:test
76
76
  Uses `@ethereumjs/vm` fallback via `@pasosdejesus/edr`. Run from the
77
77
  nextjs app directory.
78
78
 
79
- ### Experimental (hardhat3)
80
-
81
- ```
82
- cd tests/test-project/apps/hardhat3 && pnpm test
83
- ```
84
-
85
- Zero-mocking runner using `node:test` + shim. No Hardhat installation needed.
86
-
87
79
  ## ABI Synchronization
88
80
 
89
81
  ABIs are synced to `../nextjs/abis/` automatically on `pnpm build`.
@@ -5,4 +5,7 @@ import { dirname, join } from 'path';
5
5
  const __filename = fileURLToPath(import.meta.url);
6
6
  const __dirname = dirname(__filename);
7
7
 
8
+ // Optional PdJ extension (mpdj): registers ai:*, req:* and eng:credentials:*.
9
+ try { await import('@pasosdejesus/mpdj'); } catch {}
10
+
8
11
  import(join(__dirname, '..', 'node_modules', '@pasosdejesus', 'm', 'dist', 'm.js'));
@@ -0,0 +1,28 @@
1
+ // Los comandos de BD (`db:migrate`, `db:rollback`, `db:structure:dump`) **regeneran** archivos
2
+ // derivados del esquema en el proyecto: `db/db.d.ts` (versionado como fixture, lo usa
3
+ // `.config/kysely.config.ts`) y `db/structure.sql` (artefacto). Una corrida completa de los tests no
4
+ // debe ensuciar el árbol, así que este setup **global** los fotografía al inicio y los restaura al
5
+ // final (no hace falta que cada archivo de test lo repita).
6
+ import fs from 'node:fs';
7
+ import path from 'node:path';
8
+
9
+ const DERIVED = ['db/db.d.ts', 'db/structure.sql'];
10
+
11
+ export default function setup(): () => void {
12
+ const root = process.cwd();
13
+ const saved = DERIVED.map((relative) => {
14
+ const file = path.join(root, relative);
15
+ return {
16
+ file,
17
+ existed: fs.existsSync(file),
18
+ content: fs.existsSync(file) ? fs.readFileSync(file, 'utf-8') : '',
19
+ };
20
+ });
21
+
22
+ return () => {
23
+ for (const { file, existed, content } of saved) {
24
+ if (existed) fs.writeFileSync(file, content);
25
+ else if (fs.existsSync(file)) fs.rmSync(file, { force: true });
26
+ }
27
+ };
28
+ }
@@ -8,6 +8,9 @@ export default defineConfig({
8
8
  test: {
9
9
  globals: true,
10
10
  restoreMocks: true,
11
+ // Los comandos de BD regeneran derivados del esquema (`db/db.d.ts`, `db/structure.sql`):
12
+ // este setup global los restaura al terminar la corrida (ver tests/global-setup.ts).
13
+ globalSetup: './tests/global-setup.ts',
11
14
  },
12
15
  resolve: { conditions },
13
16
  });
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * "Y todo lo que hagáis, hacedlo de corazón, como para el Señor y no para los hombres" (Colosenses 3:23)
5
5
  *
6
- * P5/U2 of `m/REQ/49`: many consumers wrap `console` to hide expected noise
6
+ * P5/U2 of https://gitlab.com/pasosdeJesus/m/-/work_items/49: many consumers wrap `console` to hide expected noise
7
7
  * (retry attempts, aborted navigations, warnings from a mocked dependency).
8
8
  * This graduates the pattern from learn.tg's `vitest.setup.ts` (`NOISY_PATTERNS`)
9
9
  * so consumers can drop their local wrapper.
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * "Y todo lo que hagáis, hacedlo de corazón, como para el Señor y no para los hombres" (Colosenses 3:23)
5
5
  *
6
- * P5/U2 of `m/REQ/49`: many consumers wrap `console` to hide expected noise
6
+ * P5/U2 of https://gitlab.com/pasosdeJesus/m/-/work_items/49: many consumers wrap `console` to hide expected noise
7
7
  * (retry attempts, aborted navigations, warnings from a mocked dependency).
8
8
  * This graduates the pattern from learn.tg's `vitest.setup.ts` (`NOISY_PATTERNS`)
9
9
  * so consumers can drop their local wrapper.
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * "Y todo lo que hagáis, hacedlo de corazón, como para el Señor y no para los hombres" (Colosenses 3:23)
5
5
  *
6
- * U1 of `m/REQ/49`: the builder covers what real API routes use (measured in
6
+ * U1 of https://gitlab.com/pasosdeJesus/m/-/work_items/49: the builder covers what real API routes use (measured in
7
7
  * `sivel3/app/api` and learn.tg): `eb.or`/`eb.and`, `eb('col', 'in', cb)`,
8
8
  * `where(sql`…`)`, a subquery used as a table (`db.selectFrom(base.as('lb'))`),
9
9
  * `having`, `with`, `onConflict`/`doNothing`, `transaction().execute(cb)`,
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * "Y todo lo que hagáis, hacedlo de corazón, como para el Señor y no para los hombres" (Colosenses 3:23)
5
5
  *
6
- * U1 of `m/REQ/49`: the builder covers what real API routes use (measured in
6
+ * U1 of https://gitlab.com/pasosdeJesus/m/-/work_items/49: the builder covers what real API routes use (measured in
7
7
  * `sivel3/app/api` and learn.tg): `eb.or`/`eb.and`, `eb('col', 'in', cb)`,
8
8
  * `where(sql`…`)`, a subquery used as a table (`db.selectFrom(base.as('lb'))`),
9
9
  * `having`, `with`, `onConflict`/`doNothing`, `transaction().execute(cb)`,
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Mocks to test the wallet core in Node (`m/REQ/14` Fase 4).
2
+ * Mocks to test the wallet core in Node (https://gitlab.com/pasosdeJesus/m/-/work_items/14 Fase 4).
3
3
  *
4
4
  * The wallet core needs three browser-only surfaces to be testable outside a
5
5
  * browser: `localStorage` (destinations), `crypto.subtle` (Node 20+ already has it
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Vitest setup file for wallet tests (`m/REQ/14` Fase 4).
2
+ * Vitest setup file for wallet tests (https://gitlab.com/pasosdeJesus/m/-/work_items/14 Fase 4).
3
3
  *
4
4
  * Use it as a `setupFiles` entry together with the jsdom environment so the wallet
5
5
  * core tests can run outside a browser without reinventing the mocks:
@@ -9,9 +9,11 @@
9
9
  */
10
10
  import { createRequire } from 'node:module';
11
11
  import type { EngineManifest } from '../engine.js';
12
+ import { discoverEngines } from '../compose/discover.js';
13
+ export { discoverEngines };
12
14
  /**
13
- * Decide whether a dependency is an m plugin/engine: by the
14
- * @pasosdejesus/m-* naming convention or by declaring `mEngine: true`.
15
+ * A package is a motor **iff** it ships an `m-engine.json` (https://gitlab.com/pasosdeJesus/m/-/work_items/39). No naming
16
+ * convention nor `mEngine` flag is needed: the file is the marker.
15
17
  */
16
18
  export declare function isEnginePackage(name: string, nodeModulesDir: string): boolean;
17
19
  /**
@@ -25,10 +27,6 @@ export declare function resolveEngineEntry(name: string, projectRequire: ReturnT
25
27
  * package.json (each self-registers on import).
26
28
  */
27
29
  export declare function loadEnginePackages(pkgFile: string): Promise<void>;
28
- /**
29
- * Discover engine manifests by reading engine.json files under packages/.
30
- */
31
- export declare function discoverEngines(rootDir: string): Promise<EngineManifest[]>;
32
30
  /**
33
31
  * Locate the `packages/` directory by searching upward from `startDir`.
34
32
  * Mirrors the CLI's hierarchical .env / package.json lookup
@@ -1 +1 @@
1
- {"version":3,"file":"engines.d.ts","sourceRoot":"","sources":["../../src/util/engines.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAM3C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAElD;;;GAGG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAQ7E;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,EACZ,cAAc,EAAE,UAAU,CAAC,OAAO,aAAa,CAAC,EAChD,cAAc,EAAE,MAAM,GACrB,MAAM,GAAG,IAAI,CAiBf;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAsBvE;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAoBhF;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAS9E;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAIvF"}
1
+ {"version":3,"file":"engines.d.ts","sourceRoot":"","sources":["../../src/util/engines.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAK3C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAExD,OAAO,EAAE,eAAe,EAAE,CAAA;AAE1B;;;GAGG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAE7E;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,EACZ,cAAc,EAAE,UAAU,CAAC,OAAO,aAAa,CAAC,EAChD,cAAc,EAAE,MAAM,GACrB,MAAM,GAAG,IAAI,CAiBf;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAsBvE;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAS9E;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAIvF"}
@@ -11,21 +11,14 @@ import { createRequire } from 'node:module';
11
11
  import { dirname, join } from 'node:path';
12
12
  import { pathToFileURL } from 'node:url';
13
13
  import { existsSync, readFileSync } from 'node:fs';
14
- import { readdir, readFile } from 'node:fs/promises';
14
+ import { discoverEngines } from '../compose/discover.js';
15
+ export { discoverEngines };
15
16
  /**
16
- * Decide whether a dependency is an m plugin/engine: by the
17
- * @pasosdejesus/m-* naming convention or by declaring `mEngine: true`.
17
+ * A package is a motor **iff** it ships an `m-engine.json` (https://gitlab.com/pasosdeJesus/m/-/work_items/39). No naming
18
+ * convention nor `mEngine` flag is needed: the file is the marker.
18
19
  */
19
20
  export function isEnginePackage(name, nodeModulesDir) {
20
- if (name.startsWith('@pasosdejesus/m') && name !== '@pasosdejesus/m')
21
- return true;
22
- try {
23
- const pj = JSON.parse(readFileSync(join(nodeModulesDir, name, 'package.json'), 'utf-8'));
24
- return pj.mEngine === true;
25
- }
26
- catch {
27
- return false;
28
- }
21
+ return existsSync(join(nodeModulesDir, name, 'm-engine.json'));
29
22
  }
30
23
  /**
31
24
  * Resolve a plugin package's entry point relative to the consumer project.
@@ -81,32 +74,6 @@ export async function loadEnginePackages(pkgFile) {
81
74
  }
82
75
  }
83
76
  }
84
- /**
85
- * Discover engine manifests by reading engine.json files under packages/.
86
- */
87
- export async function discoverEngines(rootDir) {
88
- const packagesDir = join(rootDir, 'packages');
89
- let entries;
90
- try {
91
- entries = await readdir(packagesDir, { withFileTypes: true });
92
- }
93
- catch {
94
- return [];
95
- }
96
- const manifests = [];
97
- for (const entry of entries) {
98
- if (!entry.isDirectory())
99
- continue;
100
- try {
101
- const raw = await readFile(join(packagesDir, entry.name, 'engine.json'), 'utf-8');
102
- manifests.push(JSON.parse(raw));
103
- }
104
- catch {
105
- // no engine.json — skip
106
- }
107
- }
108
- return manifests;
109
- }
110
77
  /**
111
78
  * Locate the `packages/` directory by searching upward from `startDir`.
112
79
  * Mirrors the CLI's hierarchical .env / package.json lookup
@@ -1 +1 @@
1
- {"version":3,"file":"engines.js","sourceRoot":"","sources":["../../src/util/engines.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engines.js","sourceRoot":"","sources":["../../src/util/engines.ts"],"names":[],"mappings":"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"}