@amalgm/shell 0.1.164-preview.36072132286 → 0.1.164-preview.36809057014

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 (475) hide show
  1. package/PURPOSE.md +642 -128
  2. package/README.md +10 -8
  3. package/dist/accepted-tail.d.ts +26 -0
  4. package/dist/accepted-tail.js +37 -0
  5. package/dist/accepted-tail.js.map +1 -0
  6. package/dist/agent-execution.d.ts +16 -1
  7. package/dist/agent-execution.js +13 -5
  8. package/dist/agent-execution.js.map +1 -1
  9. package/dist/apply-cleanup.d.ts +28 -0
  10. package/dist/apply-cleanup.js +166 -0
  11. package/dist/apply-cleanup.js.map +1 -0
  12. package/dist/apply-recovery.d.ts +47 -0
  13. package/dist/apply-recovery.js +99 -0
  14. package/dist/apply-recovery.js.map +1 -0
  15. package/dist/apply-rows.d.ts +72 -0
  16. package/dist/apply-rows.js +150 -0
  17. package/dist/apply-rows.js.map +1 -0
  18. package/dist/apply-saves.d.ts +85 -0
  19. package/dist/apply-saves.js +238 -0
  20. package/dist/apply-saves.js.map +1 -0
  21. package/dist/boot.js +2 -1
  22. package/dist/boot.js.map +1 -1
  23. package/dist/capture-work.d.ts +8 -0
  24. package/dist/capture-work.js +67 -0
  25. package/dist/capture-work.js.map +1 -0
  26. package/dist/cargo-group.d.ts +45 -0
  27. package/dist/cargo-group.js +88 -0
  28. package/dist/cargo-group.js.map +1 -0
  29. package/dist/channel-session.d.ts +4 -2
  30. package/dist/channel-session.js +4 -3
  31. package/dist/channel-session.js.map +1 -1
  32. package/dist/chat-composition.d.ts +2 -0
  33. package/dist/chat-composition.js +1 -0
  34. package/dist/chat-composition.js.map +1 -1
  35. package/dist/cli.js +20 -1
  36. package/dist/cli.js.map +1 -1
  37. package/dist/construct-apply-host.d.ts +4 -2
  38. package/dist/construct-apply-host.js +8 -3
  39. package/dist/construct-apply-host.js.map +1 -1
  40. package/dist/construct-door.js +1 -1
  41. package/dist/construct-door.js.map +1 -1
  42. package/dist/construct-ledger.d.ts +6 -1
  43. package/dist/construct-ledger.js +21 -33
  44. package/dist/construct-ledger.js.map +1 -1
  45. package/dist/content-cache-collection.d.ts +18 -0
  46. package/dist/content-cache-collection.js +99 -0
  47. package/dist/content-cache-collection.js.map +1 -0
  48. package/dist/content-cache-host.d.ts +83 -17
  49. package/dist/content-cache-host.js +335 -95
  50. package/dist/content-cache-host.js.map +1 -1
  51. package/dist/content-cache-namespace.d.ts +59 -0
  52. package/dist/content-cache-namespace.js +210 -0
  53. package/dist/content-cache-namespace.js.map +1 -0
  54. package/dist/content-cache-ownership.d.ts +13 -0
  55. package/dist/content-cache-ownership.js +75 -0
  56. package/dist/content-cache-ownership.js.map +1 -0
  57. package/dist/content-cache-retention.d.ts +23 -0
  58. package/dist/content-cache-retention.js +195 -0
  59. package/dist/content-cache-retention.js.map +1 -0
  60. package/dist/content-capture-pool.d.ts +287 -0
  61. package/dist/content-capture-pool.js +461 -0
  62. package/dist/content-capture-pool.js.map +1 -0
  63. package/dist/content-capture-worker.d.ts +8 -0
  64. package/dist/content-capture-worker.js +109 -0
  65. package/dist/content-capture-worker.js.map +1 -0
  66. package/dist/content-clock.d.ts +42 -0
  67. package/dist/content-clock.js +166 -0
  68. package/dist/content-clock.js.map +1 -0
  69. package/dist/content-direct.d.ts +2 -0
  70. package/dist/content-direct.js +12 -0
  71. package/dist/content-direct.js.map +1 -1
  72. package/dist/content-failure.d.ts +18 -0
  73. package/dist/content-failure.js +38 -0
  74. package/dist/content-failure.js.map +1 -0
  75. package/dist/content-stream-thread.d.ts +60 -0
  76. package/dist/content-stream-thread.js +95 -0
  77. package/dist/content-stream-thread.js.map +1 -0
  78. package/dist/content-stream-worker.d.ts +7 -0
  79. package/dist/content-stream-worker.js +52 -0
  80. package/dist/content-stream-worker.js.map +1 -0
  81. package/dist/declaration-absorption.d.ts +37 -0
  82. package/dist/declaration-absorption.js +119 -0
  83. package/dist/declaration-absorption.js.map +1 -0
  84. package/dist/declaration-chain.d.ts +36 -0
  85. package/dist/declaration-chain.js +96 -0
  86. package/dist/declaration-chain.js.map +1 -0
  87. package/dist/declaration-commit.d.ts +31 -0
  88. package/dist/declaration-commit.js +49 -0
  89. package/dist/declaration-commit.js.map +1 -0
  90. package/dist/declaration-hold.d.ts +22 -0
  91. package/dist/declaration-hold.js +24 -0
  92. package/dist/declaration-hold.js.map +1 -0
  93. package/dist/declaration-journal.d.ts +62 -0
  94. package/dist/declaration-journal.js +99 -0
  95. package/dist/declaration-journal.js.map +1 -0
  96. package/dist/declaration-save.d.ts +31 -0
  97. package/dist/declaration-save.js +134 -0
  98. package/dist/declaration-save.js.map +1 -0
  99. package/dist/detection/accepted-result.d.ts +19 -1
  100. package/dist/detection/accepted-result.js +36 -5
  101. package/dist/detection/accepted-result.js.map +1 -1
  102. package/dist/detection/admission-save.d.ts +55 -0
  103. package/dist/detection/admission-save.js +48 -0
  104. package/dist/detection/admission-save.js.map +1 -0
  105. package/dist/detection/admission-units.d.ts +66 -0
  106. package/dist/detection/admission-units.js +322 -0
  107. package/dist/detection/admission-units.js.map +1 -0
  108. package/dist/detection/alias-discovery.d.ts +12 -0
  109. package/dist/detection/alias-discovery.js +80 -0
  110. package/dist/detection/alias-discovery.js.map +1 -0
  111. package/dist/detection/alias-examination.d.ts +30 -0
  112. package/dist/detection/alias-examination.js +49 -0
  113. package/dist/detection/alias-examination.js.map +1 -0
  114. package/dist/detection/apply-ownership.d.ts +81 -0
  115. package/dist/detection/apply-ownership.js +232 -0
  116. package/dist/detection/apply-ownership.js.map +1 -0
  117. package/dist/detection/basis-advanced.d.ts +11 -0
  118. package/dist/detection/basis-advanced.js +26 -0
  119. package/dist/detection/basis-advanced.js.map +1 -0
  120. package/dist/detection/capture-outcome.d.ts +16 -0
  121. package/dist/detection/capture-outcome.js +92 -0
  122. package/dist/detection/capture-outcome.js.map +1 -0
  123. package/dist/detection/container-membership.d.ts +32 -0
  124. package/dist/detection/container-membership.js +49 -0
  125. package/dist/detection/container-membership.js.map +1 -0
  126. package/dist/detection/detect-cancelled.d.ts +6 -0
  127. package/dist/detection/detect-cancelled.js +10 -0
  128. package/dist/detection/detect-cancelled.js.map +1 -0
  129. package/dist/detection/directory-proof.d.ts +47 -0
  130. package/dist/detection/directory-proof.js +77 -0
  131. package/dist/detection/directory-proof.js.map +1 -0
  132. package/dist/detection/disposition-rows.d.ts +18 -0
  133. package/dist/detection/disposition-rows.js +29 -0
  134. package/dist/detection/disposition-rows.js.map +1 -0
  135. package/dist/detection/dispositions.d.ts +130 -0
  136. package/dist/detection/dispositions.js +248 -0
  137. package/dist/detection/dispositions.js.map +1 -0
  138. package/dist/detection/git-notice.d.ts +88 -0
  139. package/dist/detection/git-notice.js +444 -0
  140. package/dist/detection/git-notice.js.map +1 -0
  141. package/dist/detection/ground-proof.d.ts +130 -0
  142. package/dist/detection/ground-proof.js +274 -0
  143. package/dist/detection/ground-proof.js.map +1 -0
  144. package/dist/detection/ground-reader.d.ts +29 -0
  145. package/dist/detection/ground-reader.js +102 -0
  146. package/dist/detection/ground-reader.js.map +1 -0
  147. package/dist/detection/held-territory.d.ts +51 -0
  148. package/dist/detection/held-territory.js +205 -0
  149. package/dist/detection/held-territory.js.map +1 -0
  150. package/dist/detection/identity-discovery.d.ts +45 -0
  151. package/dist/detection/identity-discovery.js +287 -0
  152. package/dist/detection/identity-discovery.js.map +1 -0
  153. package/dist/detection/maintenance-sweep.d.ts +108 -0
  154. package/dist/detection/maintenance-sweep.js +325 -0
  155. package/dist/detection/maintenance-sweep.js.map +1 -0
  156. package/dist/detection/name-reach.d.ts +12 -0
  157. package/dist/detection/name-reach.js +28 -0
  158. package/dist/detection/name-reach.js.map +1 -0
  159. package/dist/detection/notebook-basis.d.ts +5 -7
  160. package/dist/detection/notebook-basis.js +6 -7
  161. package/dist/detection/notebook-basis.js.map +1 -1
  162. package/dist/detection/owed-selection.d.ts +51 -0
  163. package/dist/detection/owed-selection.js +169 -0
  164. package/dist/detection/owed-selection.js.map +1 -0
  165. package/dist/detection/portable.d.ts +34 -34
  166. package/dist/detection/portable.js +67 -93
  167. package/dist/detection/portable.js.map +1 -1
  168. package/dist/detection/reconciliation-coverage.d.ts +7 -0
  169. package/dist/detection/reconciliation-coverage.js +16 -0
  170. package/dist/detection/reconciliation-coverage.js.map +1 -0
  171. package/dist/detection/repository-publication.d.ts +20 -0
  172. package/dist/detection/repository-publication.js +79 -0
  173. package/dist/detection/repository-publication.js.map +1 -0
  174. package/dist/detection/repository-routes.d.ts +43 -0
  175. package/dist/detection/repository-routes.js +97 -0
  176. package/dist/detection/repository-routes.js.map +1 -0
  177. package/dist/detection/root-examination.d.ts +94 -0
  178. package/dist/detection/root-examination.js +523 -0
  179. package/dist/detection/root-examination.js.map +1 -0
  180. package/dist/detection/runtime.d.ts +131 -64
  181. package/dist/detection/runtime.js +808 -1103
  182. package/dist/detection/runtime.js.map +1 -1
  183. package/dist/detection/scoped-identity-port.d.ts +34 -0
  184. package/dist/detection/scoped-identity-port.js +81 -0
  185. package/dist/detection/scoped-identity-port.js.map +1 -0
  186. package/dist/detection/seal-law.d.ts +66 -0
  187. package/dist/detection/seal-law.js +116 -0
  188. package/dist/detection/seal-law.js.map +1 -0
  189. package/dist/detection/sharing-policy.d.ts +11 -0
  190. package/dist/detection/sharing-policy.js +32 -0
  191. package/dist/detection/sharing-policy.js.map +1 -0
  192. package/dist/detection/thread-database.d.ts +4 -0
  193. package/dist/detection/thread-database.js +30 -0
  194. package/dist/detection/thread-database.js.map +1 -0
  195. package/dist/detection/unreadable.d.ts +11 -0
  196. package/dist/detection/unreadable.js +9 -0
  197. package/dist/detection/unreadable.js.map +1 -0
  198. package/dist/detection/verified-content.d.ts +6 -0
  199. package/dist/detection/verified-content.js +12 -0
  200. package/dist/detection/verified-content.js.map +1 -0
  201. package/dist/detection/walk-law.d.ts +34 -0
  202. package/dist/detection/walk-law.js +55 -0
  203. package/dist/detection/walk-law.js.map +1 -0
  204. package/dist/development/fly-guest.js +2 -1
  205. package/dist/development/fly-guest.js.map +1 -1
  206. package/dist/entity-apply-host.d.ts +29 -13
  207. package/dist/entity-apply-host.js +1426 -461
  208. package/dist/entity-apply-host.js.map +1 -1
  209. package/dist/entity-apply-store.d.ts +77 -30
  210. package/dist/entity-apply-store.js +221 -516
  211. package/dist/entity-apply-store.js.map +1 -1
  212. package/dist/entity-record-observability.js +2 -0
  213. package/dist/entity-record-observability.js.map +1 -1
  214. package/dist/entity-record-saves.d.ts +20 -0
  215. package/dist/entity-record-saves.js +91 -0
  216. package/dist/entity-record-saves.js.map +1 -0
  217. package/dist/entity-record-store.d.ts +15 -7
  218. package/dist/entity-record-store.js +57 -117
  219. package/dist/entity-record-store.js.map +1 -1
  220. package/dist/files-register-host.d.ts +22 -3
  221. package/dist/files-register-host.js +70 -31
  222. package/dist/files-register-host.js.map +1 -1
  223. package/dist/filesystem.js +3 -2
  224. package/dist/filesystem.js.map +1 -1
  225. package/dist/git-binding.d.ts +65 -0
  226. package/dist/git-binding.js +220 -0
  227. package/dist/git-binding.js.map +1 -0
  228. package/dist/git-capture.d.ts +39 -0
  229. package/dist/git-capture.js +86 -0
  230. package/dist/git-capture.js.map +1 -0
  231. package/dist/git-card.d.ts +12 -0
  232. package/dist/git-card.js +123 -0
  233. package/dist/git-card.js.map +1 -0
  234. package/dist/git-checkpoint-construction.d.ts +41 -0
  235. package/dist/git-checkpoint-construction.js +96 -0
  236. package/dist/git-checkpoint-construction.js.map +1 -0
  237. package/dist/git-checkpoint-preparation.d.ts +37 -0
  238. package/dist/git-checkpoint-preparation.js +145 -0
  239. package/dist/git-checkpoint-preparation.js.map +1 -0
  240. package/dist/git-command.d.ts +61 -8
  241. package/dist/git-command.js +217 -63
  242. package/dist/git-command.js.map +1 -1
  243. package/dist/git-configuration.d.ts +40 -0
  244. package/dist/git-configuration.js +217 -0
  245. package/dist/git-configuration.js.map +1 -0
  246. package/dist/git-evidence.d.ts +61 -0
  247. package/dist/git-evidence.js +181 -0
  248. package/dist/git-evidence.js.map +1 -0
  249. package/dist/git-index-entries.d.ts +15 -0
  250. package/dist/git-index-entries.js +44 -0
  251. package/dist/git-index-entries.js.map +1 -0
  252. package/dist/git-index-format.d.ts +35 -0
  253. package/dist/git-index-format.js +293 -0
  254. package/dist/git-index-format.js.map +1 -0
  255. package/dist/git-index-witness.d.ts +33 -0
  256. package/dist/git-index-witness.js +69 -0
  257. package/dist/git-index-witness.js.map +1 -0
  258. package/dist/git-literal-host.d.ts +82 -0
  259. package/dist/git-literal-host.js +172 -0
  260. package/dist/git-literal-host.js.map +1 -0
  261. package/dist/git-literal-read.d.ts +88 -0
  262. package/dist/git-literal-read.js +170 -0
  263. package/dist/git-literal-read.js.map +1 -0
  264. package/dist/git-literal-replay.d.ts +33 -0
  265. package/dist/git-literal-replay.js +268 -0
  266. package/dist/git-literal-replay.js.map +1 -0
  267. package/dist/git-native-file.d.ts +42 -0
  268. package/dist/git-native-file.js +145 -0
  269. package/dist/git-native-file.js.map +1 -0
  270. package/dist/git-native-index.d.ts +21 -0
  271. package/dist/git-native-index.js +44 -0
  272. package/dist/git-native-index.js.map +1 -0
  273. package/dist/git-operation-host.d.ts +48 -0
  274. package/dist/git-operation-host.js +127 -0
  275. package/dist/git-operation-host.js.map +1 -0
  276. package/dist/git-private-index.d.ts +11 -0
  277. package/dist/git-private-index.js +42 -0
  278. package/dist/git-private-index.js.map +1 -0
  279. package/dist/git-private-repository.d.ts +4 -0
  280. package/dist/git-private-repository.js +69 -0
  281. package/dist/git-private-repository.js.map +1 -0
  282. package/dist/git-private-view.d.ts +39 -0
  283. package/dist/git-private-view.js +162 -0
  284. package/dist/git-private-view.js.map +1 -0
  285. package/dist/git-ref-store.d.ts +12 -0
  286. package/dist/git-ref-store.js +68 -0
  287. package/dist/git-ref-store.js.map +1 -0
  288. package/dist/git-registration-host.d.ts +20 -30
  289. package/dist/git-registration-host.js +86 -249
  290. package/dist/git-registration-host.js.map +1 -1
  291. package/dist/git-repository-host.d.ts +148 -22
  292. package/dist/git-repository-host.js +633 -650
  293. package/dist/git-repository-host.js.map +1 -1
  294. package/dist/git-worktree-host.d.ts +2 -0
  295. package/dist/git-worktree-host.js +16 -0
  296. package/dist/git-worktree-host.js.map +1 -0
  297. package/dist/graph-publication.d.ts +75 -0
  298. package/dist/graph-publication.js +203 -0
  299. package/dist/graph-publication.js.map +1 -0
  300. package/dist/ground-basis.d.ts +242 -0
  301. package/dist/ground-basis.js +1023 -0
  302. package/dist/ground-basis.js.map +1 -0
  303. package/dist/ground-checkpoint-worker.d.ts +1 -0
  304. package/dist/ground-checkpoint-worker.js +84 -0
  305. package/dist/ground-checkpoint-worker.js.map +1 -0
  306. package/dist/ground-checkpoints.d.ts +16 -0
  307. package/dist/ground-checkpoints.js +45 -0
  308. package/dist/ground-checkpoints.js.map +1 -0
  309. package/dist/ground-coordination.d.ts +107 -3
  310. package/dist/ground-coordination.js +249 -24
  311. package/dist/ground-coordination.js.map +1 -1
  312. package/dist/ground-database.d.ts +42 -0
  313. package/dist/ground-database.js +290 -0
  314. package/dist/ground-database.js.map +1 -0
  315. package/dist/ground-differences.d.ts +23 -0
  316. package/dist/ground-differences.js +47 -0
  317. package/dist/ground-differences.js.map +1 -0
  318. package/dist/ground-holders.d.ts +4 -0
  319. package/dist/ground-holders.js +15 -0
  320. package/dist/ground-holders.js.map +1 -0
  321. package/dist/ground-initialization-worker.d.ts +1 -0
  322. package/dist/ground-initialization-worker.js +20 -0
  323. package/dist/ground-initialization-worker.js.map +1 -0
  324. package/dist/ground-initialization.d.ts +35 -0
  325. package/dist/ground-initialization.js +102 -0
  326. package/dist/ground-initialization.js.map +1 -0
  327. package/dist/ground-install-saves.d.ts +63 -0
  328. package/dist/ground-install-saves.js +139 -0
  329. package/dist/ground-install-saves.js.map +1 -0
  330. package/dist/ground-inventory-schema.d.ts +18 -0
  331. package/dist/ground-inventory-schema.js +168 -0
  332. package/dist/ground-inventory-schema.js.map +1 -0
  333. package/dist/ground-profile.d.ts +7 -0
  334. package/dist/ground-profile.js +52 -0
  335. package/dist/ground-profile.js.map +1 -0
  336. package/dist/ground-root-index.d.ts +2 -1
  337. package/dist/ground-root-index.js +16 -14
  338. package/dist/ground-root-index.js.map +1 -1
  339. package/dist/ground-row.d.ts +62 -0
  340. package/dist/ground-row.js +70 -0
  341. package/dist/ground-row.js.map +1 -0
  342. package/dist/ground-save-ops.d.ts +44 -0
  343. package/dist/ground-save-ops.js +41 -0
  344. package/dist/ground-save-ops.js.map +1 -0
  345. package/dist/ground-saver-worker.d.ts +1 -0
  346. package/dist/ground-saver-worker.js +156 -0
  347. package/dist/ground-saver-worker.js.map +1 -0
  348. package/dist/ground-saver.d.ts +75 -0
  349. package/dist/ground-saver.js +216 -0
  350. package/dist/ground-saver.js.map +1 -0
  351. package/dist/ground-store.d.ts +84 -0
  352. package/dist/ground-store.js +473 -0
  353. package/dist/ground-store.js.map +1 -0
  354. package/dist/ground-territory.d.ts +130 -0
  355. package/dist/ground-territory.js +511 -0
  356. package/dist/ground-territory.js.map +1 -0
  357. package/dist/index.d.ts +1 -1
  358. package/dist/index.js.map +1 -1
  359. package/dist/installation/ownership.d.ts +0 -2
  360. package/dist/installation/ownership.js +3 -15
  361. package/dist/installation/ownership.js.map +1 -1
  362. package/dist/machine-host.d.ts +3 -2
  363. package/dist/machine-host.js +28 -16
  364. package/dist/machine-host.js.map +1 -1
  365. package/dist/materialized-graph.d.ts +7 -7
  366. package/dist/materialized-graph.js +11 -23
  367. package/dist/materialized-graph.js.map +1 -1
  368. package/dist/module-thread.d.ts +9 -0
  369. package/dist/module-thread.js +10 -0
  370. package/dist/module-thread.js.map +1 -0
  371. package/dist/native/fsevents-stream.node +0 -0
  372. package/dist/physical-path-witness.d.ts +64 -0
  373. package/dist/physical-path-witness.js +168 -0
  374. package/dist/physical-path-witness.js.map +1 -0
  375. package/dist/register-upload-fusion.d.ts +5 -4
  376. package/dist/register-upload-fusion.js +9 -6
  377. package/dist/register-upload-fusion.js.map +1 -1
  378. package/dist/registry-graph.d.ts +3 -2
  379. package/dist/registry-graph.js +9 -6
  380. package/dist/registry-graph.js.map +1 -1
  381. package/dist/registry-page-cache.d.ts +5 -2
  382. package/dist/registry-page-cache.js.map +1 -1
  383. package/dist/repository-identity-steps.d.ts +5 -0
  384. package/dist/repository-identity-steps.js +33 -0
  385. package/dist/repository-identity-steps.js.map +1 -0
  386. package/dist/runtime-node-flags.d.ts +10 -0
  387. package/dist/runtime-node-flags.js +11 -0
  388. package/dist/runtime-node-flags.js.map +1 -0
  389. package/dist/service/adapter.d.ts +1 -1
  390. package/dist/service/adapter.js +1 -1
  391. package/dist/service/adapter.js.map +1 -1
  392. package/dist/service/cli.js +16 -20
  393. package/dist/service/cli.js.map +1 -1
  394. package/dist/service/control.d.ts +2 -2
  395. package/dist/service/keepalive.d.ts +4 -11
  396. package/dist/service/keepalive.js +65 -118
  397. package/dist/service/keepalive.js.map +1 -1
  398. package/dist/service/policy.d.ts +36 -0
  399. package/dist/service/policy.js +25 -0
  400. package/dist/service/policy.js.map +1 -0
  401. package/dist/service/portable.d.ts +1 -1
  402. package/dist/service/portable.js +1 -1
  403. package/dist/service/portable.js.map +1 -1
  404. package/dist/service/recovery.d.ts +10 -9
  405. package/dist/service/recovery.js +29 -19
  406. package/dist/service/recovery.js.map +1 -1
  407. package/dist/service/windows-action.d.ts +5 -3
  408. package/dist/service/windows-action.js +6 -9
  409. package/dist/service/windows-action.js.map +1 -1
  410. package/dist/service/windows-task.js +5 -5
  411. package/dist/service/windows-task.js.map +1 -1
  412. package/dist/sharing-admission.d.ts +17 -0
  413. package/dist/sharing-admission.js +128 -0
  414. package/dist/sharing-admission.js.map +1 -0
  415. package/dist/snapshot-delivery-baseline.d.ts +12 -3
  416. package/dist/snapshot-delivery-baseline.js +41 -42
  417. package/dist/snapshot-delivery-baseline.js.map +1 -1
  418. package/dist/source-proof.d.ts +36 -0
  419. package/dist/source-proof.js +70 -0
  420. package/dist/source-proof.js.map +1 -0
  421. package/dist/source-signature.d.ts +56 -0
  422. package/dist/source-signature.js +56 -0
  423. package/dist/source-signature.js.map +1 -0
  424. package/dist/source-witness.d.ts +15 -0
  425. package/dist/source-witness.js +29 -0
  426. package/dist/source-witness.js.map +1 -0
  427. package/dist/sqlite-durability.d.ts +31 -0
  428. package/dist/sqlite-durability.js +28 -0
  429. package/dist/sqlite-durability.js.map +1 -0
  430. package/dist/sqlite.d.ts +8 -2
  431. package/dist/sqlite.js +27 -4
  432. package/dist/sqlite.js.map +1 -1
  433. package/dist/sync-address.d.ts +19 -0
  434. package/dist/sync-address.js +52 -0
  435. package/dist/sync-address.js.map +1 -0
  436. package/dist/sync-setting.d.ts +15 -0
  437. package/dist/sync-setting.js +13 -0
  438. package/dist/sync-setting.js.map +1 -1
  439. package/dist/turns.d.ts +42 -0
  440. package/dist/turns.js +112 -0
  441. package/dist/turns.js.map +1 -0
  442. package/dist/updates/bootstrap.d.ts +53 -7
  443. package/dist/updates/bootstrap.js +224 -137
  444. package/dist/updates/bootstrap.js.map +1 -1
  445. package/dist/updates/controller.d.ts +8 -0
  446. package/dist/updates/controller.js +27 -3
  447. package/dist/updates/controller.js.map +1 -1
  448. package/dist/updates/store.d.ts +3 -0
  449. package/dist/updates/store.js +12 -0
  450. package/dist/updates/store.js.map +1 -1
  451. package/dist/user-ground-host.d.ts +364 -69
  452. package/dist/user-ground-host.js +5231 -3366
  453. package/dist/user-ground-host.js.map +1 -1
  454. package/dist/watching/fsevents.d.ts +52 -1
  455. package/dist/watching/fsevents.js +60 -25
  456. package/dist/watching/fsevents.js.map +1 -1
  457. package/dist/watching/host.d.ts +129 -5
  458. package/dist/watching/host.js +433 -80
  459. package/dist/watching/host.js.map +1 -1
  460. package/dist/watching/index.d.ts +1 -1
  461. package/dist/wire-binary.d.ts +3 -2
  462. package/dist/wire-binary.js +10 -8
  463. package/dist/wire-binary.js.map +1 -1
  464. package/dist/wire-client.d.ts +3 -4
  465. package/dist/wire-client.js +18 -44
  466. package/dist/wire-client.js.map +1 -1
  467. package/dist/wire-outbox.d.ts +34 -0
  468. package/dist/wire-outbox.js +127 -0
  469. package/dist/wire-outbox.js.map +1 -0
  470. package/dist/workspace-host.d.ts +4 -0
  471. package/dist/workspace-host.js +12 -1
  472. package/dist/workspace-host.js.map +1 -1
  473. package/examinations/fixtures/private-wire-authority.js +133 -10
  474. package/npm-shrinkwrap.json +43 -56
  475. package/package.json +26 -13
@@ -1,8 +1,61 @@
1
- export declare function runGit(cwd: string, args: readonly string[], input?: Uint8Array): Buffer;
2
- /** Git grep uses exit 1 to mean a valid search with no matches. */
3
- export declare function runGitSearch(cwd: string, args: readonly string[]): Buffer;
4
- /** Stream a potentially large Git result directly to a private destination. */
5
- export declare function runGitToFile(cwd: string, args: readonly string[], input: Uint8Array, file: string): void;
6
- export declare function tryGit(cwd: string, args: readonly string[]): Buffer | null;
7
- export declare const gitText: (cwd: string, args: readonly string[]) => string;
8
- export declare function tryGitText(cwd: string, args: readonly string[]): string | null;
1
+ /** The one Git installation this process reads through. The launching
2
+ * environment is not repository ground: no inherited GIT_* variable and no
3
+ * machine configuration can redirect storage, configuration or the index.
4
+ * Resolved once, so opening and closing reads always share one invocation,
5
+ * and its key enters every retained Git observation. */
6
+ export interface GitHost {
7
+ /** The toolchain's own binary, never a launcher that chooses one per run. */
8
+ readonly executable: string;
9
+ readonly version: string;
10
+ readonly environment: Readonly<NodeJS.ProcessEnv>;
11
+ /** The toolchain generation: the pinned binary's identity, its version and
12
+ * the frozen HOME a `~/` include resolves against. */
13
+ readonly key: string;
14
+ }
15
+ export declare function gitHost(): GitHost;
16
+ /** A retained Git answer is reusable only under the generation that produced
17
+ * it. A replaced binary retires that generation for the whole process: the
18
+ * next read resolves the toolchain again, so no later answer carries the old
19
+ * key. One metadata read, never a hash of the executable. */
20
+ export declare function currentGitHost(): GitHost;
21
+ /** A generation as plain data, so a content thread reads through exactly the
22
+ * toolchain its dispatcher resolved instead of resolving one of its own. */
23
+ export type GitHostPin = GitHost & {
24
+ readonly identity: string;
25
+ };
26
+ export declare function gitHostPin(): GitHostPin;
27
+ /** A replaced binary still retires the pinned generation at the next check. */
28
+ export declare function pinGitHost(pin: GitHostPin): void;
29
+ /** A profile adds only the settings it deliberately owns (private storage,
30
+ * object alternates, locale); the host environment beneath it never changes. */
31
+ export type GitProfile = Readonly<Record<string, string>>;
32
+ /** Which question a Git process answers. Evidence only, never an input. */
33
+ export type GitPurpose = "binding" | "configuration" | "card" | "checkpoint" | "transport" | "apply";
34
+ export interface GitInvocation {
35
+ /** Bytes, or a stream whose own errors fail the invocation. */
36
+ readonly input?: Uint8Array | AsyncIterable<Uint8Array>;
37
+ readonly profile?: GitProfile;
38
+ readonly purpose?: GitPurpose;
39
+ /** A re-read that closes a retained observation rather than opening one. */
40
+ readonly closing?: boolean;
41
+ }
42
+ /** A completed Git process that did not succeed. Exit status and both output
43
+ * streams are retained so a caller can recognize a documented answer. `code`
44
+ * names the absence of the directory Git ran in, when it no longer stood once
45
+ * Git failed: that address emptied, whatever Git or the spawn said about it. */
46
+ export declare class GitFailure extends Error {
47
+ readonly status: number | null;
48
+ readonly signal: NodeJS.Signals | null;
49
+ readonly stdout: Buffer;
50
+ readonly stderr: Buffer;
51
+ readonly code?: "ENOENT" | "ENOTDIR" | undefined;
52
+ constructor(args: readonly string[], status: number | null, signal: NodeJS.Signals | null, stdout: Buffer, stderr: Buffer, cause?: unknown, code?: "ENOENT" | "ENOTDIR" | undefined);
53
+ }
54
+ export declare function runGit(cwd: string, args: readonly string[], invocation?: GitInvocation): Promise<Buffer>;
55
+ /** Only callers whose Git command documents exit 1 as absence/no-match may
56
+ * use this helper. Other failures always remain failures. */
57
+ export declare function runGitSearch(cwd: string, args: readonly string[], invocation?: GitInvocation): Promise<Buffer>;
58
+ /** Stream a potentially large Git result directly to a private destination.
59
+ * The descriptor closes only after the writing process has exited. */
60
+ export declare function runGitToFile(cwd: string, args: readonly string[], file: string, invocation?: GitInvocation): Promise<void>;
61
+ export declare const gitText: (cwd: string, args: readonly string[], invocation?: GitInvocation) => Promise<string>;
@@ -1,84 +1,238 @@
1
- import { execFileSync } from "node:child_process";
2
- import { closeSync, openSync } from "node:fs";
1
+ import { execFileSync, spawn } from "node:child_process";
2
+ import { channel } from "node:diagnostics_channel";
3
+ import { accessSync, closeSync, constants, openSync, realpathSync, statSync } from "node:fs";
4
+ import { delimiter, isAbsolute, join } from "node:path";
5
+ import { pipeline } from "node:stream/promises";
3
6
  const MAX_GIT_BUFFER = 512 * 1024 * 1024;
4
- function explainGitFailure(error, args) {
5
- const failure = error;
6
- const stderr = failure.stderr?.toString("utf8").trim();
7
- failure.message = `git ${args.join(" ")} failed${stderr ? `: ${stderr}` : ""}`;
8
- throw failure;
7
+ const DEV_NULL = process.platform === "win32" ? "NUL" : "/dev/null";
8
+ /** Settings every Shell Git invocation owns, whatever else its profile adds. */
9
+ const OWNED = Object.freeze({
10
+ GIT_TERMINAL_PROMPT: "0",
11
+ // Internal commands own piped output; a user's interactive pager is not a
12
+ // repository input and must never start another process here.
13
+ GIT_PAGER: "cat",
14
+ // Reader commands must neither weaken required flushes nor refresh indexes.
15
+ GIT_TEST_FSYNC: "1",
16
+ GIT_OPTIONAL_LOCKS: "0",
17
+ // Reading a source repository never fetches from a promisor remote.
18
+ GIT_NO_LAZY_FETCH: "1",
19
+ // A repository answer depends only on repository-owned bytes and this Git
20
+ // installation. System and user configuration, attributes and ignores are
21
+ // one machine's policy that no other machine sees; they must never enter a
22
+ // Card, a Checkpoint or an Apply decision.
23
+ GIT_CONFIG_NOSYSTEM: "1",
24
+ GIT_CONFIG_SYSTEM: DEV_NULL,
25
+ GIT_CONFIG_GLOBAL: DEV_NULL,
26
+ GIT_ATTR_NOSYSTEM: "1",
27
+ GIT_CONFIG_COUNT: "2",
28
+ GIT_CONFIG_KEY_0: "core.attributesFile",
29
+ GIT_CONFIG_VALUE_0: "",
30
+ GIT_CONFIG_KEY_1: "core.excludesFile",
31
+ GIT_CONFIG_VALUE_1: "",
32
+ });
33
+ function findExecutable(path) {
34
+ for (const directory of path.split(delimiter).filter(isAbsolute)) {
35
+ const candidate = join(directory, process.platform === "win32" ? "git.exe" : "git");
36
+ try {
37
+ accessSync(candidate, constants.X_OK);
38
+ return candidate;
39
+ }
40
+ catch { /* keep searching PATH */ }
41
+ }
42
+ throw new Error("git executable not found on PATH");
9
43
  }
10
- export function runGit(cwd, args, input) {
44
+ /** A launcher such as the xcode-select shim picks a toolchain afresh on every
45
+ * run. The toolchain's exec path names the binary it dispatches to; that
46
+ * binary, not the launcher, is what this process runs and identifies. */
47
+ function pinnedExecutable(launcher, environment) {
11
48
  try {
12
- return execFileSync("git", [...args], {
13
- cwd,
14
- input,
15
- maxBuffer: MAX_GIT_BUFFER,
16
- stdio: ["pipe", "pipe", "pipe"],
17
- env: {
18
- ...process.env,
19
- GIT_TERMINAL_PROMPT: "0",
20
- // A machine's Git test setting cannot turn a successful writer flush
21
- // into a no-op. Individual commands still select their fsync policy.
22
- GIT_TEST_FSYNC: "1",
23
- // Background observation must not create the index lock events it is
24
- // itself listening for. Git still takes every lock required for a
25
- // requested write; this disables only optional side effects such as
26
- // refreshing the index during a read.
27
- GIT_OPTIONAL_LOCKS: "0",
28
- },
29
- });
49
+ const execPath = execFileSync(launcher, ["--exec-path"], { env: environment }).toString("utf8").trim();
50
+ const binary = realpathSync(join(execPath, process.platform === "win32" ? "git.exe" : "git"));
51
+ accessSync(binary, constants.X_OK);
52
+ return binary;
30
53
  }
31
- catch (error) {
32
- explainGitFailure(error, args);
54
+ catch {
55
+ return realpathSync(launcher);
33
56
  }
34
57
  }
35
- /** Git grep uses exit 1 to mean a valid search with no matches. */
36
- export function runGitSearch(cwd, args) {
58
+ const identity = (executable) => {
59
+ const stat = statSync(executable, { bigint: true });
60
+ return [stat.dev, stat.ino, stat.size, stat.mtimeNs, stat.ctimeNs].join(":");
61
+ };
62
+ /** An environment name as the platform compares it: Windows names are
63
+ * case-insensitive (`Path` is PATH, `git_dir` is GIT_DIR) once copied out of
64
+ * process.env into a plain object. */
65
+ const variable = (name) => process.platform === "win32" ? name.toUpperCase() : name;
66
+ let host;
67
+ export function gitHost() {
68
+ if (host)
69
+ return host;
70
+ const environment = Object.freeze({
71
+ ...Object.fromEntries(Object.entries(process.env).filter(([name]) => !variable(name).startsWith("GIT_"))),
72
+ ...OWNED,
73
+ });
74
+ const path = Object.entries(environment).find(([name]) => variable(name) === "PATH")?.[1];
75
+ const executable = pinnedExecutable(findExecutable(path ?? ""), environment);
76
+ const stamp = identity(executable);
77
+ // Once per generation, before any repository read: the installation is fixed.
78
+ const version = execFileSync(executable, ["--version"], { env: environment }).toString("utf8").trim();
79
+ host = Object.freeze({ executable, version, environment, identity: stamp,
80
+ key: JSON.stringify([executable, stamp, version, environment.HOME ?? null]) });
81
+ return host;
82
+ }
83
+ /** A retained Git answer is reusable only under the generation that produced
84
+ * it. A replaced binary retires that generation for the whole process: the
85
+ * next read resolves the toolchain again, so no later answer carries the old
86
+ * key. One metadata read, never a hash of the executable. */
87
+ export function currentGitHost() {
37
88
  try {
38
- return runGit(cwd, args);
89
+ if (host && identity(host.executable) !== host.identity)
90
+ host = undefined;
39
91
  }
40
- catch (error) {
41
- const failure = error;
42
- if (failure.status === 1)
43
- return failure.stdout ?? Buffer.alloc(0);
44
- throw error;
92
+ catch {
93
+ host = undefined;
45
94
  }
95
+ return gitHost();
46
96
  }
47
- /** Stream a potentially large Git result directly to a private destination. */
48
- export function runGitToFile(cwd, args, input, file) {
49
- const descriptor = openSync(file, "wx", 0o600);
97
+ export function gitHostPin() {
98
+ currentGitHost();
99
+ return host;
100
+ }
101
+ /** A replaced binary still retires the pinned generation at the next check. */
102
+ export function pinGitHost(pin) {
103
+ if (host?.key === pin.key)
104
+ return;
105
+ host = Object.freeze({ ...pin, environment: Object.freeze({ ...pin.environment }) });
106
+ }
107
+ /** One event per finished process, published only while someone listens. */
108
+ const gitSpawns = channel("amalgm:git");
109
+ const commandOf = (args) => {
110
+ for (let index = 0; index < args.length; index++) {
111
+ if (args[index] === "-c" || args[index] === "-C")
112
+ index++;
113
+ else if (!args[index].startsWith("-"))
114
+ return args[index];
115
+ }
116
+ return "";
117
+ };
118
+ /** A completed Git process that did not succeed. Exit status and both output
119
+ * streams are retained so a caller can recognize a documented answer. `code`
120
+ * names the absence of the directory Git ran in, when it no longer stood once
121
+ * Git failed: that address emptied, whatever Git or the spawn said about it. */
122
+ export class GitFailure extends Error {
123
+ status;
124
+ signal;
125
+ stdout;
126
+ stderr;
127
+ code;
128
+ constructor(args, status, signal, stdout, stderr, cause, code) {
129
+ const detail = stderr.toString("utf8").trim() || (signal ? `signal ${signal}` : cause ? String(cause) : "");
130
+ super(`git ${args.join(" ")} failed${detail ? `: ${detail}` : ""}`, cause === undefined ? undefined : { cause });
131
+ this.status = status;
132
+ this.signal = signal;
133
+ this.stdout = stdout;
134
+ this.stderr = stderr;
135
+ this.code = code;
136
+ this.name = "GitFailure";
137
+ }
138
+ }
139
+ /** Why the directory Git ran in no longer stands, if it does not. */
140
+ function absence(cwd) {
50
141
  try {
51
- execFileSync("git", [...args], {
52
- cwd,
53
- input,
54
- maxBuffer: MAX_GIT_BUFFER,
55
- stdio: ["pipe", descriptor, "pipe"],
56
- env: {
57
- ...process.env,
58
- GIT_TERMINAL_PROMPT: "0",
59
- GIT_TEST_FSYNC: "1",
60
- GIT_OPTIONAL_LOCKS: "0",
61
- },
62
- });
142
+ return statSync(cwd).isDirectory() ? undefined : "ENOTDIR";
63
143
  }
64
144
  catch (error) {
65
- explainGitFailure(error, args);
66
- }
67
- finally {
68
- closeSync(descriptor);
145
+ const code = error.code;
146
+ return code === "ENOENT" || code === "ENOTDIR" ? code : undefined;
69
147
  }
70
148
  }
71
- export function tryGit(cwd, args) {
149
+ /** The one Git runner. The event loop stays free while Git works; the result
150
+ * resolves only after the process has exited and both pipes have drained. */
151
+ function execute(cwd, args, invocation, stdout) {
152
+ return new Promise((resolve, reject) => {
153
+ const child = spawn(gitHost().executable, [...args], {
154
+ cwd, env: { ...gitHost().environment, ...invocation.profile }, stdio: ["pipe", stdout, "pipe"],
155
+ });
156
+ const out = [], err = [];
157
+ const started = performance.now();
158
+ let outBytes = 0, errBytes = 0, failure, settled = false;
159
+ const publish = (exitCode, signal) => {
160
+ if (gitSpawns.hasSubscribers)
161
+ gitSpawns.publish({
162
+ cwd, purpose: invocation.purpose ?? "unlabelled", closing: invocation.closing === true, command: commandOf(args),
163
+ queuedMs: 0, durationMs: performance.now() - started, exitCode, signal, stdoutBytes: outBytes, stderrBytes: errBytes,
164
+ });
165
+ };
166
+ const fail = (error) => { failure ??= error; child.kill(); };
167
+ child.stdout?.on("data", (chunk) => {
168
+ outBytes += chunk.length;
169
+ if (outBytes > MAX_GIT_BUFFER)
170
+ fail(new RangeError("Git output exceeds its buffer bound"));
171
+ else
172
+ out.push(chunk);
173
+ });
174
+ child.stderr.on("data", (chunk) => { errBytes += chunk.length; err.push(chunk); });
175
+ child.once("error", error => {
176
+ // A process that never started emits no close.
177
+ if (child.pid === undefined && !settled) {
178
+ settled = true;
179
+ publish(null, null);
180
+ reject(new GitFailure(args, null, null, Buffer.alloc(0), Buffer.alloc(0), error, absence(cwd)));
181
+ }
182
+ else
183
+ fail(error);
184
+ });
185
+ // Git may finish without reading all input; its exit status decides.
186
+ const ignoreEarlyExit = (error) => { if (error.code !== "EPIPE")
187
+ fail(error); };
188
+ const { input } = invocation;
189
+ let fed = Promise.resolve();
190
+ if (input === undefined || input instanceof Uint8Array) {
191
+ child.stdin.on("error", ignoreEarlyExit);
192
+ child.stdin.end(input);
193
+ }
194
+ else
195
+ fed = pipeline(input, child.stdin).catch(ignoreEarlyExit);
196
+ // Completion is the child's close and the end of its input producer, so
197
+ // a producer failure is never lost behind an already-resolved result.
198
+ child.once("close", (status, signal) => void fed.then(() => {
199
+ if (settled)
200
+ return;
201
+ settled = true;
202
+ publish(status, signal);
203
+ const output = Buffer.concat(out);
204
+ if (status === 0 && failure === undefined)
205
+ resolve(output);
206
+ else
207
+ reject(new GitFailure(args, status, signal, output, Buffer.concat(err), failure, absence(cwd)));
208
+ }));
209
+ });
210
+ }
211
+ export function runGit(cwd, args, invocation = {}) {
212
+ return execute(cwd, args, invocation, "pipe");
213
+ }
214
+ /** Only callers whose Git command documents exit 1 as absence/no-match may
215
+ * use this helper. Other failures always remain failures. */
216
+ export async function runGitSearch(cwd, args, invocation) {
72
217
  try {
73
- return runGit(cwd, args);
218
+ return await runGit(cwd, args, invocation);
74
219
  }
75
- catch {
76
- return null;
220
+ catch (error) {
221
+ if (error instanceof GitFailure && error.status === 1)
222
+ return error.stdout;
223
+ throw error;
77
224
  }
78
225
  }
79
- export const gitText = (cwd, args) => runGit(cwd, args).toString("utf8").trim();
80
- export function tryGitText(cwd, args) {
81
- const value = tryGit(cwd, args);
82
- return value === null ? null : value.toString("utf8").trim();
226
+ /** Stream a potentially large Git result directly to a private destination.
227
+ * The descriptor closes only after the writing process has exited. */
228
+ export async function runGitToFile(cwd, args, file, invocation = {}) {
229
+ const descriptor = openSync(file, "wx", 0o600);
230
+ try {
231
+ await execute(cwd, args, invocation, descriptor);
232
+ }
233
+ finally {
234
+ closeSync(descriptor);
235
+ }
83
236
  }
237
+ export const gitText = async (cwd, args, invocation) => (await runGit(cwd, args, invocation)).toString("utf8").trim();
84
238
  //# sourceMappingURL=git-command.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"git-command.js","sourceRoot":"","sources":["../src/git-command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"git-command.js","sourceRoot":"","sources":["../src/git-command.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ import { type RepoRemote } from "@amalgm/live";
2
+ import { type NativeIndexBinding } from "./git-binding.js";
3
+ import type { SourceProof } from "./source-proof.js";
4
+ export declare function configurationRemotes(bytes: Buffer): readonly RepoRemote[];
5
+ /** Every source's witness at observation, and the branch chain's names once
6
+ * a conditional include makes them an input. */
7
+ export interface GitConfigurationWitness {
8
+ readonly kind: "git-configuration";
9
+ readonly sources: readonly (readonly [string, string])[];
10
+ readonly branch: {
11
+ readonly gitDir: string;
12
+ readonly names: string;
13
+ } | null;
14
+ }
15
+ export declare function judgeGitConfiguration(witness: GitConfigurationWitness): void;
16
+ /** Effective configuration is Git's answer over repository-owned sources
17
+ * (local, worktree and their includes) plus the host's fixed command scope;
18
+ * machine configuration is never read. Its semantic witness is that answer;
19
+ * its physical witnesses are the bytes of every source the answer depends on. */
20
+ export interface GitConfigurationObservation extends SourceProof {
21
+ /** Equality of original ordered answers and Git host, never a fresh read. */
22
+ readonly fingerprint: string;
23
+ has(key: string): boolean;
24
+ readonly remotes: readonly RepoRemote[];
25
+ /** Every path the answer depends on, absent include targets included. */
26
+ readonly sources: readonly string[];
27
+ /** True when the physical witnesses close every input of this answer, so an
28
+ * unchanged witness set may stand for a fresh read. */
29
+ readonly reusable: boolean;
30
+ /** This stamp is meaningful only on the actual O result proved by its owner.
31
+ * Routing may compare it but must never establish or refresh it. */
32
+ stamp(uuid: string, payloadVersion: string, binding: NativeIndexBinding): string;
33
+ }
34
+ export declare function observeGitConfiguration(repository: string): Promise<GitConfigurationObservation>;
35
+ /** Ground a repository reader depends on beyond its checkout: external Git
36
+ * storage and every configuration source, include targets included, each at
37
+ * its synchronization address (a source read through a link depends on the
38
+ * link and its target). A collection requires all of it in its lease before
39
+ * admitting what it read; sources inside the checkout are already covered. */
40
+ export declare function repositoryFootprint(binding: NativeIndexBinding, configuration: GitConfigurationObservation): string[];