@byollm/relay 0.1.0-alpha.40 → 0.1.0-alpha.41
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.
- package/README.md +21 -4
- package/package.json +5 -5
package/README.md
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
> [!WARNING]
|
|
2
|
-
> **Alpha (`0.1.0-alpha.
|
|
2
|
+
> **Alpha (`0.1.0-alpha.41`) — under active development. Don't use this yet.**
|
|
3
3
|
>
|
|
4
4
|
> This is a walking skeleton. It routes real jobs between real daemons and real
|
|
5
5
|
> sites, and it is the fixture byollm_009 freezes against — but it keeps its
|
|
@@ -72,7 +72,7 @@
|
|
|
72
72
|
> packages published and `@byollm/server` did not: a Sigstore
|
|
73
73
|
> transparency-log 409 on its provenance attestation. The workflow's
|
|
74
74
|
> "already published" guard correctly refuses to resume a partial publish,
|
|
75
|
-
> so `0.1.0-alpha.
|
|
75
|
+
> so `0.1.0-alpha.41` is that release, whole.
|
|
76
76
|
>
|
|
77
77
|
> If you run the Supabase adapter, `alpha.21` needs
|
|
78
78
|
> `20260819010000_completed_by_lease_id.sql`: alpha.19 shipped §3.6's
|
|
@@ -91,6 +91,23 @@ If you are running via `npx`, install properly first (`npm install -g
|
|
|
91
91
|
byollm@alpha`) — `install` refuses to supervise a copy in npx's cache, because
|
|
92
92
|
npm deletes that directory and the service would fail at some later boot.
|
|
93
93
|
|
|
94
|
+
<!-- release-note 0.1.0-alpha.41 -->
|
|
95
|
+
**`onNoRunner` takes a string.** Your fallback answer is your own value, not
|
|
96
|
+
wire data, and handing back a whole result record for it was ceremony — the
|
|
97
|
+
README's own example got the shape wrong, which is how this was found.
|
|
98
|
+
|
|
99
|
+
```ts
|
|
100
|
+
const { outcome, fallback } = await job.result({
|
|
101
|
+
onNoRunner: () => runOnHostedModel(transcript),
|
|
102
|
+
});
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
Whatever you return, `result()` labels it `fallback: true` — the stamp is
|
|
106
|
+
applied by the wait, not taken from you, so an answer that did not run on
|
|
107
|
+
somebody's machine cannot be reported as though it did (`FALLBACK_LABELED`).
|
|
108
|
+
Both delivery channels do it, polling and Supabase Realtime. Records still
|
|
109
|
+
work; they just get labelled too.
|
|
110
|
+
|
|
94
111
|
# `@byollm/relay`
|
|
95
112
|
|
|
96
113
|
The **reference relay**: it routes byollm jobs between a site and someone's
|
|
@@ -166,7 +183,7 @@ daemons pin at pairing, verified against the `sites` half of the projection.
|
|
|
166
183
|
Nothing here trusts a `siteId` in a body or a query string.
|
|
167
184
|
|
|
168
185
|
That is newer than the rest of this package. The site plane took the caller's
|
|
169
|
-
word for who it was until `0.1.0-alpha.
|
|
186
|
+
word for who it was until `0.1.0-alpha.41`, which on a relay reachable from the
|
|
170
187
|
internet is an open enqueue endpoint into consenting users' machines and an
|
|
171
188
|
open read of who is online. It was blind the whole time — nothing could open a
|
|
172
189
|
payload — and blind is not the same as safe.
|
|
@@ -174,7 +191,7 @@ payload — and blind is not the same as safe.
|
|
|
174
191
|
If you are running this: the site plane is authenticated but this is still a
|
|
175
192
|
single-tenant relay with in-memory state. One site, one replica.
|
|
176
193
|
|
|
177
|
-
## Breaking in `0.1.0-alpha.
|
|
194
|
+
## Breaking in `0.1.0-alpha.41`: `RelayState` is async
|
|
178
195
|
|
|
179
196
|
Every method on `RelayState` now returns a `Promise`, and `Relay.sweep()` and
|
|
180
197
|
`debugPage()` with it. `RelayState.requeue` is private — it was only ever a
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@byollm/relay",
|
|
3
|
-
"version": "0.1.0-alpha.
|
|
3
|
+
"version": "0.1.0-alpha.41",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "The reference relay: routes sealed byollm jobs between sites and daemons, holding no decryption keys by construction.",
|
|
6
6
|
"license": "MIT",
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
],
|
|
32
32
|
"dependencies": {
|
|
33
33
|
"zod": "^4.1.13",
|
|
34
|
-
"@byollm/protocol": "0.1.0-alpha.
|
|
34
|
+
"@byollm/protocol": "0.1.0-alpha.41"
|
|
35
35
|
},
|
|
36
36
|
"publishConfig": {
|
|
37
37
|
"access": "public"
|
|
@@ -39,9 +39,9 @@
|
|
|
39
39
|
"devDependencies": {
|
|
40
40
|
"@supabase/supabase-js": "^2.112.2",
|
|
41
41
|
"vitest": "^4.1.10",
|
|
42
|
-
"byollm": "0.1.0-alpha.
|
|
43
|
-
"
|
|
44
|
-
"@byollm/conformance": "0.1.0-alpha.
|
|
42
|
+
"@byollm/server": "0.1.0-alpha.41",
|
|
43
|
+
"byollm": "0.1.0-alpha.41",
|
|
44
|
+
"@byollm/conformance": "0.1.0-alpha.41"
|
|
45
45
|
},
|
|
46
46
|
"peerDependencies": {
|
|
47
47
|
"vitest": ">=3"
|