@wenathlan/saddle 1.8.17 → 2.0.2

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 (1005) hide show
  1. package/Dockerfile +1339 -0
  2. package/README.md +68 -22
  3. package/alternatives.ts +1218 -0
  4. package/biome.json +153 -0
  5. package/boards.json +1517 -0
  6. package/compute.ts +3144 -0
  7. package/cores.json +1801 -0
  8. package/dist/acquisition.d.ts +359 -0
  9. package/dist/acquisition.d.ts.map +1 -0
  10. package/dist/acquisition.js +629 -0
  11. package/dist/acquisition.js.map +1 -0
  12. package/dist/alternatives.d.ts +509 -0
  13. package/dist/alternatives.d.ts.map +1 -0
  14. package/dist/alternatives.js +951 -0
  15. package/dist/alternatives.js.map +1 -0
  16. package/dist/automation.d.ts +426 -0
  17. package/dist/automation.d.ts.map +1 -0
  18. package/dist/automation.js +561 -0
  19. package/dist/automation.js.map +1 -0
  20. package/dist/browser.d.ts +562 -0
  21. package/dist/browser.d.ts.map +1 -0
  22. package/dist/browser.js +1057 -0
  23. package/dist/browser.js.map +1 -0
  24. package/dist/capacitor.config.d.ts +13 -0
  25. package/dist/capacitor.config.d.ts.map +1 -0
  26. package/dist/capacitor.config.js +26 -0
  27. package/dist/capacitor.config.js.map +1 -0
  28. package/dist/cli.d.ts +17 -0
  29. package/dist/cli.d.ts.map +1 -0
  30. package/dist/cli.js +111 -0
  31. package/dist/cli.js.map +1 -0
  32. package/dist/communication.d.ts +192 -0
  33. package/dist/communication.d.ts.map +1 -0
  34. package/dist/communication.js +418 -0
  35. package/dist/communication.js.map +1 -0
  36. package/dist/compute.d.ts +1161 -0
  37. package/dist/compute.d.ts.map +1 -0
  38. package/dist/compute.js +2273 -0
  39. package/dist/compute.js.map +1 -0
  40. package/dist/distribution.d.ts +529 -0
  41. package/dist/distribution.d.ts.map +1 -0
  42. package/dist/distribution.js +811 -0
  43. package/dist/distribution.js.map +1 -0
  44. package/dist/execution.d.ts +530 -0
  45. package/dist/execution.d.ts.map +1 -0
  46. package/dist/execution.js +761 -0
  47. package/dist/execution.js.map +1 -0
  48. package/dist/format.d.ts +19 -0
  49. package/dist/format.d.ts.map +1 -0
  50. package/dist/format.js +60 -0
  51. package/dist/format.js.map +1 -0
  52. package/dist/foundation.d.ts +176 -0
  53. package/dist/foundation.d.ts.map +1 -0
  54. package/dist/foundation.js +309 -0
  55. package/dist/foundation.js.map +1 -0
  56. package/dist/index.d.ts +733 -122
  57. package/dist/index.d.ts.map +1 -1
  58. package/dist/index.js +1018 -122
  59. package/dist/index.js.map +1 -1
  60. package/dist/integration.d.ts +236 -0
  61. package/dist/integration.d.ts.map +1 -0
  62. package/dist/integration.js +236 -0
  63. package/dist/integration.js.map +1 -0
  64. package/dist/intelligence.d.ts +94 -0
  65. package/dist/intelligence.d.ts.map +1 -0
  66. package/dist/intelligence.js +145 -0
  67. package/dist/intelligence.js.map +1 -0
  68. package/dist/isolation.d.ts +129 -0
  69. package/dist/isolation.d.ts.map +1 -0
  70. package/dist/isolation.js +96 -0
  71. package/dist/isolation.js.map +1 -0
  72. package/dist/media.d.ts +344 -0
  73. package/dist/media.d.ts.map +1 -0
  74. package/dist/media.js +986 -0
  75. package/dist/media.js.map +1 -0
  76. package/dist/modes.d.ts +359 -0
  77. package/dist/modes.d.ts.map +1 -0
  78. package/dist/modes.js +134 -0
  79. package/dist/modes.js.map +1 -0
  80. package/dist/{library/public.d.ts → operations.d.ts} +15 -1
  81. package/dist/operations.d.ts.map +1 -0
  82. package/dist/{library/public.js → operations.js} +18 -7
  83. package/dist/operations.js.map +1 -0
  84. package/dist/orchestrator.d.ts +1339 -0
  85. package/dist/orchestrator.d.ts.map +1 -0
  86. package/dist/orchestrator.js +4308 -0
  87. package/dist/orchestrator.js.map +1 -0
  88. package/dist/performance.d.ts +416 -0
  89. package/dist/performance.d.ts.map +1 -0
  90. package/dist/performance.js +827 -0
  91. package/dist/performance.js.map +1 -0
  92. package/dist/quantum.d.ts +810 -0
  93. package/dist/quantum.d.ts.map +1 -0
  94. package/dist/quantum.js +2073 -0
  95. package/dist/quantum.js.map +1 -0
  96. package/dist/render.d.ts +381 -0
  97. package/dist/render.d.ts.map +1 -0
  98. package/dist/render.js +1073 -0
  99. package/dist/render.js.map +1 -0
  100. package/dist/scheduler.d.ts +596 -0
  101. package/dist/scheduler.d.ts.map +1 -0
  102. package/dist/scheduler.js +1259 -0
  103. package/dist/scheduler.js.map +1 -0
  104. package/dist/security.d.ts +501 -0
  105. package/dist/security.d.ts.map +1 -0
  106. package/dist/security.js +1170 -0
  107. package/dist/security.js.map +1 -0
  108. package/dist/server.d.ts +21 -0
  109. package/dist/server.d.ts.map +1 -0
  110. package/dist/{server/node.js → server.js} +16 -2
  111. package/dist/server.js.map +1 -0
  112. package/dist/tiers.d.ts +1002 -0
  113. package/dist/tiers.d.ts.map +1 -0
  114. package/dist/tiers.js +2165 -0
  115. package/dist/tiers.js.map +1 -0
  116. package/dist/virtual.d.ts +641 -0
  117. package/dist/virtual.d.ts.map +1 -0
  118. package/dist/virtual.js +1285 -0
  119. package/dist/virtual.js.map +1 -0
  120. package/dist/virtualcpu.d.ts +316 -0
  121. package/dist/virtualcpu.d.ts.map +1 -0
  122. package/dist/virtualcpu.js +1180 -0
  123. package/dist/virtualcpu.js.map +1 -0
  124. package/dist/virtualgpu.d.ts +345 -0
  125. package/dist/virtualgpu.d.ts.map +1 -0
  126. package/dist/virtualgpu.js +1000 -0
  127. package/dist/virtualgpu.js.map +1 -0
  128. package/dist/virtualization.d.ts +607 -0
  129. package/dist/virtualization.d.ts.map +1 -0
  130. package/dist/virtualization.js +1187 -0
  131. package/dist/virtualization.js.map +1 -0
  132. package/dist/virtualmemory.d.ts +818 -0
  133. package/dist/virtualmemory.d.ts.map +1 -0
  134. package/dist/virtualmemory.js +1796 -0
  135. package/dist/virtualmemory.js.map +1 -0
  136. package/dist/webscrape.d.ts +720 -0
  137. package/dist/webscrape.d.ts.map +1 -0
  138. package/dist/webscrape.js +2697 -0
  139. package/dist/webscrape.js.map +1 -0
  140. package/docker.config +769 -0
  141. package/docs/CONVERSA.txt +1523 -0
  142. package/docs/alternatives.md +499 -0
  143. package/docs/architecture-1.8.19.md +76 -0
  144. package/docs/architecture-1.8.19.mmd +33 -0
  145. package/docs/architecture-1.8.19.png +0 -0
  146. package/docs/architecture.md +355 -0
  147. package/docs/artifactavailability.md +6 -0
  148. package/docs/brancharchive-2026-08-18.md +18 -0
  149. package/docs/browser.md +7 -0
  150. package/docs/consolidation.md +70 -0
  151. package/docs/e2ugh-engine.md +528 -0
  152. package/{dist/examples/localjob.js → docs/example-localjob.ts} +3 -3
  153. package/{dist/examples/publicapi.js → docs/example-publicapi.ts} +2 -2
  154. package/docs/hardware.md +342 -0
  155. package/docs/optimization.md +126 -0
  156. package/docs/performance.md +499 -0
  157. package/docs/planning.1.8.18.md +94 -0
  158. package/docs/planning.1.8.19.md +49 -0
  159. package/docs/releasenotes-1.8.17.md +6 -0
  160. package/docs/releasenotes-1.8.18.md +32 -0
  161. package/docs/releasenotes-1.8.19.md +35 -0
  162. package/docs/research-1.8.18-isolation.md +43 -0
  163. package/docs/research-1.8.19-virtual-browser.md +27 -0
  164. package/docs/saddle.archive.1.8.17.tar.gz.gpg +0 -0
  165. package/docs/security.md +454 -0
  166. package/docs/todo-1.8.16.md +56 -1
  167. package/docs/todo-1.8.18.md +164 -0
  168. package/docs/todo-1.8.19.md +241 -0
  169. package/docs/viability.md +777 -0
  170. package/docs/virtualization.md +335 -0
  171. package/docs/web-duplicatecleanup.md +9 -0
  172. package/docs/web-ideas.md +106 -0
  173. package/docs/workflowimprovements-2026-08-19.md +70 -0
  174. package/gpumonitor.cpp +1543 -0
  175. package/gpus.json +2408 -0
  176. package/index.ts +1478 -0
  177. package/media.ts +1337 -0
  178. package/mttg.config +1549 -0
  179. package/orchestrator.ts +5462 -0
  180. package/package.json +304 -55
  181. package/passage.config +1331 -0
  182. package/performance.ts +1049 -0
  183. package/processors.json +2217 -0
  184. package/qemu.config +1062 -0
  185. package/qemubridge.py +1340 -0
  186. package/quantum.ts +2393 -0
  187. package/render.ts +1325 -0
  188. package/scheduler.ts +1600 -0
  189. package/security.ts +1449 -0
  190. package/tiers.ts +2871 -0
  191. package/tsconfig.json +29 -0
  192. package/virtualcpu.ts +1273 -0
  193. package/virtualgpu.ts +1181 -0
  194. package/virtualhardware.c +1011 -0
  195. package/virtualhardware.json +739 -0
  196. package/virtualization.ts +1628 -0
  197. package/virtualizationcore.cpp +4635 -0
  198. package/virtualmemory.ts +2303 -0
  199. package/vm.config.json +1910 -0
  200. package/{extension → web/extension}/manifest.json +1 -1
  201. package/web/readme.md +382 -0
  202. package/web/tsconfig.json +25 -0
  203. package/dist/adapters/forge.d.ts +0 -17
  204. package/dist/adapters/forge.d.ts.map +0 -1
  205. package/dist/adapters/forge.js +0 -19
  206. package/dist/adapters/forge.js.map +0 -1
  207. package/dist/adapters/forgejo.d.ts +0 -49
  208. package/dist/adapters/forgejo.d.ts.map +0 -1
  209. package/dist/adapters/forgejo.js +0 -8
  210. package/dist/adapters/forgejo.js.map +0 -1
  211. package/dist/adapters/github.d.ts +0 -12
  212. package/dist/adapters/github.d.ts.map +0 -1
  213. package/dist/adapters/github.js +0 -20
  214. package/dist/adapters/github.js.map +0 -1
  215. package/dist/adapters/gitlab.d.ts +0 -17
  216. package/dist/adapters/gitlab.d.ts.map +0 -1
  217. package/dist/adapters/gitlab.js +0 -10
  218. package/dist/adapters/gitlab.js.map +0 -1
  219. package/dist/adapters/huggingface.d.ts +0 -17
  220. package/dist/adapters/huggingface.d.ts.map +0 -1
  221. package/dist/adapters/huggingface.js +0 -6
  222. package/dist/adapters/huggingface.js.map +0 -1
  223. package/dist/adapters/socket.d.ts +0 -11
  224. package/dist/adapters/socket.d.ts.map +0 -1
  225. package/dist/adapters/socket.js +0 -17
  226. package/dist/adapters/socket.js.map +0 -1
  227. package/dist/adapters/transport.d.ts +0 -7
  228. package/dist/adapters/transport.d.ts.map +0 -1
  229. package/dist/adapters/transport.js +0 -36
  230. package/dist/adapters/transport.js.map +0 -1
  231. package/dist/ai/chunk.d.ts +0 -2
  232. package/dist/ai/chunk.d.ts.map +0 -1
  233. package/dist/ai/chunk.js +0 -36
  234. package/dist/ai/chunk.js.map +0 -1
  235. package/dist/ai/llmstxt.d.ts +0 -6
  236. package/dist/ai/llmstxt.d.ts.map +0 -1
  237. package/dist/ai/llmstxt.js +0 -12
  238. package/dist/ai/llmstxt.js.map +0 -1
  239. package/dist/ai/provenance.d.ts +0 -22
  240. package/dist/ai/provenance.d.ts.map +0 -1
  241. package/dist/ai/provenance.js +0 -25
  242. package/dist/ai/provenance.js.map +0 -1
  243. package/dist/ai/rag.d.ts +0 -26
  244. package/dist/ai/rag.d.ts.map +0 -1
  245. package/dist/ai/rag.js +0 -22
  246. package/dist/ai/rag.js.map +0 -1
  247. package/dist/ai/tokens.d.ts +0 -15
  248. package/dist/ai/tokens.d.ts.map +0 -1
  249. package/dist/ai/tokens.js +0 -9
  250. package/dist/ai/tokens.js.map +0 -1
  251. package/dist/api/auth.d.ts +0 -16
  252. package/dist/api/auth.d.ts.map +0 -1
  253. package/dist/api/auth.js +0 -19
  254. package/dist/api/auth.js.map +0 -1
  255. package/dist/api/contracts.d.ts +0 -28
  256. package/dist/api/contracts.d.ts.map +0 -1
  257. package/dist/api/contracts.js +0 -14
  258. package/dist/api/contracts.js.map +0 -1
  259. package/dist/api/control.d.ts +0 -10
  260. package/dist/api/control.d.ts.map +0 -1
  261. package/dist/api/control.js +0 -35
  262. package/dist/api/control.js.map +0 -1
  263. package/dist/api/http.d.ts +0 -7
  264. package/dist/api/http.d.ts.map +0 -1
  265. package/dist/api/http.js +0 -12
  266. package/dist/api/http.js.map +0 -1
  267. package/dist/api/rate.d.ts +0 -28
  268. package/dist/api/rate.d.ts.map +0 -1
  269. package/dist/api/rate.js +0 -36
  270. package/dist/api/rate.js.map +0 -1
  271. package/dist/api/security.d.ts +0 -12
  272. package/dist/api/security.d.ts.map +0 -1
  273. package/dist/api/security.js +0 -56
  274. package/dist/api/security.js.map +0 -1
  275. package/dist/api/service.d.ts +0 -5
  276. package/dist/api/service.d.ts.map +0 -1
  277. package/dist/api/service.js +0 -70
  278. package/dist/api/service.js.map +0 -1
  279. package/dist/apps/registry.d.ts +0 -33
  280. package/dist/apps/registry.d.ts.map +0 -1
  281. package/dist/apps/registry.js +0 -24
  282. package/dist/apps/registry.js.map +0 -1
  283. package/dist/binary/archive.d.ts +0 -27
  284. package/dist/binary/archive.d.ts.map +0 -1
  285. package/dist/binary/archive.js +0 -46
  286. package/dist/binary/archive.js.map +0 -1
  287. package/dist/binary/build.d.ts +0 -29
  288. package/dist/binary/build.d.ts.map +0 -1
  289. package/dist/binary/build.js +0 -17
  290. package/dist/binary/build.js.map +0 -1
  291. package/dist/binary/transform.d.ts +0 -70
  292. package/dist/binary/transform.d.ts.map +0 -1
  293. package/dist/binary/transform.js +0 -105
  294. package/dist/binary/transform.js.map +0 -1
  295. package/dist/bot/adapter.d.ts +0 -5
  296. package/dist/bot/adapter.d.ts.map +0 -1
  297. package/dist/bot/adapter.js +0 -11
  298. package/dist/bot/adapter.js.map +0 -1
  299. package/dist/bot/bot.d.ts +0 -28
  300. package/dist/bot/bot.d.ts.map +0 -1
  301. package/dist/bot/bot.js +0 -52
  302. package/dist/bot/bot.js.map +0 -1
  303. package/dist/bot/commands.d.ts +0 -8
  304. package/dist/bot/commands.d.ts.map +0 -1
  305. package/dist/bot/commands.js +0 -19
  306. package/dist/bot/commands.js.map +0 -1
  307. package/dist/bot/permissions.d.ts +0 -13
  308. package/dist/bot/permissions.d.ts.map +0 -1
  309. package/dist/bot/permissions.js +0 -16
  310. package/dist/bot/permissions.js.map +0 -1
  311. package/dist/browser/actions.d.ts +0 -33
  312. package/dist/browser/actions.d.ts.map +0 -1
  313. package/dist/browser/actions.js +0 -44
  314. package/dist/browser/actions.js.map +0 -1
  315. package/dist/browser/agent.d.ts +0 -21
  316. package/dist/browser/agent.d.ts.map +0 -1
  317. package/dist/browser/agent.js +0 -13
  318. package/dist/browser/agent.js.map +0 -1
  319. package/dist/browser/context.d.ts +0 -43
  320. package/dist/browser/context.d.ts.map +0 -1
  321. package/dist/browser/context.js +0 -54
  322. package/dist/browser/context.js.map +0 -1
  323. package/dist/browser/fingerprint.d.ts +0 -4
  324. package/dist/browser/fingerprint.d.ts.map +0 -1
  325. package/dist/browser/fingerprint.js +0 -12
  326. package/dist/browser/fingerprint.js.map +0 -1
  327. package/dist/browser/index.d.ts +0 -11
  328. package/dist/browser/index.d.ts.map +0 -1
  329. package/dist/browser/index.js +0 -11
  330. package/dist/browser/index.js.map +0 -1
  331. package/dist/browser/playwright.d.ts +0 -11
  332. package/dist/browser/playwright.d.ts.map +0 -1
  333. package/dist/browser/playwright.js +0 -24
  334. package/dist/browser/playwright.js.map +0 -1
  335. package/dist/browser/recorder.d.ts +0 -21
  336. package/dist/browser/recorder.d.ts.map +0 -1
  337. package/dist/browser/recorder.js +0 -58
  338. package/dist/browser/recorder.js.map +0 -1
  339. package/dist/browser/session.d.ts +0 -14
  340. package/dist/browser/session.d.ts.map +0 -1
  341. package/dist/browser/session.js +0 -21
  342. package/dist/browser/session.js.map +0 -1
  343. package/dist/browser/snapshot.d.ts +0 -69
  344. package/dist/browser/snapshot.d.ts.map +0 -1
  345. package/dist/browser/snapshot.js +0 -133
  346. package/dist/browser/snapshot.js.map +0 -1
  347. package/dist/captcha/contract.d.ts +0 -35
  348. package/dist/captcha/contract.d.ts.map +0 -1
  349. package/dist/captcha/contract.js +0 -17
  350. package/dist/captcha/contract.js.map +0 -1
  351. package/dist/captcha/evidence.d.ts +0 -10
  352. package/dist/captcha/evidence.d.ts.map +0 -1
  353. package/dist/captcha/evidence.js +0 -9
  354. package/dist/captcha/evidence.js.map +0 -1
  355. package/dist/captcha/guard.d.ts +0 -23
  356. package/dist/captcha/guard.d.ts.map +0 -1
  357. package/dist/captcha/guard.js +0 -12
  358. package/dist/captcha/guard.js.map +0 -1
  359. package/dist/cli/main.d.ts +0 -4
  360. package/dist/cli/main.d.ts.map +0 -1
  361. package/dist/cli/main.js +0 -46
  362. package/dist/cli/main.js.map +0 -1
  363. package/dist/core/errors.d.ts +0 -84
  364. package/dist/core/errors.d.ts.map +0 -1
  365. package/dist/core/errors.js +0 -54
  366. package/dist/core/errors.js.map +0 -1
  367. package/dist/core/events.d.ts +0 -9
  368. package/dist/core/events.d.ts.map +0 -1
  369. package/dist/core/events.js +0 -21
  370. package/dist/core/events.js.map +0 -1
  371. package/dist/core/hash.d.ts +0 -10
  372. package/dist/core/hash.d.ts.map +0 -1
  373. package/dist/core/hash.js +0 -82
  374. package/dist/core/hash.js.map +0 -1
  375. package/dist/core/ids.d.ts +0 -10
  376. package/dist/core/ids.d.ts.map +0 -1
  377. package/dist/core/ids.js +0 -15
  378. package/dist/core/ids.js.map +0 -1
  379. package/dist/delivery/manifest.d.ts +0 -35
  380. package/dist/delivery/manifest.d.ts.map +0 -1
  381. package/dist/delivery/manifest.js +0 -68
  382. package/dist/delivery/manifest.js.map +0 -1
  383. package/dist/deploy/index.d.ts +0 -6
  384. package/dist/deploy/index.d.ts.map +0 -1
  385. package/dist/deploy/index.js +0 -6
  386. package/dist/deploy/index.js.map +0 -1
  387. package/dist/dispatch/resumable.d.ts +0 -102
  388. package/dist/dispatch/resumable.d.ts.map +0 -1
  389. package/dist/dispatch/resumable.js +0 -64
  390. package/dist/dispatch/resumable.js.map +0 -1
  391. package/dist/dispatch/workflow.d.ts +0 -6
  392. package/dist/dispatch/workflow.d.ts.map +0 -1
  393. package/dist/dispatch/workflow.js +0 -37
  394. package/dist/dispatch/workflow.js.map +0 -1
  395. package/dist/domain/artifacts.d.ts +0 -12
  396. package/dist/domain/artifacts.d.ts.map +0 -1
  397. package/dist/domain/artifacts.js +0 -14
  398. package/dist/domain/artifacts.js.map +0 -1
  399. package/dist/domain/jobs.d.ts +0 -12
  400. package/dist/domain/jobs.d.ts.map +0 -1
  401. package/dist/domain/jobs.js +0 -20
  402. package/dist/domain/jobs.js.map +0 -1
  403. package/dist/domain/providers.d.ts +0 -10
  404. package/dist/domain/providers.d.ts.map +0 -1
  405. package/dist/domain/providers.js +0 -8
  406. package/dist/domain/providers.js.map +0 -1
  407. package/dist/domain/runtime.d.ts +0 -14
  408. package/dist/domain/runtime.d.ts.map +0 -1
  409. package/dist/domain/runtime.js +0 -10
  410. package/dist/domain/runtime.js.map +0 -1
  411. package/dist/domain/sessions.d.ts +0 -12
  412. package/dist/domain/sessions.d.ts.map +0 -1
  413. package/dist/domain/sessions.js +0 -57
  414. package/dist/domain/sessions.js.map +0 -1
  415. package/dist/examples/localjob.d.ts +0 -2
  416. package/dist/examples/localjob.d.ts.map +0 -1
  417. package/dist/examples/localjob.js.map +0 -1
  418. package/dist/examples/publicapi.d.ts +0 -2
  419. package/dist/examples/publicapi.d.ts.map +0 -1
  420. package/dist/examples/publicapi.js.map +0 -1
  421. package/dist/extension/build.d.ts +0 -9
  422. package/dist/extension/build.d.ts.map +0 -1
  423. package/dist/extension/build.js +0 -85
  424. package/dist/extension/build.js.map +0 -1
  425. package/dist/extension/content.d.ts +0 -6
  426. package/dist/extension/content.d.ts.map +0 -1
  427. package/dist/extension/content.js +0 -135
  428. package/dist/extension/content.js.map +0 -1
  429. package/dist/extension/index.d.ts +0 -7
  430. package/dist/extension/index.d.ts.map +0 -1
  431. package/dist/extension/index.js +0 -7
  432. package/dist/extension/index.js.map +0 -1
  433. package/dist/extension/pagebridge.d.ts +0 -6
  434. package/dist/extension/pagebridge.d.ts.map +0 -1
  435. package/dist/extension/pagebridge.js +0 -42
  436. package/dist/extension/pagebridge.js.map +0 -1
  437. package/dist/extension/permissions.d.ts +0 -26
  438. package/dist/extension/permissions.d.ts.map +0 -1
  439. package/dist/extension/permissions.js +0 -28
  440. package/dist/extension/permissions.js.map +0 -1
  441. package/dist/extension/popup.d.ts +0 -5
  442. package/dist/extension/popup.d.ts.map +0 -1
  443. package/dist/extension/popup.js +0 -26
  444. package/dist/extension/popup.js.map +0 -1
  445. package/dist/extension/protocol.d.ts +0 -58
  446. package/dist/extension/protocol.d.ts.map +0 -1
  447. package/dist/extension/protocol.js +0 -101
  448. package/dist/extension/protocol.js.map +0 -1
  449. package/dist/extension/serviceworker.d.ts +0 -25
  450. package/dist/extension/serviceworker.d.ts.map +0 -1
  451. package/dist/extension/serviceworker.js +0 -102
  452. package/dist/extension/serviceworker.js.map +0 -1
  453. package/dist/extension/worker.d.ts +0 -28
  454. package/dist/extension/worker.d.ts.map +0 -1
  455. package/dist/extension/worker.js +0 -22
  456. package/dist/extension/worker.js.map +0 -1
  457. package/dist/format/check.d.ts +0 -8
  458. package/dist/format/check.d.ts.map +0 -1
  459. package/dist/format/check.js +0 -38
  460. package/dist/format/check.js.map +0 -1
  461. package/dist/library/public.d.ts.map +0 -1
  462. package/dist/library/public.js.map +0 -1
  463. package/dist/mcp/browser.d.ts +0 -9
  464. package/dist/mcp/browser.d.ts.map +0 -1
  465. package/dist/mcp/browser.js +0 -13
  466. package/dist/mcp/browser.js.map +0 -1
  467. package/dist/mcp/server.d.ts +0 -35
  468. package/dist/mcp/server.d.ts.map +0 -1
  469. package/dist/mcp/server.js +0 -40
  470. package/dist/mcp/server.js.map +0 -1
  471. package/dist/mcp/transport.d.ts +0 -7
  472. package/dist/mcp/transport.d.ts.map +0 -1
  473. package/dist/mcp/transport.js +0 -17
  474. package/dist/mcp/transport.js.map +0 -1
  475. package/dist/memory/bridge.d.ts +0 -14
  476. package/dist/memory/bridge.d.ts.map +0 -1
  477. package/dist/memory/bridge.js +0 -16
  478. package/dist/memory/bridge.js.map +0 -1
  479. package/dist/memory/engine.d.ts +0 -38
  480. package/dist/memory/engine.d.ts.map +0 -1
  481. package/dist/memory/engine.js +0 -109
  482. package/dist/memory/engine.js.map +0 -1
  483. package/dist/memory/modes.d.ts +0 -43
  484. package/dist/memory/modes.d.ts.map +0 -1
  485. package/dist/memory/modes.js +0 -66
  486. package/dist/memory/modes.js.map +0 -1
  487. package/dist/memory/objects.d.ts +0 -21
  488. package/dist/memory/objects.d.ts.map +0 -1
  489. package/dist/memory/objects.js +0 -20
  490. package/dist/memory/objects.js.map +0 -1
  491. package/dist/memory/planner.d.ts +0 -66
  492. package/dist/memory/planner.d.ts.map +0 -1
  493. package/dist/memory/planner.js +0 -108
  494. package/dist/memory/planner.js.map +0 -1
  495. package/dist/memory/targets.d.ts +0 -78
  496. package/dist/memory/targets.d.ts.map +0 -1
  497. package/dist/memory/targets.js +0 -29
  498. package/dist/memory/targets.js.map +0 -1
  499. package/dist/memory/transforms.d.ts +0 -19
  500. package/dist/memory/transforms.d.ts.map +0 -1
  501. package/dist/memory/transforms.js +0 -14
  502. package/dist/memory/transforms.js.map +0 -1
  503. package/dist/modes/matrix.d.ts +0 -23
  504. package/dist/modes/matrix.d.ts.map +0 -1
  505. package/dist/modes/matrix.js +0 -18
  506. package/dist/modes/matrix.js.map +0 -1
  507. package/dist/modes/modes.d.ts +0 -33
  508. package/dist/modes/modes.d.ts.map +0 -1
  509. package/dist/modes/modes.js +0 -15
  510. package/dist/modes/modes.js.map +0 -1
  511. package/dist/modes/resolve.d.ts +0 -96
  512. package/dist/modes/resolve.d.ts.map +0 -1
  513. package/dist/modes/resolve.js +0 -48
  514. package/dist/modes/resolve.js.map +0 -1
  515. package/dist/observability/metrics.d.ts +0 -14
  516. package/dist/observability/metrics.d.ts.map +0 -1
  517. package/dist/observability/metrics.js +0 -18
  518. package/dist/observability/metrics.js.map +0 -1
  519. package/dist/packager/manifest.d.ts +0 -66
  520. package/dist/packager/manifest.d.ts.map +0 -1
  521. package/dist/packager/manifest.js +0 -94
  522. package/dist/packager/manifest.js.map +0 -1
  523. package/dist/packager/publish.d.ts +0 -51
  524. package/dist/packager/publish.d.ts.map +0 -1
  525. package/dist/packager/publish.js +0 -18
  526. package/dist/packager/publish.js.map +0 -1
  527. package/dist/packager/targetcli.d.ts +0 -7
  528. package/dist/packager/targetcli.d.ts.map +0 -1
  529. package/dist/packager/targetcli.js +0 -22
  530. package/dist/packager/targetcli.js.map +0 -1
  531. package/dist/persistence/adapter.d.ts +0 -5
  532. package/dist/persistence/adapter.d.ts.map +0 -1
  533. package/dist/persistence/adapter.js +0 -11
  534. package/dist/persistence/adapter.js.map +0 -1
  535. package/dist/persistence/drizzle.d.ts +0 -2
  536. package/dist/persistence/drizzle.d.ts.map +0 -1
  537. package/dist/persistence/drizzle.js +0 -12
  538. package/dist/persistence/drizzle.js.map +0 -1
  539. package/dist/persistence/memory.d.ts +0 -2
  540. package/dist/persistence/memory.d.ts.map +0 -1
  541. package/dist/persistence/memory.js +0 -27
  542. package/dist/persistence/memory.js.map +0 -1
  543. package/dist/persistence/migrations.d.ts +0 -19
  544. package/dist/persistence/migrations.d.ts.map +0 -1
  545. package/dist/persistence/migrations.js +0 -13
  546. package/dist/persistence/migrations.js.map +0 -1
  547. package/dist/persistence/prisma.d.ts +0 -2
  548. package/dist/persistence/prisma.d.ts.map +0 -1
  549. package/dist/persistence/prisma.js +0 -25
  550. package/dist/persistence/prisma.js.map +0 -1
  551. package/dist/persistence/schema.d.ts +0 -63
  552. package/dist/persistence/schema.d.ts.map +0 -1
  553. package/dist/persistence/schema.js +0 -28
  554. package/dist/persistence/schema.js.map +0 -1
  555. package/dist/persistence/sql.d.ts +0 -3
  556. package/dist/persistence/sql.d.ts.map +0 -1
  557. package/dist/persistence/sql.js +0 -37
  558. package/dist/persistence/sql.js.map +0 -1
  559. package/dist/protocol/blocks.d.ts +0 -10
  560. package/dist/protocol/blocks.d.ts.map +0 -1
  561. package/dist/protocol/blocks.js +0 -26
  562. package/dist/protocol/blocks.js.map +0 -1
  563. package/dist/protocol/json.d.ts +0 -6
  564. package/dist/protocol/json.d.ts.map +0 -1
  565. package/dist/protocol/json.js +0 -6
  566. package/dist/protocol/json.js.map +0 -1
  567. package/dist/protocol/ndjson.d.ts +0 -3
  568. package/dist/protocol/ndjson.d.ts.map +0 -1
  569. package/dist/protocol/ndjson.js +0 -20
  570. package/dist/protocol/ndjson.js.map +0 -1
  571. package/dist/protocol/sse.d.ts +0 -7
  572. package/dist/protocol/sse.d.ts.map +0 -1
  573. package/dist/protocol/sse.js +0 -25
  574. package/dist/protocol/sse.js.map +0 -1
  575. package/dist/proxy/pool.d.ts +0 -9
  576. package/dist/proxy/pool.d.ts.map +0 -1
  577. package/dist/proxy/pool.js +0 -27
  578. package/dist/proxy/pool.js.map +0 -1
  579. package/dist/queue/idempotency.d.ts +0 -10
  580. package/dist/queue/idempotency.d.ts.map +0 -1
  581. package/dist/queue/idempotency.js +0 -13
  582. package/dist/queue/idempotency.js.map +0 -1
  583. package/dist/queue/persistent.d.ts +0 -14
  584. package/dist/queue/persistent.d.ts.map +0 -1
  585. package/dist/queue/persistent.js +0 -66
  586. package/dist/queue/persistent.js.map +0 -1
  587. package/dist/queue/queue.d.ts +0 -7
  588. package/dist/queue/queue.d.ts.map +0 -1
  589. package/dist/queue/queue.js +0 -55
  590. package/dist/queue/queue.js.map +0 -1
  591. package/dist/queue/saga.d.ts +0 -5
  592. package/dist/queue/saga.d.ts.map +0 -1
  593. package/dist/queue/saga.js +0 -20
  594. package/dist/queue/saga.js.map +0 -1
  595. package/dist/release/assets.d.ts +0 -144
  596. package/dist/release/assets.d.ts.map +0 -1
  597. package/dist/release/assets.js +0 -157
  598. package/dist/release/assets.js.map +0 -1
  599. package/dist/release/evidence.d.ts +0 -92
  600. package/dist/release/evidence.d.ts.map +0 -1
  601. package/dist/release/evidence.js +0 -148
  602. package/dist/release/evidence.js.map +0 -1
  603. package/dist/release/verify.d.ts +0 -12
  604. package/dist/release/verify.d.ts.map +0 -1
  605. package/dist/release/verify.js +0 -112
  606. package/dist/release/verify.js.map +0 -1
  607. package/dist/runners/chain.d.ts +0 -125
  608. package/dist/runners/chain.d.ts.map +0 -1
  609. package/dist/runners/chain.js +0 -95
  610. package/dist/runners/chain.js.map +0 -1
  611. package/dist/runners/health.d.ts +0 -36
  612. package/dist/runners/health.d.ts.map +0 -1
  613. package/dist/runners/health.js +0 -26
  614. package/dist/runners/health.js.map +0 -1
  615. package/dist/runners/heartbeat.d.ts +0 -23
  616. package/dist/runners/heartbeat.d.ts.map +0 -1
  617. package/dist/runners/heartbeat.js +0 -29
  618. package/dist/runners/heartbeat.js.map +0 -1
  619. package/dist/runners/inprocess.d.ts +0 -17
  620. package/dist/runners/inprocess.d.ts.map +0 -1
  621. package/dist/runners/inprocess.js +0 -20
  622. package/dist/runners/inprocess.js.map +0 -1
  623. package/dist/runners/scheduler.d.ts +0 -5
  624. package/dist/runners/scheduler.d.ts.map +0 -1
  625. package/dist/runners/scheduler.js +0 -19
  626. package/dist/runners/scheduler.js.map +0 -1
  627. package/dist/runtime/abort.d.ts +0 -8
  628. package/dist/runtime/abort.d.ts.map +0 -1
  629. package/dist/runtime/abort.js +0 -13
  630. package/dist/runtime/abort.js.map +0 -1
  631. package/dist/runtime/compatibility.d.ts +0 -37
  632. package/dist/runtime/compatibility.d.ts.map +0 -1
  633. package/dist/runtime/compatibility.js +0 -10
  634. package/dist/runtime/compatibility.js.map +0 -1
  635. package/dist/runtime/detect.d.ts +0 -13
  636. package/dist/runtime/detect.d.ts.map +0 -1
  637. package/dist/runtime/detect.js +0 -18
  638. package/dist/runtime/detect.js.map +0 -1
  639. package/dist/runtime/engine.d.ts +0 -20
  640. package/dist/runtime/engine.d.ts.map +0 -1
  641. package/dist/runtime/engine.js +0 -61
  642. package/dist/runtime/engine.js.map +0 -1
  643. package/dist/runtime/retry.d.ts +0 -19
  644. package/dist/runtime/retry.d.ts.map +0 -1
  645. package/dist/runtime/retry.js +0 -54
  646. package/dist/runtime/retry.js.map +0 -1
  647. package/dist/runtime/worker.d.ts +0 -10
  648. package/dist/runtime/worker.d.ts.map +0 -1
  649. package/dist/runtime/worker.js +0 -25
  650. package/dist/runtime/worker.js.map +0 -1
  651. package/dist/scrape/cache.d.ts +0 -45
  652. package/dist/scrape/cache.d.ts.map +0 -1
  653. package/dist/scrape/cache.js +0 -45
  654. package/dist/scrape/cache.js.map +0 -1
  655. package/dist/scrape/crawl.d.ts +0 -47
  656. package/dist/scrape/crawl.d.ts.map +0 -1
  657. package/dist/scrape/crawl.js +0 -114
  658. package/dist/scrape/crawl.js.map +0 -1
  659. package/dist/scrape/extract.d.ts +0 -63
  660. package/dist/scrape/extract.d.ts.map +0 -1
  661. package/dist/scrape/extract.js +0 -47
  662. package/dist/scrape/extract.js.map +0 -1
  663. package/dist/scrape/normalize.d.ts +0 -52
  664. package/dist/scrape/normalize.d.ts.map +0 -1
  665. package/dist/scrape/normalize.js +0 -102
  666. package/dist/scrape/normalize.js.map +0 -1
  667. package/dist/scrape/robots.d.ts +0 -37
  668. package/dist/scrape/robots.d.ts.map +0 -1
  669. package/dist/scrape/robots.js +0 -71
  670. package/dist/scrape/robots.js.map +0 -1
  671. package/dist/scrape/schema.d.ts +0 -23
  672. package/dist/scrape/schema.d.ts.map +0 -1
  673. package/dist/scrape/schema.js +0 -92
  674. package/dist/scrape/schema.js.map +0 -1
  675. package/dist/scrape/scraper.d.ts +0 -6
  676. package/dist/scrape/scraper.d.ts.map +0 -1
  677. package/dist/scrape/scraper.js +0 -46
  678. package/dist/scrape/scraper.js.map +0 -1
  679. package/dist/scrape/semantic.d.ts +0 -25
  680. package/dist/scrape/semantic.d.ts.map +0 -1
  681. package/dist/scrape/semantic.js +0 -27
  682. package/dist/scrape/semantic.js.map +0 -1
  683. package/dist/server/node.d.ts +0 -7
  684. package/dist/server/node.d.ts.map +0 -1
  685. package/dist/server/node.js.map +0 -1
  686. package/dist/sessions/file.d.ts +0 -25
  687. package/dist/sessions/file.d.ts.map +0 -1
  688. package/dist/sessions/file.js +0 -13
  689. package/dist/sessions/file.js.map +0 -1
  690. package/dist/sessions/replay.d.ts +0 -9
  691. package/dist/sessions/replay.d.ts.map +0 -1
  692. package/dist/sessions/replay.js +0 -70
  693. package/dist/sessions/replay.js.map +0 -1
  694. package/dist/sessions/store.d.ts +0 -25
  695. package/dist/sessions/store.d.ts.map +0 -1
  696. package/dist/sessions/store.js +0 -13
  697. package/dist/sessions/store.js.map +0 -1
  698. package/dist/storage/adapter.d.ts +0 -5
  699. package/dist/storage/adapter.d.ts.map +0 -1
  700. package/dist/storage/adapter.js +0 -11
  701. package/dist/storage/adapter.js.map +0 -1
  702. package/dist/storage/cache.d.ts +0 -23
  703. package/dist/storage/cache.d.ts.map +0 -1
  704. package/dist/storage/cache.js +0 -79
  705. package/dist/storage/cache.js.map +0 -1
  706. package/dist/storage/checksum.d.ts +0 -3
  707. package/dist/storage/checksum.d.ts.map +0 -1
  708. package/dist/storage/checksum.js +0 -19
  709. package/dist/storage/checksum.js.map +0 -1
  710. package/dist/storage/chunked.d.ts +0 -21
  711. package/dist/storage/chunked.d.ts.map +0 -1
  712. package/dist/storage/chunked.js +0 -67
  713. package/dist/storage/chunked.js.map +0 -1
  714. package/dist/storage/content.d.ts +0 -24
  715. package/dist/storage/content.d.ts.map +0 -1
  716. package/dist/storage/content.js +0 -44
  717. package/dist/storage/content.js.map +0 -1
  718. package/dist/storage/filehosting.d.ts +0 -2
  719. package/dist/storage/filehosting.d.ts.map +0 -1
  720. package/dist/storage/filehosting.js +0 -24
  721. package/dist/storage/filehosting.js.map +0 -1
  722. package/dist/storage/githubcontents.d.ts +0 -2
  723. package/dist/storage/githubcontents.d.ts.map +0 -1
  724. package/dist/storage/githubcontents.js +0 -29
  725. package/dist/storage/githubcontents.js.map +0 -1
  726. package/dist/storage/index.d.ts +0 -12
  727. package/dist/storage/index.d.ts.map +0 -1
  728. package/dist/storage/index.js +0 -12
  729. package/dist/storage/index.js.map +0 -1
  730. package/dist/storage/local.d.ts +0 -2
  731. package/dist/storage/local.d.ts.map +0 -1
  732. package/dist/storage/local.js +0 -72
  733. package/dist/storage/local.js.map +0 -1
  734. package/dist/storage/memory.d.ts +0 -6
  735. package/dist/storage/memory.d.ts.map +0 -1
  736. package/dist/storage/memory.js +0 -36
  737. package/dist/storage/memory.js.map +0 -1
  738. package/dist/storage/pool.d.ts +0 -95
  739. package/dist/storage/pool.d.ts.map +0 -1
  740. package/dist/storage/pool.js +0 -202
  741. package/dist/storage/pool.js.map +0 -1
  742. package/dist/storage/s3compatible.d.ts +0 -3
  743. package/dist/storage/s3compatible.d.ts.map +0 -1
  744. package/dist/storage/s3compatible.js +0 -70
  745. package/dist/storage/s3compatible.js.map +0 -1
  746. package/dist/storage/sync.d.ts +0 -47
  747. package/dist/storage/sync.d.ts.map +0 -1
  748. package/dist/storage/sync.js +0 -75
  749. package/dist/storage/sync.js.map +0 -1
  750. package/dist/surfaces/adapters.d.ts +0 -97
  751. package/dist/surfaces/adapters.d.ts.map +0 -1
  752. package/dist/surfaces/adapters.js +0 -50
  753. package/dist/surfaces/adapters.js.map +0 -1
  754. package/dist/surfaces/controls.d.ts +0 -18
  755. package/dist/surfaces/controls.d.ts.map +0 -1
  756. package/dist/surfaces/controls.js +0 -45
  757. package/dist/surfaces/controls.js.map +0 -1
  758. package/dist/surfaces/manifest.d.ts +0 -68
  759. package/dist/surfaces/manifest.d.ts.map +0 -1
  760. package/dist/surfaces/manifest.js +0 -42
  761. package/dist/surfaces/manifest.js.map +0 -1
  762. package/dist/surfaces/n8n.d.ts +0 -25
  763. package/dist/surfaces/n8n.d.ts.map +0 -1
  764. package/dist/surfaces/n8n.js +0 -31
  765. package/dist/surfaces/n8n.js.map +0 -1
  766. package/dist/surfaces/operations.d.ts +0 -32
  767. package/dist/surfaces/operations.d.ts.map +0 -1
  768. package/dist/surfaces/operations.js +0 -53
  769. package/dist/surfaces/operations.js.map +0 -1
  770. package/dist/surfaces/requirements.d.ts +0 -29
  771. package/dist/surfaces/requirements.d.ts.map +0 -1
  772. package/dist/surfaces/requirements.js +0 -50
  773. package/dist/surfaces/requirements.js.map +0 -1
  774. package/dist/surfaces/targets.d.ts +0 -196
  775. package/dist/surfaces/targets.d.ts.map +0 -1
  776. package/dist/surfaces/targets.js +0 -27
  777. package/dist/surfaces/targets.js.map +0 -1
  778. package/dist/webhook/delivery.d.ts +0 -18
  779. package/dist/webhook/delivery.d.ts.map +0 -1
  780. package/dist/webhook/delivery.js +0 -36
  781. package/dist/webhook/delivery.js.map +0 -1
  782. package/dist/webhook/receiver.d.ts +0 -26
  783. package/dist/webhook/receiver.d.ts.map +0 -1
  784. package/dist/webhook/receiver.js +0 -24
  785. package/dist/webhook/receiver.js.map +0 -1
  786. package/dist/webhook/signature.d.ts +0 -3
  787. package/dist/webhook/signature.d.ts.map +0 -1
  788. package/dist/webhook/signature.js +0 -7
  789. package/dist/webhook/signature.js.map +0 -1
  790. package/dist/workflow/manifest.d.ts +0 -22
  791. package/dist/workflow/manifest.d.ts.map +0 -1
  792. package/dist/workflow/manifest.js +0 -21
  793. package/dist/workflow/manifest.js.map +0 -1
  794. package/dist/workflow/registry.d.ts +0 -7
  795. package/dist/workflow/registry.d.ts.map +0 -1
  796. package/dist/workflow/registry.js +0 -18
  797. package/dist/workflow/registry.js.map +0 -1
  798. package/dist/workflow/templates.d.ts +0 -6
  799. package/dist/workflow/templates.d.ts.map +0 -1
  800. package/dist/workflow/templates.js +0 -18
  801. package/dist/workflow/templates.js.map +0 -1
  802. package/dist/workflow/triggers.d.ts +0 -64
  803. package/dist/workflow/triggers.d.ts.map +0 -1
  804. package/dist/workflow/triggers.js +0 -99
  805. package/dist/workflow/triggers.js.map +0 -1
  806. package/docs/logs/.gitkeep +0 -0
  807. package/docs/plans/00.index.md +0 -50
  808. package/docs/plans/01.architecture.md +0 -86
  809. package/docs/plans/02.research.computer.use.md +0 -58
  810. package/docs/plans/03.research.captcha.bypass.md +0 -68
  811. package/docs/plans/04.research.sandbox.ai.md +0 -52
  812. package/docs/plans/05.capture.platform.md +0 -57
  813. package/docs/plans/06.dependencies.md +0 -97
  814. package/docs/plans/07.captcha.test.page.md +0 -41
  815. package/docs/plans/08.production.infra.md +0 -70
  816. package/docs/plans/09.database.schema.md +0 -121
  817. package/docs/plans/10.cloudinary.storage.md +0 -57
  818. package/docs/plans/11.movement.logs.json.md +0 -72
  819. package/docs/plans/12.research.atlas.agent.browser.md +0 -79
  820. package/docs/plans/13.research.anti.detection.md +0 -898
  821. package/docs/plans/14.research.proxy.md +0 -1495
  822. package/docs/plans/15.research.retry.rate.limit.md +0 -1958
  823. package/docs/plans/16.research.crawling.md +0 -1417
  824. package/docs/plans/17.research.caching.md +0 -1610
  825. package/docs/plans/18.research.content.extraction.md +0 -1952
  826. package/docs/plans/19.research.errors.events.md +0 -1523
  827. package/docs/plans/20.research.zod.validation.md +0 -1350
  828. package/docs/plans/21.research.batch.concurrency.md +0 -1888
  829. package/docs/plans/22.research.universal.runtime.md +0 -944
  830. package/docs/plans/23.research.ai.integration.md +0 -1465
  831. package/docs/plans/24.research.memory.persistence.md +0 -1979
  832. package/docs/plans/25.research.server.api.md +0 -342
  833. package/docs/plans/26.research.compilation.md +0 -249
  834. package/docs/plans/27.research.html.parsing.md +0 -251
  835. package/docs/plans/28.action.plan.md +0 -50
  836. package/docs/plans/29.api.reference.md +0 -174
  837. package/docs/plans/30.architecture.plan.md +0 -94
  838. package/docs/plans/31.auditoria.dados.md +0 -163
  839. package/docs/plans/32.bots.automacao.computacional.md +0 -214
  840. package/docs/plans/33.bots.codigo.revisao.md +0 -220
  841. package/docs/plans/34.bots.seguranca.cicd.md +0 -366
  842. package/docs/plans/35.comparativo.concorrencia.md +0 -464
  843. package/docs/plans/36.computational.memory.md +0 -340
  844. package/docs/plans/37.deploystrategy.md +0 -394
  845. package/docs/plans/38.flow.md +0 -155
  846. package/docs/plans/39.multi.platform.bot.md +0 -252
  847. package/docs/plans/40.npm.publish.md +0 -250
  848. package/docs/plans/41.o.que.falta.md +0 -407
  849. package/docs/plans/42.pesquisa.concorrencia.md +0 -721
  850. package/docs/plans/43.plan.universal.architecture.md +0 -496
  851. package/docs/plans/44.reference.md +0 -100
  852. package/docs/plans/45.robotarchitecture.md +0 -237
  853. package/docs/plans/46.scdnintegration.md +0 -284
  854. package/docs/plans/47.multiforge.readme.md +0 -129
  855. package/docs/plans/48.theory.v4.repo.os.md +0 -152
  856. package/docs/plans/49.third.party.infra.md +0 -12
  857. package/docs/plans/50.file.as.compute.md +0 -39
  858. package/docs/plans/51.architecture.virtual.processor.md +0 -80
  859. package/docs/plans/52.manifesto.v8.md +0 -11
  860. package/docs/plans/58.cdn.list.md +0 -23
  861. package/docs/plans/59.sql.frameworks.md +0 -33
  862. package/docs/plans/60.sql.thirdparty.md +0 -26
  863. package/docs/plans/61.objective.multiforge.md +0 -63
  864. package/docs/plans/62.huggingface.upload.md +0 -26
  865. package/docs/plans/63.kaggle.upload.md +0 -24
  866. package/docs/plans/64.npm.storage.md +0 -30
  867. package/docs/plans/65.rclone.terabox.md +0 -32
  868. package/docs/plans/66.buckets.and.models.todo.md +0 -14
  869. package/docs/plans/67.database.todo.md +0 -13
  870. package/docs/plans/68.deploy.packages.todo.md +0 -12
  871. package/docs/plans/69.report.human.operator.md +0 -133
  872. package/docs/plans/70.report.brain2qwerty.ems.md +0 -135
  873. package/docs/plans/71.report.hd.infinito.vram.md +0 -155
  874. package/docs/plans/72.plan.hd.infinito.node.md +0 -146
  875. package/docs/plans/73.plan.scifi.repos.md +0 -125
  876. package/docs/plans/74.000.manifesto.v8.flat.2..md +0 -11
  877. package/docs/plans/README.md +0 -489
  878. package/docs/plans/aggregate_platforms.mjs +0 -146
  879. package/docs/plans/examplesession.json +0 -36
  880. package/docs/plans/missing-facts.md +0 -192
  881. package/docs/plans/models.md +0 -64
  882. package/docs/plans/organize.cjs +0 -270
  883. package/docs/plans/platforms.md +0 -2887
  884. package/docs/plans/sites.md +0 -31322
  885. package/docs/sources/farm.py +0 -117
  886. package/docs/sources/html/saddle1.html +0 -132
  887. package/docs/sources/html/saddle2.html +0 -157
  888. package/docs/sources/html/saddle3.html +0 -119
  889. package/docs/sources/html/saddle4.html +0 -144
  890. package/docs/sources/html/saddle5.html +0 -72
  891. package/docs/sources/html/saddle6.html +0 -171
  892. package/docs/sources/html/saddle7.html +0 -236
  893. package/docs/sources/saddle.ts +0 -74
  894. package/docs/sources/schema.prisma +0 -88
  895. package/docs/sources/script.sh +0 -64
  896. package/docs/sources/workflows.yml +0 -458
  897. package/docs/talks1/_body.txt +0 -14
  898. package/docs/talks1/_index.md +0 -15
  899. package/docs/talks1/_screenshot.png +0 -0
  900. package/docs/talks1/assistant-01.md +0 -5
  901. package/docs/talks1/assistant-02.md +0 -5
  902. package/docs/talks1/assistant-03.md +0 -531
  903. package/docs/talks1/assistant-04.md +0 -26
  904. package/docs/talks1/assistant-05.md +0 -774
  905. package/docs/talks1/assistant-06.md +0 -1718
  906. package/docs/talks1/scrape-share.cjs +0 -185
  907. package/docs/talks1/scrape-share.ts +0 -183
  908. package/docs/talks1/user-01.md +0 -3
  909. package/docs/talks1/user-02.md +0 -3
  910. package/docs/talks1/user-03.md +0 -88
  911. package/docs/talks1/user-04.md +0 -3
  912. package/docs/talks1/user-05.md +0 -3
  913. package/docs/talks1/user-06.md +0 -88
  914. package/docs/talks1/user-07.md +0 -88
  915. package/docs/talks2/_body.txt +0 -14
  916. package/docs/talks2/_index.md +0 -16
  917. package/docs/talks2/_screenshot.png +0 -0
  918. package/docs/talks2/assistant-01.md +0 -5
  919. package/docs/talks2/assistant-02.md +0 -5
  920. package/docs/talks2/assistant-03.md +0 -424
  921. package/docs/talks2/assistant-04.md +0 -598
  922. package/docs/talks2/assistant-05.md +0 -1280
  923. package/docs/talks2/assistant-06.md +0 -1227
  924. package/docs/talks2/assistant-07.md +0 -1252
  925. package/docs/talks2/user-01.md +0 -3
  926. package/docs/talks2/user-02.md +0 -3
  927. package/docs/talks2/user-03.md +0 -88
  928. package/docs/talks2/user-04.md +0 -88
  929. package/docs/talks2/user-05.md +0 -88
  930. package/docs/talks2/user-06.md +0 -88
  931. package/docs/talks2/user-07.md +0 -3
  932. package/docs/talks3/_body.txt +0 -467
  933. package/docs/talks3/_index.md +0 -10
  934. package/docs/talks3/_screenshot.png +0 -0
  935. package/docs/talks3/assistant-01.md +0 -417
  936. package/docs/talks3/assistant-02.md +0 -417
  937. package/docs/talks3/assistant-03.md +0 -29
  938. package/docs/talks3/assistant-04.md +0 -727
  939. package/docs/talks3/user-01.md +0 -88
  940. package/docs/talks3/user-02.md +0 -88
  941. package/docs/talks3/user-03.md +0 -3
  942. package/docs/talks3/user-04.md +0 -3
  943. package/docs/talks4/_body.txt +0 -14
  944. package/docs/talks4/_index.md +0 -12
  945. package/docs/talks4/_screenshot.png +0 -0
  946. package/docs/talks4/assistant-01.md +0 -5
  947. package/docs/talks4/assistant-02.md +0 -5
  948. package/docs/talks4/assistant-03.md +0 -35
  949. package/docs/talks4/assistant-04.md +0 -512
  950. package/docs/talks4/assistant-05.md +0 -599
  951. package/docs/talks4/user-01.md +0 -3
  952. package/docs/talks4/user-02.md +0 -3
  953. package/docs/talks4/user-03.md +0 -88
  954. package/docs/talks4/user-04.md +0 -88
  955. package/docs/talks4/user-05.md +0 -7
  956. package/docs/talks5/_body.txt +0 -14
  957. package/docs/talks5/_index.md +0 -13
  958. package/docs/talks5/_screenshot.png +0 -0
  959. package/docs/talks5/assistant-01.md +0 -5
  960. package/docs/talks5/assistant-02.md +0 -5
  961. package/docs/talks5/assistant-03.md +0 -690
  962. package/docs/talks5/assistant-04.md +0 -758
  963. package/docs/talks5/assistant-05.md +0 -974
  964. package/docs/talks5/user-01.md +0 -3
  965. package/docs/talks5/user-02.md +0 -3
  966. package/docs/talks5/user-03.md +0 -105
  967. package/docs/talks5/user-04.md +0 -105
  968. package/docs/talks5/user-05.md +0 -63
  969. package/docs/talks5/user-06.md +0 -105
  970. package/docs/talks6/_body.txt +0 -14
  971. package/docs/talks6/_index.md +0 -9
  972. package/docs/talks6/_screenshot.png +0 -0
  973. package/docs/talks6/assistant-01.md +0 -5
  974. package/docs/talks6/assistant-02.md +0 -5
  975. package/docs/talks6/assistant-03.md +0 -1499
  976. package/docs/talks6/user-01.md +0 -3
  977. package/docs/talks6/user-02.md +0 -3
  978. package/docs/talks6/user-03.md +0 -88
  979. package/docs/talks6/user-04.md +0 -88
  980. package/docs/talks7/_body.txt +0 -14
  981. package/docs/talks7/_index.md +0 -10
  982. package/docs/talks7/_screenshot.png +0 -0
  983. package/docs/talks7/assistant-01.md +0 -5
  984. package/docs/talks7/assistant-02.md +0 -5
  985. package/docs/talks7/assistant-03.md +0 -523
  986. package/docs/talks7/assistant-04.md +0 -617
  987. package/docs/talks7/user-01.md +0 -3
  988. package/docs/talks7/user-02.md +0 -3
  989. package/docs/talks7/user-03.md +0 -105
  990. package/docs/talks7/user-04.md +0 -67
  991. package/docs/talks8/conversa1.txt +0 -1322
  992. package/docs/talks8/conversa2.txt +0 -237
  993. package/docs/talks9/Beyond the Obvious_ 50 Plataformas Auto-Hospedadas de Forja de C/303/263digo para Al/303/251m de Gitea e GitLab.md" +0 -174
  994. package/docs/talks9/De NPM a Multi-Linguagem_ Uma Arquitetura T/303/251cnica para a Execu/303/247/303/243o Integrada de C/303/263digo no Ecossistema Node.js.md" +0 -59
  995. package/docs/talks9/De NPM a VMs Virtuais_ Uma An/303/241lise Arquitet/303/264nica para a Realiza/303/247/303/243o do Ciclo de Vida do Projeto SADDLE.md" +0 -91
  996. package/docs/talks9/Mapeamento da Engrenagem Computacional_ Uma Arquitetura para Execu/303/247/303/243o Isolada e Persist/303/252ncia em Ambientes Distribu/303/255dos.md" +0 -116
  997. package/docs/talks9/O Cen/303/241rio Pr/303/241tico do SADDLE_ Uma An/303/241lise de Viabilidade e Modelo de Ciclo de Vida Integrado.md" +0 -128
  998. package/docs/talks9/README (2).md +0 -489
  999. package/docs/talks9/README.md +0 -198
  1000. package/docs/talks9/Viabilidade do Saddle_ Uma An/303/241lise T/303/251cnica da Transforma/303/247/303/243o de Armazenamento Remoto em Mem/303/263ria Computacional.md" +0 -80
  1001. package/docs/talks9/conversa.txt +0 -544
  1002. package/docs/talks9/other (2).md +0 -39
  1003. package/docs/talks9/other.md +0 -57
  1004. package/docs/talks9/outro.txt +0 -24
  1005. /package/{extension/README.md → docs/extension.md} +0 -0
@@ -1,727 +0,0 @@
1
- # assistant
2
-
3
- [Thinking] The user wants me to continue with more searches and provide a detailed step-by-step guide. Let me do more searches on the specific topics they mentioned - ORMs converted to RAM, HuggingFace/Kaggle/ModelScope infrastructure, WASM memory emulators, npm CDN delivery, and more.
4
-
5
- [Thinking] Now let me do more searches on specific topics the user mentioned - Forgejo/Gitea/Codeberg CI/CD, Kaggle/ModelScope free compute, WASM memory emulation, and the specific use cases.
6
-
7
- [Thinking] Now I have enough research to compile a comprehensive step-by-step guide. Let me synthesize everything into a detailed implementation plan.
8
-
9
- [Thinking] Now let me compile the comprehensive guide. I need to be concise but thorough, covering all the aspects the user asked about.
10
-
11
- Vou fazer mais 10+ pesquisas específicas e compilar tudo em um guia ultra-detallado.
12
-
13
- Agora vou compilar tudo em um guia ultra-completo com todos os passos.
14
-
15
- Aqui está o guia completo compilado de 13 pesquisas realizadas:
16
-
17
- GUIA COMPLETO: Plataforma Sandbox com Infraestrutura Gratuita
18
- SUMÁRIO RÁPIDO
19
-
20
-
21
-
22
- Camada
23
- Solução
24
- Custo
25
-
26
-
27
-
28
- Storage → RAM
29
- zRAM + tmpfs + memfs
30
- Grátis
31
-
32
-
33
- Sandbox isolado
34
- gVisor (sem KVM) ou Firecracker (com KVM)
35
- Grátis
36
-
37
-
38
- Runner efêmero
39
- ephemerd ou ez-gh-actions
40
- Grátis (MIT)
41
-
42
-
43
- ORM in-memory
44
- Drizzle + SQLite WASM + PGLite
45
- Grátis
46
-
47
-
48
- CI/CD
49
- Forgejo Actions (self-hosted)
50
- Grátis
51
-
52
-
53
- AI/GPU
54
- HuggingFace + Kaggle + ModelScope
55
- Grátis (free tiers)
56
-
57
-
58
- CDN execução
59
- esm.sh + jsdelivr + use-m
60
- Grátis
61
-
62
-
63
- npm package
64
- Publicar lib própria
65
- Grátis
66
-
67
-
68
-
69
- PARTE 1: Memory Bridge (Storage → RAM)
70
- O que é
71
- Transformar armazenamento físico (disco) em memória RAM virtual usando zRAM, tmpfs e memfs.
72
- Passo 1: Setup zRAM no Linux
73
- #!/bin/bash
74
- # setup-zram.sh - Converte storage em RAM comprimida
75
-
76
- # Carregar módulo zRAM
77
- modprobe zram num_devices=2
78
-
79
- # Criar swap comprimido (até 2x mais memória)
80
- echo zstd > /sys/block/zram0/comp_algorithm
81
- echo $(($(grep -Po 'MemTotal:\s*\K\d+' /proc/meminfo)/2))KiB > /sys/block/zram0/disksize
82
- mkswap /dev/zram0
83
- swapon --priority 100 /dev/zram0
84
-
85
- # Criar filesystem em RAM para workspace
86
- echo zstd > /sys/block/zram1/comp_algorithm
87
- echo 4G > /sys/block/zram1/disksize
88
- mkfs.ext4 /dev/zram1
89
- mkdir -p /mnt/sandbox-ram
90
- mount /dev/zram1 /mnt/sandbox-ram
91
- chmod 1777 /mnt/sandbox-ram
92
- Passo 2: Setup tmpfs
93
- # Montar diretórios em RAM
94
- mount -t tmpfs -o size=4G,mode=1777 tmpfs /tmp/ramdisk
95
- mount -t tmpfs -o size=2G,mode=1777 tmpfs /var/cache/ram
96
-
97
- # Verificar
98
- df -h | grep -E 'tmpfs|zram'
99
- Passo 3: Biblioteca Node.js - Memory Bridge
100
- // src/memory-bridge.ts
101
- import { createFsFromVolume, Volume } from 'memfs';
102
- import { readFileSync, existsSync } from 'fs';
103
- import { join, dirname } from 'path';
104
-
105
- export class MemoryBridge {
106
- private vol: Volume;
107
- private fs: ReturnType<typeof createFsFromVolume>;
108
-
109
- constructor(private maxRAM: string = '4G') {
110
- this.vol = new Volume();
111
- this.fs = createFsFromVolume(this.vol as any);
112
- }
113
-
114
- // Converte arquivo do disco para RAM
115
- storageToRam(diskPath: string, ramPath: string): void {
116
- if (!existsSync(diskPath)) throw new Error(`File not found: ${diskPath}`);
117
- const data = readFileSync(diskPath);
118
- this.vol.mkdirSync(dirname(ramPath), { recursive: true });
119
- this.vol.writeFileSync(ramPath, data);
120
- }
121
-
122
- // Converte diretório inteiro para RAM
123
- storageDirToRam(diskDir: string, ramDir: string): void {
124
- const { readdirSync, statSync } = require('fs');
125
- const files = readdirSync(diskDir);
126
- for (const file of files) {
127
- const fullPath = join(diskDir, file);
128
- const ramPath = join(ramDir, file);
129
- if (statSync(fullPath).isDirectory()) {
130
- this.storageDirToRam(fullPath, ramPath);
131
- } else {
132
- this.storageToRam(fullPath, ramPath);
133
- }
134
- }
135
- }
136
-
137
- // Cria sandbox em memória
138
- createSandbox(id: string): SandboxInstance {
139
- const sandboxPath = `/sandbox/${id}`;
140
- this.vol.mkdirSync(sandboxPath, { recursive: true });
141
- return new SandboxInstance(this.vol, this.fs, sandboxPath, id);
142
- }
143
- }
144
-
145
- export class SandboxInstance {
146
- constructor(
147
- private vol: Volume,
148
- private fs: ReturnType<typeof createFsFromVolume>,
149
- public path: string,
150
- public id: string
151
- ) {}
152
-
153
- writeFileSync(name: string, content: string): void {
154
- this.vol.writeFileSync(`${this.path}/${name}`, content);
155
- }
156
-
157
- readFileSync(name: string): Buffer {
158
- return this.vol.readFileSync(`${this.path}/${name}`);
159
- }
160
-
161
- execute(code: string): string {
162
- this.writeFileSync('index.js', code);
163
- const { execSync } = require('child_process');
164
- return execSync(`node -e "${code}"`, {
165
- cwd: this.path,
166
- timeout: 5000,
167
- maxBuffer: 1024 * 1024 * 10
168
- }).toString();
169
- }
170
- }
171
-
172
- PARTE 2: Sandbox Isolado (gVisor / Firecracker)
173
- Passo 4: Instalar gVisor (sem necessidade de KVM)
174
- # Instalar gVisor runsc
175
- curl -fsSL https://gvisor.dev/archive.key | sudo gpg --dearmor -o /usr/share/keyrings/gvisor-archive-keyring.gpg
176
- echo "deb [signed-by=/usr/share/keyrings/gvisor-archive-keyring.gpg] https://storage.googleapis.com/gvisor/releases release main" | sudo tee /etc/apt/sources.list.d/gvisor.list
177
- sudo apt update && sudo apt install -y runsc
178
-
179
- # Configurar Docker para usar gVisor
180
- cat << EOF | sudo tee /etc/docker/daemon.json
181
- {
182
- "runtimes": {
183
- "runsc": {
184
- "path": "/usr/bin/runsc"
185
- }
186
- }
187
- }
188
- EOF
189
- sudo systemctl restart docker
190
-
191
- # Testar sandbox
192
- docker run --rm --runtime=runsc ubuntu:22.04 cat /etc/os-release
193
- Passo 5: Script de Sandbox com Cota de Memória
194
- #!/bin/bash
195
- # create-sandbox.sh
196
- SANDBOX_ID=$1
197
- RAM_LIMIT=${2:-8g}
198
- CPU_LIMIT=${3:-4}
199
-
200
- docker run -d \
201
- --name "sandbox-${SANDBOX_ID}" \
202
- --runtime=runsc \
203
- --memory="${RAM_LIMIT}" \
204
- --cpus="${CPU_LIMIT}" \
205
- --network=sandbox-net \
206
- --read-only \
207
- --tmpfs /tmp:size=2g \
208
- -v /mnt/sandbox-ram/workspace-${SANDBOX_ID}:/workspace \
209
- -e SANDBOX_ID="${SANDBOX_ID}" \
210
- sandbox-base:latest
211
-
212
- PARTE 3: Runners Efêmeros (GitHub/Forgejo/Gitea)
213
- Passo 6: ephemerd (Multi-plataforma, MIT)
214
- # Baixar ephemerd
215
- # https://github.com/ephpm/ephemerd
216
- # Suporta: GitHub, Forgejo, Gitea, GitLab, Woodpecker
217
-
218
- # Configurar para Forgejo
219
- cat << 'EOF' > ~/.config/ephemerd/config.yaml
220
- provider: forgejo
221
- forgejo:
222
- url: https://codeberg.org
223
- token: ${FORGEJO_TOKEN}
224
-
225
- runner:
226
- labels: ["self-hosted", "linux", "x64", "docker"]
227
- image: "ghcr.io/actions/actions-runner:latest"
228
- memory_mb: 8192
229
- cpus: 4
230
- count: 2
231
-
232
- sandbox:
233
- type: docker
234
- isolation: gvisor
235
- EOF
236
-
237
- # Iniciar
238
- ephemerd serve
239
- Passo 7: ez-gh-actions (Rust, VM-first)
240
- # Instalar
241
- cargo install --path .
242
-
243
- # Configurar
244
- ezgha init --target owner/repo
245
- ezgha doctor
246
-
247
- # Iniciar runner efêmero
248
- ezgha serve
249
- Passo 8: Forgejo Runner (Self-hosted)
250
- # Baixar Forgejo Runner
251
- wget https://code.forgejo.org/forgejo/forgejo-runner/releases/download/v12.10.2/forgejo-runner-12.10.2-linux-amd64
252
- chmod +x forgejo-runner-12.10.2-linux-amd64
253
- mv forgejo-runner-12.10.2-linux-amd64 /usr/local/bin/forgejo-runner
254
-
255
- # Criar config
256
- mkdir -p /etc/forgejo-runner
257
- cat << 'EOF' > /etc/forgejo-runner/config.yml
258
- runners:
259
- - name: sandbox-runner
260
- labels:
261
- - "sandbox:docker://node:20-bookworm"
262
- - "linux:docker://ubuntu:22.04"
263
- container:
264
- image: node:20-bookworm
265
- options: |
266
- --memory=8g
267
- --cpus=4
268
- --runtime=runsc
269
- volumes:
270
- - /mnt/sandbox-ram:/workspace
271
- EOF
272
-
273
- # Registrar no Forgejo/Codeberg
274
- forgejo-runner daemon --config /etc/forgejo-runner/config.yml
275
-
276
- PARTE 4: ORM In-Memory (Drizzle + SQLite WASM + PGLite)
277
- Passo 9: Drizzle com SQLite em Memória
278
- // src/db/memory-db.ts
279
- import { drizzle } from 'drizzle-orm/better-sqlite3';
280
- import Database from 'better-sqlite3';
281
- import { sql } from 'drizzle-orm';
282
-
283
- // SQLite 100% em memória (zero disco)
284
- const sqlite = new Database(':memory:');
285
- export const db = drizzle(sqlite);
286
-
287
- // Criar tabela
288
- db.run(sql`
289
- CREATE TABLE sandboxes (
290
- id INTEGER PRIMARY KEY AUTOINCREMENT,
291
- name TEXT NOT NULL,
292
- status TEXT DEFAULT 'created',
293
- ram_mb INTEGER DEFAULT 4096,
294
- created_at DATETIME DEFAULT CURRENT_TIMESTAMP
295
- )
296
- `);
297
-
298
- // Drizzle com PGLite (Postgres em WASM)
299
- import { drizzle } from 'drizzle-orm/pglite';
300
- import { PGlite } from '@electric-sql/pglite';
301
-
302
- const client = new PGlite(); // In-memory Postgres
303
- export const pgDb = drizzle(client);
304
-
305
- // Drizzle com libSQL (SQLite com sync remoto)
306
- import { drizzle } from 'drizzle-orm/libsql';
307
- import { createClient } from '@libsql/client';
308
-
309
- const libsqlClient = createClient({
310
- url: 'file:local.db', // Local em memória
311
- syncUrl: process.env.TURSO_URL, // Sync remoto opcional
312
- authToken: process.env.TURSO_TOKEN,
313
- });
314
- export const libsqlDb = drizzle(libsqlClient);
315
- Passo 10: MySQL2 In-Memory (via SQLite bridge)
316
- // src/db/mysql-memory.ts
317
- import { drizzle } from 'drizzle-orm/mysql2';
318
- import mysql from 'mysql2/promise';
319
- import { createClient } from '@libsql/client';
320
-
321
- // Para MySQL-like queries em memória, usar SQLite como backend
322
- const sqlite = new (require('better-sqlite3'))(':memory:');
323
- const db = drizzle(sqlite);
324
-
325
- // OU: MySQL2 real com Docker container efêmero
326
- async function createMySQLContainer(id: string) {
327
- const { execSync } = require('child_process');
328
- execSync(`
329
- docker run -d \
330
- --name mysql-${id} \
331
- --memory=1g \
332
- --cpus=1 \
333
- -e MYSQL_ROOT_PASSWORD=root \
334
- -e MYSQL_DATABASE=sandbox \
335
- mysql:8.0
336
- `);
337
-
338
- // Aguardar MySQL iniciar
339
- await new Promise(r => setTimeout(r, 5000));
340
-
341
- const connection = await mysql.createConnection({
342
- host: '127.0.0.1',
343
- user: 'root',
344
- password: 'root',
345
- database: 'sandbox'
346
- });
347
-
348
- return drizzle(connection);
349
- }
350
-
351
- PARTE 5: Pipelines nos Repositórios
352
- Passo 11: Forgejo/Codeberg Actions
353
- # .forgejo/workflows/sandbox.yml
354
- name: Sandbox Pipeline
355
- on:
356
- push:
357
- branches: [main]
358
- workflow_dispatch:
359
- inputs:
360
- sandbox_config:
361
- description: 'Sandbox config JSON'
362
- required: true
363
-
364
- jobs:
365
- create-sandbox:
366
- runs-on: docker
367
- container:
368
- image: node:20-bookworm
369
- steps:
370
- - name: Checkout
371
- uses: https://data.forgejo.org/actions/checkout@v4
372
-
373
- - name: Setup Memory Bridge
374
- run: |
375
- apt-get update && apt-get install -y zram-tools
376
- modprobe zram
377
- zramctl /dev/zram0 --algorithm zstd --size 4G
378
- mkswap /dev/zram0 && swapon /dev/zram0
379
- mount -t tmpfs -o size=4G tmpfs /mnt/sandbox-ram
380
-
381
- - name: Install Dependencies
382
- run: |
383
- npm ci
384
- npm install memfs better-sqlite3 drizzle-orm
385
-
386
- - name: Create In-Memory DB
387
- run: |
388
- node -e "
389
- const Database = require('better-sqlite3');
390
- const db = new Database(':memory:');
391
- db.exec('CREATE TABLE sandboxes (id INTEGER PRIMARY KEY, name TEXT, status TEXT)');
392
- db.exec(\"INSERT INTO sandboxes (name, status) VALUES ('sandbox-1', 'running')\");
393
- console.log(db.prepare('SELECT * FROM sandboxes').all());
394
- "
395
-
396
- - name: Build Sandbox Image
397
- run: docker build -t sandbox-${{ github.run_id }}:latest .
398
-
399
- - name: Deploy Sandbox
400
- run: |
401
- docker run -d \
402
- --name sandbox-${{ github.run_id }} \
403
- --memory=8g --cpus=4 \
404
- -v /mnt/sandbox-ram:/workspace \
405
- sandbox-${{ github.run_id }}:latest
406
- Passo 12: GitHub Actions (grátis para público)
407
- # .github/workflows/sandbox-deploy.yml
408
- name: Deploy Sandbox
409
- on:
410
- schedule:
411
- - cron: '0 */6 * * *' # A cada 6 horas
412
- workflow_dispatch:
413
-
414
- jobs:
415
- deploy:
416
- runs-on: ubuntu-latest
417
- steps:
418
- - uses: actions/checkout@v4
419
-
420
- - name: Setup zRAM
421
- run: |
422
- sudo modprobe zram
423
- sudo zramctl /dev/zram0 --algorithm zstd --size 4G
424
- sudo mkswap /dev/zram0 && sudo swapon /dev/zram0
425
-
426
- - name: Create Memory-Backed Sandbox
427
- run: |
428
- sudo mount -t tmpfs -o size=4G tmpfs /mnt/sandbox-ram
429
- docker run -d \
430
- --name sandbox-${{ github.run_id }} \
431
- --memory=8g --cpus=4 \
432
- -v /mnt/sandbox-ram:/workspace \
433
- sandbox-base:latest
434
-
435
- - name: Upload State to Artifacts
436
- uses: actions/upload-artifact@v4
437
- with:
438
- name: sandbox-state
439
- path: /mnt/sandbox-ram/
440
- retention-days: 1
441
-
442
- PARTE 6: CDN para Execução Instantânea
443
- Passo 13: esm.sh + use-m (Zero Install)
444
- <!-- index.html - Executar qualquer npm package sem instalar -->
445
- <script type="module">
446
- // Carregar memfs do CDN
447
- const { Volume } = await import('https://esm.sh/memfs@4.0.0');
448
- const vol = new Volume();
449
-
450
- // Carregar better-sqlite3 do CDN
451
- const Database = (await import('https://esm.sh/better-sqlite3@11.0.0')).default;
452
- const db = new Database(':memory:');
453
-
454
- // Criar tabela
455
- db.exec('CREATE TABLE test (id INTEGER PRIMARY KEY, name TEXT)');
456
- db.exec("INSERT INTO test (name) VALUES ('hello from RAM')");
457
- console.log(db.prepare('SELECT * FROM test').all());
458
- </script>
459
-
460
- <!-- use-m: Dynamic package loader -->
461
- <script type="module">
462
- async function loadUse(sources = [
463
- 'https://unpkg.com/use-m/src/use.js',
464
- 'https://cdn.jsdelivr.net/npm/use-m/src/use.js',
465
- 'https://esm.sh/use-m/src/use.js',
466
- ]) {
467
- for (const url of sources) {
468
- try {
469
- const response = await fetch(url);
470
- if (!response.ok) throw new Error(`HTTP ${response.status}`);
471
- const source = await response.text();
472
- const exported = eval(source);
473
- if (exported?.use) return exported.use;
474
- } catch (e) { continue; }
475
- }
476
- throw new Error('Failed to load use-m');
477
- }
478
-
479
- const use = await loadUse();
480
- const _ = await use('lodash@4.17.21');
481
- console.log(_.chunk([1,2,3,4,5], 2)); // [[1,2],[3,4],[5]]
482
- </script>
483
-
484
- PARTE 7: Infraestrutura AI Gratuita
485
- Passo 14: HuggingFace Free Inference
486
- // src/ai/huggingface.ts
487
- import { InferenceClient } from '@huggingface/inference';
488
-
489
- const client = new InferenceClient(process.env.HF_TOKEN);
490
-
491
- // Text generation (grátis, rate-limited)
492
- const response = await client.textGeneration({
493
- model: 'gpt2',
494
- inputs: 'The future of AI is',
495
- parameters: { max_new_tokens: 100 }
496
- });
497
-
498
- // Embeddings (grátis)
499
- const embeddings = await client.featureExtraction({
500
- model: 'sentence-transformers/all-MiniLM-L6-v2',
501
- inputs: 'This is a test sentence'
502
- });
503
- Passo 15: Kaggle GPU Gratuito
504
- // src/ai/kaggle-gpu.ts
505
- import { execSync } from 'child_process';
506
-
507
- // Kaggle: 30h/semana GPU T4 grátis, 30h/semana GPU P100
508
- // Usar via CLI
509
- const kaggleScript = `
510
- !pip install -q transformers torch
511
- from transformers import pipeline
512
- generator = pipeline('text-generation', model='gpt2', device=0)
513
- print(generator("Hello", max_length=50))
514
- `;
515
-
516
- // Push notebook para Kaggle
517
- execSync(`
518
- kaggle kernels push \
519
- --id myuser/my-kernel \
520
- --type notebook \
521
- --enable-gpu \
522
- --source-file notebook.ipynb
523
- `);
524
- Passo 16: ModelScope Free (2000 chamadas/dia)
525
- // src/ai/modelscope.ts
526
- // OpenAI-compatible API: https://api-inference.modelscope.cn/v1
527
-
528
- import OpenAI from 'openai';
529
-
530
- const client = new OpenAI({
531
- apiKey: process.env.MODELSCOPE_API_KEY,
532
- baseURL: 'https://api-inference.modelscope.cn/v1'
533
- });
534
-
535
- // Qwen3.5, DeepSeek, GLM - tudo grátis
536
- const response = await client.chat.completions.create({
537
- model: 'Qwen/Qwen3.5-27B',
538
- messages: [{ role: 'user', content: 'Hello!' }]
539
- });
540
-
541
- PARTE 8: Projeto Principal (npm package)
542
- Passo 17: Estrutura do Projeto
543
- sandbox-memory-platform/
544
- ├── package.json
545
- ├── tsconfig.json
546
- ├── src/
547
- │ ├── index.ts # Entry point
548
- │ ├── memory-bridge.ts # Storage → RAM conversion
549
- │ ├── sandbox-runner.ts # Runner management
550
- │ ├── orm-memory.ts # Drizzle/Prisma in-memory
551
- │ ├── pipelines/
552
- │ │ ├── forgejo.ts # Forgejo Actions integration
553
- │ │ ├── github.ts # GitHub Actions integration
554
- │ │ └── gitlab.ts # GitLab CI integration
555
- │ ├── ai/
556
- │ │ ├── huggingface.ts # HuggingFace free inference
557
- │ │ ├── kaggle.ts # Kaggle GPU free tier
558
- │ │ └── modelscope.ts # ModelScope 2000 req/day
559
- │ └── cdn-loader.ts # esm.sh/jsdelivr loader
560
- ├── .github/workflows/
561
- │ └── sandbox.yml # Self CI/CD
562
- ├── .forgejo/workflows/
563
- │ └── sandbox.yml # Forgejo CI/CD
564
- └── Dockerfile
565
- Passo 18: package.json
566
- {
567
- "name": "@yourorg/sandbox-memory-platform",
568
- "version": "1.0.0",
569
- "type": "module",
570
- "main": "dist/index.js",
571
- "types": "dist/index.d.ts",
572
- "exports": {
573
- ".": "./dist/index.js",
574
- "./memory-bridge": "./dist/memory-bridge.js",
575
- "./orm-memory": "./dist/orm-memory.js",
576
- "./cdn-loader": "./dist/cdn-loader.js"
577
- },
578
- "scripts": {
579
- "build": "tsc",
580
- "dev": "tsx watch src/index.ts",
581
- "test": "vitest",
582
- "sandbox:create": "tsx src/cli.ts create",
583
- "sandbox:list": "tsx src/cli.ts list",
584
- "sandbox:destroy": "tsx src/cli.ts destroy"
585
- },
586
- "dependencies": {
587
- "memfs": "^4.0.0",
588
- "better-sqlite3": "^11.0.0",
589
- "drizzle-orm": "^0.28.0",
590
- "@electric-sql/pglite": "^0.2.0",
591
- "@libsql/client": "^0.6.0",
592
- "dockerode": "^3.3.0",
593
- "ws": "^8.16.0",
594
- "@huggingface/inference": "^3.0.0",
595
- "openai": "^4.0.0"
596
- },
597
- "peerDependencies": {
598
- "drizzle-orm": "^0.28.0",
599
- "mysql2": "^3.6.0",
600
- "@prisma/client": "^5.0.0"
601
- }
602
- }
603
- Passo 19: Dockerfile Multi-stage
604
- FROM node:20-bookworm AS builder
605
- WORKDIR /app
606
- COPY package*.json ./
607
- RUN npm ci
608
- COPY . .
609
- RUN npm run build
610
-
611
- FROM node:20-bookworm-slim AS runtime
612
- RUN apt-get update && apt-get install -y \
613
- zram-tools \
614
- docker.io \
615
- && rm -rf /var/lib/apt/lists/*
616
-
617
- # Setup zRAM
618
- RUN modprobe zram && \
619
- zramctl /dev/zram0 --algorithm zstd --size 4G && \
620
- mkswap /dev/zram0 && swapon /dev/zram0
621
-
622
- WORKDIR /app
623
- COPY --from=builder /app/dist ./dist
624
- COPY --from=builder /app/node_modules ./node_modules
625
- COPY --from=builder /app/package.json ./
626
-
627
- EXPOSE 3000
628
- CMD ["node", "dist/index.js"]
629
-
630
- PARTE 9: Deploy Multi-Plataforma
631
- Passo 20: Deploy no Codeberg + HuggingFace Spaces
632
- # HuggingFace Spaces (grátis para demos)
633
- # .github/workflows/deploy-hf.yml
634
- name: Deploy to HuggingFace Spaces
635
- on:
636
- push:
637
- branches: [main]
638
-
639
- jobs:
640
- deploy:
641
- runs-on: ubuntu-latest
642
- steps:
643
- - uses: actions/checkout@v4
644
- - uses: huggingface/gh-actions-git-lfs-push@v1
645
- env:
646
- HF_TOKEN: ${{ secrets.HF_TOKEN }}
647
-
648
- RESUMO: O que Usar em Cada Cenário
649
-
650
-
651
-
652
- Cenário
653
- Solução
654
- Infraestrutura
655
-
656
-
657
-
658
- Converter disco → RAM
659
- zRAM + tmpfs + memfs
660
- Kernel Linux
661
-
662
-
663
- Sandbox isolado (sem KVM)
664
- gVisor runsc
665
- Docker
666
-
667
-
668
- Sandbox isolado (com KVM)
669
- Firecracker microVM
670
- KVM
671
-
672
-
673
- CI/CD gratuito (self-hosted)
674
- Forgejo Actions
675
- Codeberg/Gitea
676
-
677
-
678
- CI/CD gratuito (cloud)
679
- GitHub Actions (público)
680
- GitHub
681
-
682
-
683
- ORM em memória
684
- Drizzle + SQLite WASM
685
- Browser/Node.js
686
-
687
-
688
- Postgres em memória
689
- PGLite (WASM)
690
- Browser/Node.js
691
-
692
-
693
- AI inference grátis
694
- HuggingFace + ModelScope
695
- Free tiers
696
-
697
-
698
- GPU grátis
699
- Kaggle (30h/semana T4)
700
- Kaggle
701
-
702
-
703
- Execução sem install
704
- esm.sh + use-m
705
- CDN
706
-
707
-
708
- Runner efêmero
709
- ephemerd ou ez-gh-actions
710
- MIT
711
-
712
-
713
-
714
- MACETES IMPORTANTES
715
-
716
- zRAM: Comprime dados 2-3x, transforma 4GB em 8-12GB efetivos
717
- tmpfs: Filesystem 100% em RAM, zero I/O de disco
718
- memfs: Filesystem in-memory do Node.js, compatível com fs API
719
- SQLite :memory:: Banco de dados 100% em RAM, zero persistência
720
- PGLite: Postgres compilado para WASM, roda no browser
721
- esm.sh: Qualquer npm package via URL, sem instalar
722
- Forgejo: GitHub Actions compatível, self-hosted, sem limites
723
- Kaggle: 30h/semana GPU T4 grátis via notebook
724
- ModelScope: 2000 chamadas/dia grátis, API OpenAI-compatible
725
- HuggingFace: Inference grátis para modelos <10B params
726
-
727
- Quer que eu aprofunde alguma parte específica ou crie mais scripts?