@fungi.computer/agar 0.0.0-stage → 0.0.1

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 (159) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +766 -2
  3. package/dist/agent-message-meta.d.ts +74 -0
  4. package/dist/agent-message-meta.js +63 -0
  5. package/dist/agents.d.ts +170 -0
  6. package/dist/agents.js +218 -0
  7. package/dist/app-build-contract.d.ts +43 -0
  8. package/dist/app-build-contract.js +24 -0
  9. package/dist/apps.d.ts +66 -0
  10. package/dist/apps.js +47 -0
  11. package/dist/backend-declaration.d.ts +6 -0
  12. package/dist/backend-declaration.js +65 -0
  13. package/dist/backend-definition.d.ts +88 -0
  14. package/dist/backend-definition.js +158 -0
  15. package/dist/backend-refusal.d.ts +10 -0
  16. package/dist/backend-refusal.js +10 -0
  17. package/dist/backend.d.ts +30 -0
  18. package/dist/backend.js +28 -0
  19. package/dist/capabilities.d.ts +30 -0
  20. package/dist/capabilities.js +50 -0
  21. package/dist/channels.d.ts +142 -0
  22. package/dist/channels.js +97 -0
  23. package/dist/commands.d.ts +33 -0
  24. package/dist/commands.js +46 -0
  25. package/dist/computer-contracts.d.ts +73 -0
  26. package/dist/computer-contracts.js +57 -0
  27. package/dist/computer.d.ts +294 -0
  28. package/dist/computer.js +319 -0
  29. package/dist/connect.d.ts +11 -0
  30. package/dist/connect.js +211 -0
  31. package/dist/errors.d.ts +34 -0
  32. package/dist/errors.js +106 -0
  33. package/dist/failure.d.ts +2 -0
  34. package/dist/failure.js +9 -0
  35. package/dist/files.d.ts +25 -0
  36. package/dist/files.js +84 -0
  37. package/dist/game-servers.d.ts +530 -0
  38. package/dist/game-servers.js +244 -0
  39. package/dist/gills.d.ts +43 -0
  40. package/dist/gills.js +174 -0
  41. package/dist/git-commit.d.ts +143 -0
  42. package/dist/git-commit.js +251 -0
  43. package/dist/git-rpc.d.ts +310 -0
  44. package/dist/git-rpc.js +166 -0
  45. package/dist/git-steps.d.ts +579 -0
  46. package/dist/git-steps.js +804 -0
  47. package/dist/git-wire.d.ts +33 -0
  48. package/dist/git-wire.js +240 -0
  49. package/dist/git.d.ts +322 -0
  50. package/dist/git.js +98 -0
  51. package/dist/host.d.ts +97 -0
  52. package/dist/host.js +732 -0
  53. package/dist/inbox.d.ts +99 -0
  54. package/dist/inbox.js +184 -0
  55. package/dist/index.d.ts +31 -0
  56. package/dist/index.js +15 -0
  57. package/dist/inference.d.ts +17 -0
  58. package/dist/inference.js +115 -0
  59. package/dist/internal/app-error.d.ts +8 -0
  60. package/dist/internal/app-error.js +36 -0
  61. package/dist/internal/app-session.d.ts +8 -0
  62. package/dist/internal/app-session.js +551 -0
  63. package/dist/internal/back-inputs.d.ts +22 -0
  64. package/dist/internal/back-inputs.js +93 -0
  65. package/dist/internal/browser-bridge.d.ts +30 -0
  66. package/dist/internal/browser-bridge.js +203 -0
  67. package/dist/internal/capabilities.d.ts +13 -0
  68. package/dist/internal/capabilities.js +138 -0
  69. package/dist/internal/commands.d.ts +9 -0
  70. package/dist/internal/commands.js +257 -0
  71. package/dist/internal/disconnect-host.d.ts +7 -0
  72. package/dist/internal/disconnect-host.js +19 -0
  73. package/dist/internal/git-edit-tree.d.ts +6 -0
  74. package/dist/internal/git-edit-tree.js +46 -0
  75. package/dist/internal/memory-fs.d.ts +39 -0
  76. package/dist/internal/memory-fs.js +154 -0
  77. package/dist/internal/protocol.d.ts +116 -0
  78. package/dist/internal/protocol.js +6 -0
  79. package/dist/internal/query-feed.d.ts +23 -0
  80. package/dist/internal/query-feed.js +111 -0
  81. package/dist/internal/result.d.ts +22 -0
  82. package/dist/internal/result.js +61 -0
  83. package/dist/internal/rpc-contract.d.ts +24 -0
  84. package/dist/internal/rpc-contract.js +78 -0
  85. package/dist/internal/schemas.d.ts +307 -0
  86. package/dist/internal/schemas.js +524 -0
  87. package/dist/internal/store.d.ts +8 -0
  88. package/dist/internal/store.js +30 -0
  89. package/dist/internal/terminal-gate.d.ts +17 -0
  90. package/dist/internal/terminal-gate.js +94 -0
  91. package/dist/lifecycle.d.ts +44 -0
  92. package/dist/lifecycle.js +1 -0
  93. package/dist/marketplace.d.ts +159 -0
  94. package/dist/marketplace.js +102 -0
  95. package/dist/media-json.d.ts +181 -0
  96. package/dist/media-json.js +204 -0
  97. package/dist/media-library.d.ts +11 -0
  98. package/dist/media-library.js +15 -0
  99. package/dist/media-request-id.d.ts +7 -0
  100. package/dist/media-request-id.js +16 -0
  101. package/dist/media.d.ts +354 -0
  102. package/dist/media.js +654 -0
  103. package/dist/method-refusal.d.ts +64 -0
  104. package/dist/method-refusal.js +48 -0
  105. package/dist/pending.d.ts +10 -0
  106. package/dist/pending.js +10 -0
  107. package/dist/query.d.ts +76 -0
  108. package/dist/query.js +195 -0
  109. package/dist/react-mount.d.ts +23 -0
  110. package/dist/react-mount.js +108 -0
  111. package/dist/react.d.ts +41 -0
  112. package/dist/react.js +111 -0
  113. package/dist/read-copy.d.ts +103 -0
  114. package/dist/read-copy.js +195 -0
  115. package/dist/roles/files.d.ts +295 -0
  116. package/dist/roles/files.js +184 -0
  117. package/dist/root.d.ts +21 -0
  118. package/dist/root.js +1 -0
  119. package/dist/rpc.d.ts +1 -0
  120. package/dist/rpc.js +1 -0
  121. package/dist/status.d.ts +17 -0
  122. package/dist/status.js +50 -0
  123. package/dist/storage-wire.d.ts +167 -0
  124. package/dist/storage-wire.js +115 -0
  125. package/dist/storage.d.ts +72 -0
  126. package/dist/storage.js +143 -0
  127. package/dist/store.d.ts +11 -0
  128. package/dist/store.js +1 -0
  129. package/dist/test-kit/git.d.ts +31 -0
  130. package/dist/test-kit/git.js +174 -0
  131. package/dist/ui.d.ts +169 -0
  132. package/dist/ui.js +10 -0
  133. package/dist/window.d.ts +41 -0
  134. package/dist/window.js +15 -0
  135. package/dist/world.d.ts +16 -0
  136. package/dist/world.js +17 -0
  137. package/docs/api/README.md +28 -0
  138. package/docs/api/app-build-contract.md +113 -0
  139. package/docs/api/backend-declaration.md +62 -0
  140. package/docs/api/backend-definition.md +215 -0
  141. package/docs/api/backend.md +269 -0
  142. package/docs/api/errors.md +169 -0
  143. package/docs/api/files.md +91 -0
  144. package/docs/api/gills.md +164 -0
  145. package/docs/api/git-commit.md +279 -0
  146. package/docs/api/git-rpc.md +243 -0
  147. package/docs/api/git-steps.md +1010 -0
  148. package/docs/api/git-wire.md +197 -0
  149. package/docs/api/git.md +579 -0
  150. package/docs/api/index.md +2880 -0
  151. package/docs/api/media-json.md +507 -0
  152. package/docs/api/media-request-id.md +32 -0
  153. package/docs/api/modules.md +32 -0
  154. package/docs/api/query.md +253 -0
  155. package/docs/api/react.md +216 -0
  156. package/docs/api/read-copy.md +204 -0
  157. package/docs/api/rpc.md +128 -0
  158. package/docs/api/storage.md +620 -0
  159. package/package.json +197 -3
@@ -0,0 +1,204 @@
1
+ <!-- Generated by Botanical API docs (TypeDoc + typedoc-plugin-markdown). Do not edit. -->
2
+
3
+ [**@fungi.computer/agar**](README.md)
4
+
5
+ ---
6
+
7
+ [@fungi.computer/agar](modules.md) / read-copy
8
+
9
+ # read-copy
10
+
11
+ ## Classes
12
+
13
+ ### ReadCopyBudgetExceeded
14
+
15
+ A rebuild stops before dispatching the first call beyond its budget.
16
+
17
+ #### Extends
18
+
19
+ - `Error`
20
+
21
+ #### Constructors
22
+
23
+ ##### Constructor
24
+
25
+ ```ts
26
+ new ReadCopyBudgetExceeded(): ReadCopyBudgetExceeded;
27
+ ```
28
+
29
+ ###### Returns
30
+
31
+ [`ReadCopyBudgetExceeded`](#readcopybudgetexceeded)
32
+
33
+ ###### Overrides
34
+
35
+ ```ts
36
+ Error.constructor;
37
+ ```
38
+
39
+ ## Type Aliases
40
+
41
+ ### ReadCopySql
42
+
43
+ ```ts
44
+ type ReadCopySql = object;
45
+ ```
46
+
47
+ A facet's synchronous SQLite port, shared by Workers and local proofs.
48
+
49
+ #### Methods
50
+
51
+ ##### exec()
52
+
53
+ ```ts
54
+ exec(query, ...bindings): object;
55
+ ```
56
+
57
+ Execute immediately, as ctx.storage.sql does.
58
+
59
+ ###### Parameters
60
+
61
+ | Parameter | Type |
62
+ | ------------- | --------------------------------------------------- |
63
+ | `query` | `string` |
64
+ | ...`bindings` | (`string` \| `number` \| `ArrayBuffer` \| `null`)[] |
65
+
66
+ ###### Returns
67
+
68
+ | Name | Type | Description |
69
+ | ----------- | -------------------------- | ---------------------------------------------------- |
70
+ | `toArray()` | () => readonly `unknown`[] | Decode the returned SQLite rows at the App boundary. |
71
+
72
+ ---
73
+
74
+ ### ReadCopyLimits
75
+
76
+ ```ts
77
+ type ReadCopyLimits = object;
78
+ ```
79
+
80
+ App-selected shape and retention bounds; changing version discards old
81
+ representations.
82
+
83
+ #### Properties
84
+
85
+ ##### version
86
+
87
+ ```ts
88
+ version: number;
89
+ ```
90
+
91
+ App copy-shape version, changed by a clean representation break.
92
+
93
+ ##### maxRows
94
+
95
+ ```ts
96
+ maxRows: number;
97
+ ```
98
+
99
+ Maximum retained document rows across this facet.
100
+
101
+ ##### maxValueBytes
102
+
103
+ ```ts
104
+ maxValueBytes: number;
105
+ ```
106
+
107
+ Maximum UTF-8 JSON bytes per row.
108
+
109
+ ##### maxBlobBytes
110
+
111
+ ```ts
112
+ maxBlobBytes: number;
113
+ ```
114
+
115
+ Maximum bytes of one immutable blob.
116
+
117
+ ##### maxBlobTotalBytes
118
+
119
+ ```ts
120
+ maxBlobTotalBytes: number;
121
+ ```
122
+
123
+ Maximum total retained blob bytes, oldest objects evicted first.
124
+
125
+ ---
126
+
127
+ ### ReadCopyResult
128
+
129
+ ```ts
130
+ type ReadCopyResult<T> =
131
+ | {
132
+ kind: "ready";
133
+ head: string | null;
134
+ value: T;
135
+ }
136
+ | {
137
+ kind: "missing";
138
+ }
139
+ | {
140
+ kind: "rebuilding";
141
+ };
142
+ ```
143
+
144
+ A screen reads this projection without asking Git whether it is current.
145
+
146
+ #### Type Parameters
147
+
148
+ | Type Parameter |
149
+ | -------------- |
150
+ | `T` |
151
+
152
+ ## Functions
153
+
154
+ ### countingGit()
155
+
156
+ ```ts
157
+ function countingGit(binding, options): object;
158
+ ```
159
+
160
+ Count binding operations, never authority or results. The signal is the caller's
161
+ frame lifetime.
162
+
163
+ #### Parameters
164
+
165
+ | Parameter | Type |
166
+ | ---------------- | ------------------------------------------------- |
167
+ | `binding` | [`GitBinding`](git.md#gitbinding) |
168
+ | `options` | \{ `limit`: `number`; `signal`: `AbortSignal`; \} |
169
+ | `options.limit` | `number` |
170
+ | `options.signal` | `AbortSignal` |
171
+
172
+ #### Returns
173
+
174
+ | Name | Type | Description |
175
+ | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------- |
176
+ | `git` | `Readonly`\<\{ `create`: `Promise`\<`Readonly`\<\{ `name`: `string`; `defaultBranch`: `string`; `lastPushAt`: `string` \| `null`; `source`: `string` \| `null`; \}\>\>; `fork`: `Promise`\<`Readonly`\<\{ `name`: `string`; `defaultBranch`: `string`; `lastPushAt`: `string` \| `null`; `source`: `string` \| `null`; \}\>\>; `cloneUrl`: `Promise`\<`string`\>; `info`: `Promise`\< \| `Readonly`\<\{ `name`: `string`; `defaultBranch`: `string`; `lastPushAt`: `string` \| `null`; `source`: `string` \| `null`; \}\> \| `null`\>; `delete`: `Promise`\<`boolean`\>; `log`: `Promise`\<`Readonly`\<\{ `hash`: `string`; `treeHash`: `string`; `message`: `string`; `author`: \{ `name`: `string`; `email`: `string`; \}; `committer`: \{ `name`: `string`; `email`: `string`; \}; `parents`: `string`[]; `authoredAt`: `number`; `committedAt`: `number`; \}\>[]\>; `readCommit`: `Promise`\< \| `Readonly`\<\{ `hash`: `string`; `treeHash`: `string`; `message`: `string`; `author`: \{ `name`: `string`; `email`: `string`; \}; `committer`: \{ `name`: `string`; `email`: `string`; \}; `parents`: `string`[]; `authoredAt`: `number`; `committedAt`: `number`; \}\> \| `null`\>; `readTree`: `Promise`\< \| `Readonly`\<\{ `name`: `string`; `mode`: `string`; `hash`: `string`; `type`: `"blob"` \| `"tree"` \| `"commit"`; \}\>[] \| `null`\>; `readBlob`: `Promise`\<`Uint8Array`\<`ArrayBufferLike`\> \| `null`\>; `refs`: `Promise`\<`object`[]\>; `exchange`: `Promise`\<`Readonly`\<\{ `status`: `number`; `headers`: `Readonly`\<`Record`\<`string`, `string`\>\>; `body`: `Uint8Array`; \}\>\>; \}\> | - |
177
+ | `total()` | () => `number` | Number of dispatched operations. |
178
+ | `counts()` | () => `object` | Dispatch counts by maintained Git operation. |
179
+
180
+ ---
181
+
182
+ ### createReadCopies()
183
+
184
+ ```ts
185
+ function createReadCopies(sql, limits): object;
186
+ ```
187
+
188
+ Own bounded rows and content-addressed bytes in the App facet, not a
189
+ host/provider cache.
190
+
191
+ #### Parameters
192
+
193
+ | Parameter | Type |
194
+ | --------- | ----------------------------------- |
195
+ | `sql` | [`ReadCopySql`](#readcopysql) |
196
+ | `limits` | [`ReadCopyLimits`](#readcopylimits) |
197
+
198
+ #### Returns
199
+
200
+ | Name | Type | Description |
201
+ | ------------ | ------------------------------------------------------- | -------------------------------------------------------------------------------------------- |
202
+ | `open()` | \<`T`\>(`copy`, `schema`) => `object` | Bind a namespace to its maintained App decoder. Bind an App-owned schema and copy namespace. |
203
+ | `putBlob()` | (`hash`, `bytes`) => `void` | Store immutable provider-identified bytes; enforce per-object and total retention bounds. |
204
+ | `readBlob()` | (`hash`) => `Uint8Array`\<`ArrayBufferLike`\> \| `null` | A blob miss never performs I/O; the App decides which bounded rebuild owns it. |
@@ -0,0 +1,128 @@
1
+ <!-- Generated by Botanical API docs (TypeDoc + typedoc-plugin-markdown). Do not edit. -->
2
+
3
+ [**@fungi.computer/agar**](README.md)
4
+
5
+ ---
6
+
7
+ [@fungi.computer/agar](modules.md) / rpc
8
+
9
+ # rpc
10
+
11
+ ## Variables
12
+
13
+ ### rpcVoid
14
+
15
+ ```ts
16
+ const rpcVoid: ZodFunction<
17
+ $ZodFunctionArgs,
18
+ ZodPromise<ZodPipe<ZodUnknown, ZodTransform<void, unknown>>>
19
+ >;
20
+ ```
21
+
22
+ A method that decodes and releases an empty RPC result.
23
+
24
+ ## Functions
25
+
26
+ ### rpcHandleSchema()
27
+
28
+ ```ts
29
+ function rpcHandleSchema<S>(
30
+ methods,
31
+ ): ZodPipe<
32
+ ZodUnknown,
33
+ ZodTransform<
34
+ Awaited<
35
+ $InferObjectOutput<
36
+ { -readonly [P in string | number | symbol]: S[P] },
37
+ {}
38
+ > &
39
+ object
40
+ >,
41
+ unknown
42
+ >
43
+ >;
44
+ ```
45
+
46
+ Cap'n Web stubs are callable proxies, not records. Select only owner methods and
47
+ bind their receiver before the maintained function schemas wrap them.
48
+
49
+ #### Type Parameters
50
+
51
+ | Type Parameter |
52
+ | ------------------------------------------------------------------------------------------------------------------------------------- |
53
+ | `S` _extends_ `Readonly`\<\{ \[`k`: `string`\]: `$ZodType`\<`unknown`, `unknown`, `$ZodTypeInternals`\<`unknown`, `unknown`\>\>; \}\> |
54
+
55
+ #### Parameters
56
+
57
+ | Parameter | Type |
58
+ | --------- | ---- |
59
+ | `methods` | `S` |
60
+
61
+ #### Returns
62
+
63
+ `ZodPipe`\<`ZodUnknown`, `ZodTransform`\<`Awaited`\<`$InferObjectOutput`\<\{
64
+ -readonly \[P in string \| number \| symbol\]: S\[P\] \}, \{ \}\> & `object`\>,
65
+ `unknown`\>\>
66
+
67
+ ---
68
+
69
+ ### rpcDataSchema()
70
+
71
+ ```ts
72
+ function rpcDataSchema<T>(
73
+ result,
74
+ ): ZodPipe<ZodUnknown, ZodTransform<Awaited<T>, unknown>>;
75
+ ```
76
+
77
+ Copy an owned data result through its domain decoder, then release the RPC
78
+ envelope. Live resources use their own handle schemas instead.
79
+
80
+ #### Type Parameters
81
+
82
+ | Type Parameter |
83
+ | -------------- |
84
+ | `T` |
85
+
86
+ #### Parameters
87
+
88
+ | Parameter | Type |
89
+ | --------- | ---------------- |
90
+ | `result` | `ZodType`\<`T`\> |
91
+
92
+ #### Returns
93
+
94
+ `ZodPipe`\<`ZodUnknown`, `ZodTransform`\<`Awaited`\<`T`\>, `unknown`\>\>
95
+
96
+ ---
97
+
98
+ ### rpcMethod()
99
+
100
+ ```ts
101
+ function rpcMethod<T>(
102
+ result,
103
+ ): ZodFunction<
104
+ $ZodFunctionArgs,
105
+ ZodPromise<ZodPipe<ZodUnknown, ZodTransform<Awaited<T>, unknown>>>
106
+ >;
107
+ ```
108
+
109
+ Wrap an RPC method's result schema into a Zod function schema: the decoded value
110
+ resolves on success, and a malformed result is rethrown as a PROTOCOL AppError
111
+ after releasing the raw RPC envelope.
112
+
113
+ #### Type Parameters
114
+
115
+ | Type Parameter |
116
+ | -------------- |
117
+ | `T` |
118
+
119
+ #### Parameters
120
+
121
+ | Parameter | Type |
122
+ | --------- | ---------------- |
123
+ | `result` | `ZodType`\<`T`\> |
124
+
125
+ #### Returns
126
+
127
+ `ZodFunction`\<`$ZodFunctionArgs`, `ZodPromise`\<`ZodPipe`\<`ZodUnknown`,
128
+ `ZodTransform`\<`Awaited`\<`T`\>, `unknown`\>\>\>\>