@wenathlan/saddle 2.1.5 → 2.1.7

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 (291) hide show
  1. package/Dockerfile +158 -60
  2. package/LICENSE +0 -0
  3. package/README.md +68 -53
  4. package/alternatives.ts +0 -0
  5. package/biome.jsonc +134 -0
  6. package/boards.json +2 -2
  7. package/compute.ts +4 -4
  8. package/cores.json +2 -2
  9. package/docker.config +37 -9
  10. package/docs/.gitkeep +0 -0
  11. package/docs/actionrecorder.md +0 -0
  12. package/docs/actionsincident.md +0 -0
  13. package/docs/alternatives.md +0 -0
  14. package/docs/architecture.md +0 -0
  15. package/docs/{architecture-1.8.19.md → architecture1819.md} +0 -0
  16. package/docs/{architecture-1.8.19.mmd → architecture1819.mmd} +0 -0
  17. package/docs/artifactavailability.md +2 -2
  18. package/docs/{artifactresearch-1.8.9.md → artifactresearch189.md} +0 -0
  19. package/docs/{batches-1816-1820.md → batches1816to1820.md} +0 -0
  20. package/docs/{brancharchive-2026-08-18.md → brancharchive20260818.md} +0 -0
  21. package/docs/branchaudit.md +0 -0
  22. package/docs/browser.md +0 -0
  23. package/docs/capabilityreport.md +0 -0
  24. package/docs/comparativeaudit.md +0 -0
  25. package/docs/consolidation.md +0 -0
  26. package/docs/{containerplatforms-1.8.17.md → containerplatforms1817.md} +0 -0
  27. package/docs/{containerplatforms-2.1.0.md → containerplatforms210.md} +1 -1
  28. package/docs/{documentmap-1.8.12.md → documentmap1812.md} +1 -1
  29. package/docs/{e2ugh-engine.md → e2ughengine.md} +0 -0
  30. package/docs/ecosystemplan.md +0 -0
  31. package/docs/enginearchitecture.md +0 -0
  32. package/docs/extension.md +0 -0
  33. package/docs/featureaudit.md +0 -0
  34. package/docs/{flatbuildresearch-1.8.11.md → flatbuildresearch1811.md} +0 -0
  35. package/docs/gapmatrix.md +0 -0
  36. package/docs/hardware.md +0 -0
  37. package/docs/libraryapi.md +0 -0
  38. package/docs/{licenseaudit-1.8.12.md → licenseaudit1812.md} +0 -0
  39. package/docs/logs/examplesession.json +54 -0
  40. package/docs/memoryengine.md +0 -0
  41. package/docs/{mobileconversionresearch-1.8.10.md → mobileconversionresearch1810.md} +0 -0
  42. package/docs/modes.md +0 -0
  43. package/docs/{nativeidentityresearch-1.8.11.md → nativeidentityresearch1811.md} +0 -0
  44. package/docs/{native-wrappers.md → nativewrappers.md} +0 -0
  45. package/docs/ninetymodalities.md +191 -0
  46. package/docs/optimization.md +0 -0
  47. package/docs/packageaudit185.md +0 -0
  48. package/docs/performance.md +0 -0
  49. package/docs/{planning.1.8.18.md → planning1818.md} +0 -0
  50. package/docs/{planning.1.8.19.md → planning1819.md} +0 -0
  51. package/docs/planningengine.md +186 -0
  52. package/docs/planningninety.md +391 -0
  53. package/docs/platformpipelineaudit.md +0 -0
  54. package/docs/platformpipelines.md +0 -0
  55. package/docs/productindex.md +0 -0
  56. package/docs/registryresearch.md +0 -0
  57. package/docs/release.md +0 -0
  58. package/docs/release17notes.md +0 -0
  59. package/docs/release181notes.md +0 -0
  60. package/docs/release182notes.md +0 -0
  61. package/docs/release184notes.md +0 -0
  62. package/docs/release185notes.md +0 -0
  63. package/docs/release18notes.md +0 -0
  64. package/docs/releaseassets.md +0 -0
  65. package/docs/{releasenotes-1.8.12.md → releasenotes1812.md} +0 -0
  66. package/docs/{releasenotes-1.8.13.md → releasenotes1813.md} +2 -2
  67. package/docs/{releasenotes-1.8.14.md → releasenotes1814.md} +1 -1
  68. package/docs/{releasenotes-1.8.15.md → releasenotes1815.md} +0 -0
  69. package/docs/{releasenotes-1.8.16.md → releasenotes1816.md} +0 -0
  70. package/docs/{releasenotes-1.8.17.md → releasenotes1817.md} +0 -0
  71. package/docs/{releasenotes-1.8.18.md → releasenotes1818.md} +0 -0
  72. package/docs/{releasenotes-1.8.19.md → releasenotes1819.md} +0 -0
  73. package/docs/{reorganization-1.8.8.md → reorganization188.md} +0 -0
  74. package/docs/{reorganization-1.8.9.md → reorganization189.md} +0 -0
  75. package/docs/{repo-analysis-1.8.21.json → repoanalysis1821.json} +0 -0
  76. package/docs/{repo-candidates-1.8.21.jsonl → repocandidates1821.jsonl} +0 -0
  77. package/docs/{repo-research-1.8.16.md → reporesearch1816.md} +0 -0
  78. package/docs/{repo-research-1.8.21.md → reporesearch1821.md} +0 -0
  79. package/docs/{repo-selected-1.8.21.json → reposelected1821.json} +0 -0
  80. package/docs/{repo-synthesis-1.8.16.md → reposynthesis1816.md} +1 -1
  81. package/docs/{repo-synthesis-1.8.21.md → reposynthesis1821.md} +0 -0
  82. package/docs/{research-1.8.18-isolation.md → research1818isolation.md} +0 -0
  83. package/docs/{research-1.8.19-virtual-browser.md → research1819virtualbrowser.md} +0 -0
  84. package/docs/roadmapp2p3.md +0 -0
  85. package/docs/s3compatible.md +0 -0
  86. package/docs/{scanningresearch-1.8.11.md → scanningresearch1811.md} +0 -0
  87. package/docs/security.md +0 -0
  88. package/docs/{securityaudit-1.8.7.md → securityaudit187.md} +0 -0
  89. package/docs/{securityreferences-1.8.11.md → securityreferences1811.md} +0 -0
  90. package/docs/{securityresearch-1.8.11.md → securityresearch1811.md} +0 -0
  91. package/docs/{signingresearch-1.8.12.md → signingresearch1812.md} +0 -0
  92. package/docs/signingwithoutcertificates.md +0 -0
  93. package/docs/signpathapplication.md +0 -0
  94. package/docs/sitemap.md +0 -0
  95. package/docs/{tauri-glib-risk-1.8.11.md → tauriglibrisk1811.md} +0 -0
  96. package/docs/todo.md +2 -2
  97. package/docs/{todo-1.8.15.md → todo1815.md} +1 -1
  98. package/docs/{todo-1.8.16.md → todo1816.md} +5 -5
  99. package/docs/{todo-1.8.18.md → todo1818.md} +0 -0
  100. package/docs/{todo-1.8.19.md → todo1819.md} +0 -0
  101. package/docs/{toolchainresearch-1.8.9.md → toolchainresearch189.md} +0 -0
  102. package/docs/toolchains.md +0 -0
  103. package/docs/usage.md +0 -0
  104. package/docs/viability.md +0 -0
  105. package/docs/virtualization.md +0 -0
  106. package/docs/{web-duplicatecleanup.md → webduplicatecleanup.md} +0 -0
  107. package/docs/{web-ideas.md → webideas.md} +0 -0
  108. package/docs/{workflowimprovements-2026-08-19.md → workflowimprovements20260819.md} +0 -0
  109. package/docs/workflowinputs.md +0 -0
  110. package/docs/workflowoperations.md +0 -0
  111. package/docs/workloadlaw.md +104 -0
  112. package/gpumonitor.cpp +0 -0
  113. package/gpus.json +1 -1
  114. package/index.ts +19 -10
  115. package/manifest.json +20 -0
  116. package/modalityregistry.ts +1493 -0
  117. package/mttg.config +1 -1
  118. package/orchestrator.ts +52 -15
  119. package/package.json +196 -103
  120. package/passage.config +2 -2
  121. package/performance.ts +0 -0
  122. package/processors.json +1 -1
  123. package/qemu.config +2 -2
  124. package/qemubridge.py +0 -0
  125. package/quantum.ts +0 -0
  126. package/render.ts +0 -0
  127. package/scheduler.ts +0 -0
  128. package/security.ts +0 -0
  129. package/tiers.ts +9 -3
  130. package/tsconfig.json +21 -11
  131. package/virtualcpu.ts +1 -0
  132. package/virtualgpu.ts +1 -0
  133. package/virtualhardware.c +0 -0
  134. package/virtualhardware.json +2 -2
  135. package/virtualization.ts +0 -0
  136. package/virtualizationcore.cpp +0 -0
  137. package/virtualmemory.ts +0 -0
  138. package/vm.config.json +3 -3
  139. package/biome.json +0 -151
  140. package/dist/acquisition.d.ts +0 -359
  141. package/dist/acquisition.d.ts.map +0 -1
  142. package/dist/acquisition.js +0 -629
  143. package/dist/acquisition.js.map +0 -1
  144. package/dist/alternatives.d.ts +0 -509
  145. package/dist/alternatives.d.ts.map +0 -1
  146. package/dist/alternatives.js +0 -951
  147. package/dist/alternatives.js.map +0 -1
  148. package/dist/automation.d.ts +0 -426
  149. package/dist/automation.d.ts.map +0 -1
  150. package/dist/automation.js +0 -561
  151. package/dist/automation.js.map +0 -1
  152. package/dist/browser.d.ts +0 -562
  153. package/dist/browser.d.ts.map +0 -1
  154. package/dist/browser.js +0 -1057
  155. package/dist/browser.js.map +0 -1
  156. package/dist/cli.d.ts +0 -17
  157. package/dist/cli.d.ts.map +0 -1
  158. package/dist/cli.js +0 -169
  159. package/dist/cli.js.map +0 -1
  160. package/dist/communication.d.ts +0 -192
  161. package/dist/communication.d.ts.map +0 -1
  162. package/dist/communication.js +0 -418
  163. package/dist/communication.js.map +0 -1
  164. package/dist/compute.d.ts +0 -1161
  165. package/dist/compute.d.ts.map +0 -1
  166. package/dist/compute.js +0 -2273
  167. package/dist/compute.js.map +0 -1
  168. package/dist/distribution.d.ts +0 -529
  169. package/dist/distribution.d.ts.map +0 -1
  170. package/dist/distribution.js +0 -811
  171. package/dist/distribution.js.map +0 -1
  172. package/dist/docs/example-localjob.d.ts +0 -2
  173. package/dist/docs/example-localjob.d.ts.map +0 -1
  174. package/dist/docs/example-localjob.js +0 -15
  175. package/dist/docs/example-localjob.js.map +0 -1
  176. package/dist/docs/example-publicapi.d.ts +0 -2
  177. package/dist/docs/example-publicapi.d.ts.map +0 -1
  178. package/dist/docs/example-publicapi.js +0 -7
  179. package/dist/docs/example-publicapi.js.map +0 -1
  180. package/dist/execution.d.ts +0 -530
  181. package/dist/execution.d.ts.map +0 -1
  182. package/dist/execution.js +0 -761
  183. package/dist/execution.js.map +0 -1
  184. package/dist/format.d.ts +0 -19
  185. package/dist/format.d.ts.map +0 -1
  186. package/dist/format.js +0 -60
  187. package/dist/format.js.map +0 -1
  188. package/dist/foundation.d.ts +0 -176
  189. package/dist/foundation.d.ts.map +0 -1
  190. package/dist/foundation.js +0 -309
  191. package/dist/foundation.js.map +0 -1
  192. package/dist/index.d.ts +0 -735
  193. package/dist/index.d.ts.map +0 -1
  194. package/dist/index.js +0 -1020
  195. package/dist/index.js.map +0 -1
  196. package/dist/integration.d.ts +0 -236
  197. package/dist/integration.d.ts.map +0 -1
  198. package/dist/integration.js +0 -236
  199. package/dist/integration.js.map +0 -1
  200. package/dist/intelligence.d.ts +0 -94
  201. package/dist/intelligence.d.ts.map +0 -1
  202. package/dist/intelligence.js +0 -145
  203. package/dist/intelligence.js.map +0 -1
  204. package/dist/isolation.d.ts +0 -129
  205. package/dist/isolation.d.ts.map +0 -1
  206. package/dist/isolation.js +0 -96
  207. package/dist/isolation.js.map +0 -1
  208. package/dist/media.d.ts +0 -344
  209. package/dist/media.d.ts.map +0 -1
  210. package/dist/media.js +0 -986
  211. package/dist/media.js.map +0 -1
  212. package/dist/modes.d.ts +0 -359
  213. package/dist/modes.d.ts.map +0 -1
  214. package/dist/modes.js +0 -134
  215. package/dist/modes.js.map +0 -1
  216. package/dist/operations.d.ts +0 -67
  217. package/dist/operations.d.ts.map +0 -1
  218. package/dist/operations.js +0 -94
  219. package/dist/operations.js.map +0 -1
  220. package/dist/orchestrator.d.ts +0 -1339
  221. package/dist/orchestrator.d.ts.map +0 -1
  222. package/dist/orchestrator.js +0 -4308
  223. package/dist/orchestrator.js.map +0 -1
  224. package/dist/packager/targetcli.js +0 -4
  225. package/dist/performance.d.ts +0 -416
  226. package/dist/performance.d.ts.map +0 -1
  227. package/dist/performance.js +0 -827
  228. package/dist/performance.js.map +0 -1
  229. package/dist/quantum.d.ts +0 -810
  230. package/dist/quantum.d.ts.map +0 -1
  231. package/dist/quantum.js +0 -2073
  232. package/dist/quantum.js.map +0 -1
  233. package/dist/render.d.ts +0 -381
  234. package/dist/render.d.ts.map +0 -1
  235. package/dist/render.js +0 -1073
  236. package/dist/render.js.map +0 -1
  237. package/dist/scheduler.d.ts +0 -596
  238. package/dist/scheduler.d.ts.map +0 -1
  239. package/dist/scheduler.js +0 -1259
  240. package/dist/scheduler.js.map +0 -1
  241. package/dist/security.d.ts +0 -501
  242. package/dist/security.d.ts.map +0 -1
  243. package/dist/security.js +0 -1170
  244. package/dist/security.js.map +0 -1
  245. package/dist/server.d.ts +0 -21
  246. package/dist/server.d.ts.map +0 -1
  247. package/dist/server.js +0 -52
  248. package/dist/server.js.map +0 -1
  249. package/dist/tiers.d.ts +0 -1002
  250. package/dist/tiers.d.ts.map +0 -1
  251. package/dist/tiers.js +0 -2165
  252. package/dist/tiers.js.map +0 -1
  253. package/dist/virtual.d.ts +0 -641
  254. package/dist/virtual.d.ts.map +0 -1
  255. package/dist/virtual.js +0 -1285
  256. package/dist/virtual.js.map +0 -1
  257. package/dist/virtualcpu.d.ts +0 -316
  258. package/dist/virtualcpu.d.ts.map +0 -1
  259. package/dist/virtualcpu.js +0 -1180
  260. package/dist/virtualcpu.js.map +0 -1
  261. package/dist/virtualgpu.d.ts +0 -345
  262. package/dist/virtualgpu.d.ts.map +0 -1
  263. package/dist/virtualgpu.js +0 -1000
  264. package/dist/virtualgpu.js.map +0 -1
  265. package/dist/virtualization.d.ts +0 -607
  266. package/dist/virtualization.d.ts.map +0 -1
  267. package/dist/virtualization.js +0 -1187
  268. package/dist/virtualization.js.map +0 -1
  269. package/dist/virtualmemory.d.ts +0 -818
  270. package/dist/virtualmemory.d.ts.map +0 -1
  271. package/dist/virtualmemory.js +0 -1796
  272. package/dist/virtualmemory.js.map +0 -1
  273. package/dist/vitest.config.d.ts +0 -3
  274. package/dist/vitest.config.d.ts.map +0 -1
  275. package/dist/vitest.config.js +0 -26
  276. package/dist/vitest.config.js.map +0 -1
  277. package/dist/webscrape.d.ts +0 -720
  278. package/dist/webscrape.d.ts.map +0 -1
  279. package/dist/webscrape.js +0 -2697
  280. package/dist/webscrape.js.map +0 -1
  281. package/docs/CONVERSA.txt +0 -1523
  282. package/docs/architecture-1.8.19.png +0 -0
  283. package/docs/assets/architecture.svg +0 -45
  284. package/docs/assets/saddlemark.svg +0 -13
  285. package/docs/example-localjob.ts +0 -15
  286. package/docs/example-publicapi.ts +0 -7
  287. package/docs/saddle.archive.1.8.17.tar.gz.gpg +0 -0
  288. package/media.ts +0 -1337
  289. package/web/manifest.json +0 -30
  290. package/web/readme.md +0 -383
  291. package/web/tsconfig.json +0 -25
@@ -0,0 +1,104 @@
1
+ # the workload law — the family lane catalog and the join of record
2
+
3
+ > wave WL1 — the answer to the owner's charge: the system and every step
4
+ > of it ride the saddle, the visitor browser, gpu, cpu and storage are
5
+ > never touched, and the ninety modality modalities of the engine answer
6
+ > the family's work over the internet.
7
+
8
+ ## the law
9
+
10
+ The engine already carried the nuclear modality law since wave SV1
11
+ (`modalityregistry.ts`): the workload never chooses a modality by name —
12
+ the join resolver reads the demand (isolation, gpu, network, boot budget)
13
+ and answers the modality set that satisfies it, so the person chooses
14
+ none and the platform resolves the join of all. Until this wave the law
15
+ was a declared spine without a caller: the registry was a catalog and a
16
+ report, no lane of any app ever asked the join a question, and the
17
+ debonair worker seat named modality ids by hand without a resolver behind
18
+ them.
19
+
20
+ The workload law (`workloadlaw.ts`) makes the nuclear law executable for
21
+ the whole family:
22
+
23
+ 1. **The catalog** — `FAMILYLANES` carries one row per heavy workload
24
+ lane of every official app of the monorepo: the app that owns the
25
+ lane, the lane id, the role sentence, the demand (gpu, network,
26
+ isolation depth, boot budget) and the honest today (`engine-lane` when
27
+ the heavy pass already runs on a server-side engine surface,
28
+ `app-lane` when it still walks inside the app surface). The analysis
29
+ wave (A1) mapped all thirty-six lanes from the real modules of the
30
+ eleven apps.
31
+ 2. **The join** — `lanejoin` rides the registry's `resolvejoin` for each
32
+ row's demand and answers the ordered candidate set with the honest
33
+ verdict: `dispatchable` (at least one live modality satisfies the
34
+ demand), `planned-only` (only planned records answer — the gpu lanes
35
+ ride here today and say so) or `unresolved` (a calibration defect the
36
+ battery refuses).
37
+ 3. **The census** — `workloadreport` folds the per-app joins into the
38
+ family work order: the dispatchable count, the planned-only wait, the
39
+ app-lane migration list (the lanes whose heavy pass still walks the
40
+ app surface — the next waves' honest backlog), nothing hardcoded.
41
+
42
+ Every row carries a demand and never a modality id — the candidates are
43
+ computed from the registry of record, so a modality that turns live
44
+ tomorrow answers the same lane without this file moving.
45
+
46
+ ## the family mirrors
47
+
48
+ Each app of the family carries `sandboxmodality.ts` — the mirror of its
49
+ own rows in the engine catalog, plus the deploy's opt-in seat:
50
+
51
+ - `WORKLOADLANES` — the mirrored lane rows (the lockstep string contract:
52
+ mirrored, not imported, because the published saddle envelope does not
53
+ carry the workload law yet and the family law bars relative paths
54
+ across apps — the same discipline the devthink modalities vendor
55
+ rides).
56
+ - `<APP>_SANDBOX_LANE` — the deploy's seat: `local` (the default, the
57
+ deploy's own process), `join` (the platform resolves every lane through
58
+ the engine's join resolver), or a pinned modality id (named by the
59
+ deploy, validated by the platform's join at dispatch — the app module
60
+ never judges engine vocabulary, so the mirror cannot drift when the
61
+ registry grows).
62
+ - The debonair keeps its worker seat (`DEBONAIR_WORKER_MODALITY`) beside
63
+ the family seat — the two coexist honestly: the worker seat pins the
64
+ worker process, the lane seat declares the lanes to the platform.
65
+
66
+ Every app battery pins its mirror against the engine catalog through the
67
+ vitest bridge (`@wenathlan/saddle/workloadlaw` → the monorepo source),
68
+ comparing lane, role, demand and today row by row — the vendor can never
69
+ drift in silence. The bridge retires when the published envelope carries
70
+ the built workload law.
71
+
72
+ ## the api surface
73
+
74
+ The self-hosted web console (`webserver.ts`) answers the law over the
75
+ `/api/v1` contract:
76
+
77
+ - `GET /edge/workloads` — the family census: the workload report, the
78
+ probed lane table of the edge plane and the app list, one round trip.
79
+ - `GET /edge/join?app=&lane=` — the nuclear law as a lookup: the workload
80
+ names its app and lane, the resolver answers the ordered candidate set
81
+ with the honest verdict. A 404 answers an unknown app or lane (the
82
+ honest refusal, never a silent empty join).
83
+
84
+ ## the honest first census
85
+
86
+ The first reading of the law over the current registry (30 live, 3 host,
87
+ 57 planned modalities):
88
+
89
+ - thirty-five of the thirty-six lanes resolve dispatchable — at least
90
+ one live modality satisfies every demand except the gpu wait;
91
+ - `stealthhead/world-bake` answers planned-only — every gpu record of the
92
+ registry is planned today, and the lane says so instead of pretending
93
+ (the first gpu modality that turns live answers it without any file
94
+ moving);
95
+ - sixteen lanes still walk the app surface (`app-lane`) — the seeded
96
+ rehearsals of forge and foundry, the browser fallbacks of argan's
97
+ catalog, the decode lane of cadria, the simulation walks of
98
+ stealthhead: the honest migration list the next waves work through,
99
+ lane by lane, each one a deploy that seats `join` and a platform that
100
+ dispatches through the edge plane.
101
+
102
+ The lane table, the join and the census are the wiring truth of this
103
+ law: a lane that does not ride the saddle says so, a lane that can ride
104
+ tomorrow is named, and nothing pretends.
package/gpumonitor.cpp CHANGED
File without changes
package/gpus.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "meta": {
4
4
  "name": "gpus.json",
5
5
  "title": "saddle - Unified Virtual GPU Database",
6
- "version": "2.1.5",
6
+ "version": "2.0.127",
7
7
  "date": "2026-08-22",
8
8
  "language": "en",
9
9
  "description": "Union of the v5 GPU database (7 virtual identity identities), the S6 registry (RX 8900 XTX + Arc B770 unique), Blackwell architecture specs v5+v6 (B100/GB200/RTX 5070/5070 Ti SKUs), gpu.config TOML SKUs (incl. 5 AMD APU RDNA iGPUs) and the 11-entry vfio profile table. PCI device id for RTX PRO 6000 corrected 2BB5->26B5 per canonical v5.",
package/index.ts CHANGED
@@ -40,7 +40,7 @@ export const engineversions = {
40
40
  npm: '12.0.2',
41
41
  /** python stable confirmed 2026-08-23. */
42
42
  python: '3.14.7',
43
- nodecurrent: '26.7.0',
43
+ nodecurrent: '26.13.0',
44
44
  nodelts: '24.19.0',
45
45
  typescript: '7.0.2',
46
46
  docker: '29.7.2',
@@ -1400,11 +1400,10 @@ export function planlint(candidate: plan): readonly string[] {
1400
1400
  * lavapipe, node 26 runtime surface, ai workload planners, wasm canary,
1401
1401
  * wasi:gfx, chatops, gpu ebpf telemetry, ai migration predictor). */
1402
1402
  export * from './compute.js';
1403
- /** Re-exports the media pipeline and transcode domain (24-stage
1404
- * pipeline, ffmpeg 7.1 NVENC p1-p7 command synthesis, createoptimal
1405
- * encoder policy, passage ed25519+chacha20-poly1305 channel, 30
1406
- * transcode modes). */
1407
- export * from './media.js';
1403
+ /* the media pipeline and transcode domain moved to devthink (the saddle
1404
+ * ownership law, wave a, actions 108-112: the master virtualization engine
1405
+ * keeps only the sandbox/vm/runner/vgpu/vcpu/ports/hardware-virtual
1406
+ * modalities — the media lane rides its new owner). */
1408
1407
  export {
1409
1408
  bellstate,
1410
1409
  deutsch,
@@ -1462,16 +1461,26 @@ export * from './virtualmemory.js';
1462
1461
 
1463
1462
  /* ── Section 2: the saddle domain routing barrel ── */
1464
1463
 
1465
- export * from './acquisition.js';
1466
- export * from './automation.js';
1464
+ /* the workflow automation and AI intelligence domains moved to devthink
1465
+ * (the saddle ownership law, wave a, actions 108-112: the master
1466
+ * virtualization engine keeps only the sandbox/vm/runner/vgpu/vcpu/ports/
1467
+ * hardware-virtual modalities — the automation and intelligence lanes ride
1468
+ * their new owner). */
1467
1469
  export * from './browser.js';
1468
1470
  export * from './communication.js';
1469
1471
  export * from './distribution.js';
1470
1472
  export * from './execution.js';
1471
1473
  export * from './foundation.js';
1472
1474
  export * from './integration.js';
1473
- export * from './intelligence.js';
1474
1475
  export * from './isolation.js';
1476
+ /** Re-exports the sandbox modality registry — the catalog the join
1477
+ * resolver reads (the spine of the sandbox modalities the engine opens). */
1478
+ export * from './modalityregistry.js';
1475
1479
  export * from './modes.js';
1476
- export * from './operations.js';
1480
+ /** Re-exports the script lanes — the sh execution through the universal
1481
+ * runner, the yml/yaml interpretation through the house yaml subset with
1482
+ * the babel compile roundtrip, the detached background runs on the house
1483
+ * job queue and the docker-ready descriptors (the PR15 lane surface the
1484
+ * webserver routes and the script cli command consume). */
1485
+ export * from './scriptlanes.js';
1477
1486
  export * from './virtual.js';
package/manifest.json ADDED
@@ -0,0 +1,20 @@
1
+ {
2
+ "manifest_version": 3,
3
+ "name": "Saddle browser bridge",
4
+ "version": "2.1.7",
5
+ "description": "User initiated page snapshots through the Saddle browser contract.",
6
+ "minimum_chrome_version": "110",
7
+ "permissions": [
8
+ "activeTab",
9
+ "scripting",
10
+ "storage"
11
+ ],
12
+ "icons": {
13
+ "32": "icon.svg",
14
+ "64": "icon.svg",
15
+ "128": "icon.svg"
16
+ },
17
+ "action": {
18
+ "default_title": "Saddle"
19
+ }
20
+ }