@plurnk/plurnk-schemes-http 1.16.4 → 1.17.0
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/.env.defaults +11 -33
- package/README.md +12 -12
- package/SPEC.md +54 -44
- package/dist/Http.d.ts.map +1 -1
- package/dist/Http.js +27 -44
- package/dist/Http.js.map +1 -1
- package/dist/HttpGet.js +2 -2
- package/dist/HttpGet.js.map +1 -1
- package/dist/HttpRequester.d.ts.map +1 -1
- package/dist/HttpRequester.js +21 -6
- package/dist/HttpRequester.js.map +1 -1
- package/dist/LiveAcquisitions.d.ts +1 -1
- package/dist/LiveAcquisitions.d.ts.map +1 -1
- package/dist/LiveAcquisitions.js +12 -9
- package/dist/LiveAcquisitions.js.map +1 -1
- package/dist/WebFetcher.d.ts +2 -6
- package/dist/WebFetcher.d.ts.map +1 -1
- package/dist/WebFetcher.js +69 -103
- package/dist/WebFetcher.js.map +1 -1
- package/dist/Ws.d.ts.map +1 -1
- package/dist/Ws.js +228 -241
- package/dist/Ws.js.map +1 -1
- package/docs/https.md +33 -28
- package/docs/wss.md +25 -18
- package/package.json +4 -3
package/.env.defaults
CHANGED
|
@@ -1,40 +1,18 @@
|
|
|
1
|
-
# @plurnk/plurnk-schemes-http —
|
|
2
|
-
#
|
|
3
|
-
# Every knob this package reads, family-namespaced PLURNK_SCHEMES_HTTP_*. This
|
|
4
|
-
# file is the canonical value registry; {§http-config} owns policy. The daemon
|
|
5
|
-
# assembles every installed member's .env.defaults into one operative floor at
|
|
6
|
-
# boot, set-if-unset under the operator's env {§operator-config-env-defaults}.
|
|
7
|
-
# UNCOMMENTED keys are real defaults the floor sets. COMMENTED keys are modes
|
|
8
|
-
# whose ABSENCE is meaningful (unset = the documented behavior) — the floor
|
|
9
|
-
# must not set them. Standalone (no daemon), the required numerics fail hard
|
|
10
|
-
# when unset, naming the var.
|
|
11
|
-
#
|
|
12
|
-
# ── Required (acquisition path) ─────────────────────────────────────────────
|
|
13
|
-
# HTTP request timeout in ms.
|
|
14
|
-
PLURNK_SCHEMES_HTTP_FETCH_TIMEOUT=30000
|
|
1
|
+
# @plurnk/plurnk-schemes-http — HTTP acquisition and streams.
|
|
15
2
|
|
|
16
|
-
#
|
|
17
|
-
|
|
18
|
-
#
|
|
19
|
-
#
|
|
20
|
-
# 0 opts into revalidation on every read via ETag/304.
|
|
21
|
-
# Required read: unset crashes, naming the var.
|
|
3
|
+
# Request deadline, ms.
|
|
4
|
+
PLURNK_SCHEMES_HTTP_FETCH_TIMEOUT=30000
|
|
5
|
+
# Stored URL freshness, ms; within the TTL, READ performs no request.
|
|
6
|
+
# 0 = revalidate on every READ (ETag/304 when available).
|
|
22
7
|
PLURNK_SCHEMES_HTTP_TTL_MS=300000
|
|
23
|
-
#
|
|
24
|
-
# checked; 0 follows none. Required read: unset crashes, naming the var.
|
|
8
|
+
# Maximum automatic redirect hops; 0 = none.
|
|
25
9
|
PLURNK_SCHEMES_HTTP_REDIRECTS=5
|
|
26
|
-
# Maximum buffered characters
|
|
27
|
-
# bound terminates the remote stream instead of allowing unbounded memory growth.
|
|
10
|
+
# Maximum buffered characters per incomplete SSE line/event; overflow terminates the stream.
|
|
28
11
|
PLURNK_SCHEMES_HTTP_SSE_MAX_BUFFER_CHARS=1048576
|
|
29
|
-
# Maximum characters
|
|
30
|
-
# diagnostic in a model-facing Problem detail. Complete errors remain in daemon
|
|
31
|
-
# diagnostics.
|
|
12
|
+
# Maximum diagnostic characters in model-facing errors; daemon diagnostics remain complete.
|
|
32
13
|
PLURNK_SCHEMES_HTTP_ERROR_DETAIL_LIMIT=512
|
|
33
14
|
|
|
34
|
-
#
|
|
35
|
-
#
|
|
36
|
-
#
|
|
37
|
-
# key. Absence (unset) of either keeps the installed HTML projection as the
|
|
38
|
-
# local floor; the plugin documents its own depth/timeout knobs.
|
|
15
|
+
# Optional HTML materializer; unset = installed local HTML projection.
|
|
16
|
+
# @plurnk/plurnk-schemes-http-tavily ships with the service; it needs TAVILY_API_KEY in the
|
|
17
|
+
# service environment and this selection to take part.
|
|
39
18
|
# PLURNK_SCHEMES_HTTP_MATERIALIZER=tavily-extract
|
|
40
|
-
# TAVILY_API_KEY=...
|
package/README.md
CHANGED
|
@@ -10,13 +10,13 @@ authored against the DB-free
|
|
|
10
10
|
|
|
11
11
|
| Operation | Behavior |
|
|
12
12
|
| ---------------------------------------------- | ----------------------------------------------------------------------------------------- |
|
|
13
|
-
|
|
|
14
|
-
|
|
|
15
|
-
|
|
|
16
|
-
|
|
|
17
|
-
|
|
|
18
|
-
|
|
|
19
|
-
|
|
|
13
|
+
| ```` ```READ (http(s)://…) ```` | Fetch or reuse/revalidate a GET representation, then stream the selected response channel |
|
|
14
|
+
| ```` ```READ (http(s)://…) <scope> ```` | Apply the standard entry READ to an already-materialized response without refetching |
|
|
15
|
+
| ```` ```FIND (http(s)://…) ```` with matcher body | Materialize an exact URL when required, then use the universal entry query and matcher |
|
|
16
|
+
| ```` ```SEND (http(s)://…) ```` with body | POST the body and stream the response |
|
|
17
|
+
| ```` ```EDIT (http(s)://…) ```` with body | PUT a whole-resource replacement; line-scoped HTTP edits are invalid |
|
|
18
|
+
| ```` ```KILL (http(s)://…) ```` | Cancel a live acquisition of the address, or forget its stored response |
|
|
19
|
+
| ```` ```KILL (http(s)://…) [{"remote": true}] ```` | DELETE the remote resource and stream the response |
|
|
20
20
|
|
|
21
21
|
A path-pattern FIND surveys already-materialized web entries; it does not crawl
|
|
22
22
|
or discover the remote web. Exact matcher FIND shares the standard flat
|
|
@@ -48,10 +48,10 @@ projection ceiling returns `413`.
|
|
|
48
48
|
`body`; otherwise the installed HTML reader is the local route. Recoverable
|
|
49
49
|
materializer failures use that same reader as a `203` recovery floor. Hard
|
|
50
50
|
provider failures do not silently change producers.
|
|
51
|
-
- `body`, `header`, and `
|
|
52
|
-
determines operation success, so raw server source and evidence remain
|
|
53
|
-
when
|
|
54
|
-
failure without fabricating HTML.
|
|
51
|
+
- `body`, `header`, and `readable` settle independently. The selected channel
|
|
52
|
+
determines operation success, so the raw server source and evidence remain
|
|
53
|
+
usable when the projection fails, and a provider's Markdown can survive origin
|
|
54
|
+
transport failure without fabricating HTML.
|
|
55
55
|
- GET representations carry method, acquisition-time, and single-variant cache
|
|
56
56
|
metadata; HTML adds materializer-route evidence, and local derivation adds
|
|
57
57
|
projection identity. Request metadata, `Vary`, `no-store`, expired freshness,
|
|
@@ -83,7 +83,7 @@ To select a page-materializer plugin for generic public HTML materialization,
|
|
|
83
83
|
install it and set `PLURNK_SCHEMES_HTTP_MATERIALIZER=<id>` in `.env` (the
|
|
84
84
|
`@plurnk/plurnk-schemes-http-tavily` showcase plugin supplies `tavily-extract`).
|
|
85
85
|
Without a selection, `@plurnk/plurnk-mimetypes-text-html` supplies the local
|
|
86
|
-
|
|
86
|
+
`readable` projection.
|
|
87
87
|
|
|
88
88
|
## Verify
|
|
89
89
|
|
package/SPEC.md
CHANGED
|
@@ -20,9 +20,9 @@ the DB-free `SchemeCtx` author contract.
|
|
|
20
20
|
|
|
21
21
|
| Channel | Seed type | Meaning |
|
|
22
22
|
| -------- | --------------------------- | ------------------------------------------------------------------------------ |
|
|
23
|
-
| `body`
|
|
24
|
-
| `header`
|
|
25
|
-
| `
|
|
23
|
+
| `body` | `application/octet-stream` | The response as served: source text, an HTML page's server source, derived Unicode for binary, SSE data |
|
|
24
|
+
| `header` | `text/plain` | Origin, acquisition, materializer, projection, provider, and usage evidence |
|
|
25
|
+
| `readable` | `text/markdown` | An HTML page's curated Markdown: the selected materializer's, or the installed local projection ({§readable-channel} in the core specification) |
|
|
26
26
|
|
|
27
27
|
`package.json#plurnk.schemes` registers `http` through the default export and
|
|
28
28
|
`wss` through `Ws`.
|
|
@@ -41,17 +41,17 @@ preserved exactly.
|
|
|
41
41
|
|
|
42
42
|
| Operation | Remote action | Contract |
|
|
43
43
|
| ------------------------------------------ | ------------------------------------- | --------------------------------------------------------------------------------------- |
|
|
44
|
-
| Exact
|
|
45
|
-
| Exact
|
|
46
|
-
|
|
|
47
|
-
|
|
|
48
|
-
|
|
|
49
|
-
|
|
|
50
|
-
|
|
|
44
|
+
| Exact ```` ```READ (url) <scope?> ```` | GET unless a fresh GET copy is usable | Prepare one complete canonical representation, then let core select and project it |
|
|
45
|
+
| Exact ```` ```FIND (url) ```` | GET only when acquisition is required | Use the same preparation, then universal query, matcher, weighting, and pagination |
|
|
46
|
+
| ```` ```FIND (pattern-url) ```` | None | Query already-materialized web entries; a path pattern does not discover the remote web |
|
|
47
|
+
| ```` ```SEND (url) ```` with body | POST | Stream and persist the response under the addressed URL |
|
|
48
|
+
| ```` ```EDIT (url) ```` with body | PUT | Replace the whole remote resource; a line marker is invalid |
|
|
49
|
+
| ```` ```KILL (url) ```` | None | {§http-kill}: cancel the workspace's live acquisitions of the URL, else delete the local stored entry |
|
|
50
|
+
| ```` ```KILL (url) [{"remote": true}] ```` | DELETE | Delete the remote resource and stream its response; other metadata blocks are its headers |
|
|
51
51
|
|
|
52
52
|
Finite GET uses scope-blind representation preparation; POST, PUT, DELETE,
|
|
53
53
|
and genuinely live GET responses retain the subscription path. Request
|
|
54
|
-
headers are ordered scheme metadata: one `{Key: value}` block after the target
|
|
54
|
+
headers are ordered scheme metadata: one `[{"Key": "value"}]` block after the target
|
|
55
55
|
per header. HTTP alone parses those opaque blocks; the resource target remains
|
|
56
56
|
pure. A loop SEND signal is never the remote HTTP status; remote status and
|
|
57
57
|
headers are persisted in `header`.
|
|
@@ -95,8 +95,8 @@ but cold and warm representations pass through the same core projection.
|
|
|
95
95
|
|
|
96
96
|
| Response | `body` | Auxiliary materialization | Completion |
|
|
97
97
|
| --------------------------------------- | -------------------------------------------------------- | --------------------------------------------------------- | ------------------------------------------- |
|
|
98
|
-
| Negotiated origin Markdown | Exact origin Markdown |
|
|
99
|
-
| HTML-page production | Materializer Markdown, local Markdown, or independent error
|
|
98
|
+
| Negotiated origin Markdown | Exact origin Markdown | None: readable text is the source itself; one request | Static representation, then core projection |
|
|
99
|
+
| HTML-page production | Exact server source when the origin supplied it | Materializer Markdown, local Markdown, or independent error in `readable` | Static representation, then core projection |
|
|
100
100
|
| `text/event-stream` | One `data` value plus newline per `text/plain` chunk | Initial response in `header` | `102`; origin close settles subscription |
|
|
101
101
|
| No response body | Present empty text | Response and package metadata in `header` | Static representation; body READ is `204` |
|
|
102
102
|
| Origin HTTP `4xx`/`5xx` | Preserve available origin or independently produced text | Exact response evidence; origin-backed channels errored | Selected channel's durable outcome |
|
|
@@ -116,7 +116,7 @@ returns the selected channel's requested text projection.
|
|
|
116
116
|
| ----------------------------- | ------------------------------------------------------------------------------------------------ |
|
|
117
117
|
| Response media type | WHATWG `MIMEType` essence; absent or unparseable metadata becomes `application/octet-stream` |
|
|
118
118
|
| Finite GET text | Fetch `Response.text()` UTF-8 decoding; buffering does not select a different character encoding |
|
|
119
|
-
| Streamed mutation response | Incremental replacement-mode UTF-8 through `TextDecoder
|
|
119
|
+
| Streamed mutation response | Incremental replacement-mode UTF-8 through `TextDecoder`; finite JSON documents publish after completion, other text preserves incremental backpressure |
|
|
120
120
|
| `charset` parameter | Preserve in `header` as origin evidence; it does not replace Fetch text decoding |
|
|
121
121
|
| JSON and XML textual families | Use the same HTTP byte-to-string rule; format projections consume the resulting Unicode string |
|
|
122
122
|
| Direct HTML GET | Fetch UTF-8 decoding of origin server HTML |
|
|
@@ -128,6 +128,13 @@ A configured binary type bypasses it and enters the mimetype family's bounded
|
|
|
128
128
|
readable-byte projection {§mimetype-binary-input}; raw bytes never become a
|
|
129
129
|
durable channel.
|
|
130
130
|
|
|
131
|
+
§http-json-presentation Finite `application/json` and `+json` responses use
|
|
132
|
+
{§json-document-presentation} in their canonical body channel before indexing,
|
|
133
|
+
scope selection, or previews. Both GET and mutation responses follow this rule.
|
|
134
|
+
Malformed JSON remains unchanged; interrupted mutation responses preserve the
|
|
135
|
+
received partial text and the acquisition failure. Request bodies, authored
|
|
136
|
+
entries, non-JSON text, SSE, and JSONL retain their original formatting.
|
|
137
|
+
|
|
131
138
|
### §html-materialization Readable materialization
|
|
132
139
|
|
|
133
140
|
`WebFetcher.materialize` is the shared readable-representation seam for exact
|
|
@@ -141,12 +148,12 @@ mutation responses retain incremental streaming.
|
|
|
141
148
|
| Configured binary with reader | Apply the bounded byte projection | Derived Unicode plus source type and identity |
|
|
142
149
|
| Configured binary without reader | Cancel without retaining bytes | `null`; the consumer applies its absence policy |
|
|
143
150
|
| Binary input exceeds the common bound | Cancel and preserve the typed cause | `WebMaterializationError` caused by `ProjectionInputLimitError` |
|
|
144
|
-
| Negotiated origin `text/markdown` | Accept it without the materializer | Exact Markdown in `body`;
|
|
145
|
-
| Eligible HTML with a materializer selected | Use the materializer as the
|
|
146
|
-
| Ineligible HTML or no materializer selected | Use the installed HTML projection |
|
|
147
|
-
| Recoverable materializer failure with HTML | Use the installed projection as recovery |
|
|
148
|
-
| Hard materializer failure | Preserve evidence; do not run local recovery | `
|
|
149
|
-
| Materializer success after origin loss | Preserve provider
|
|
151
|
+
| Negotiated origin `text/markdown` | Accept it without the materializer | Exact Markdown in `body`; no `readable`, no second request |
|
|
152
|
+
| Eligible HTML with a materializer selected | Use the materializer as the readable producer | Origin server source in `body`; materializer Markdown in `readable` |
|
|
153
|
+
| Ineligible HTML or no materializer selected | Use the installed HTML projection | Origin server source in `body`; local Markdown in `readable` |
|
|
154
|
+
| Recoverable materializer failure with HTML | Use the installed projection as recovery | Source in `body`; local Markdown in `readable` with terminal `203` |
|
|
155
|
+
| Hard materializer failure | Preserve evidence; do not run local recovery | `readable` errored; independently successful `body`/`header` survive |
|
|
156
|
+
| Materializer success after origin loss | Preserve provider text and origin failure | `readable` static; `body` errored with the origin's own failure |
|
|
150
157
|
| Projection implementation throws | Stop and preserve the cause | `WebMaterializationError` with stage `projection` |
|
|
151
158
|
|
|
152
159
|
A projection object is present even when its content is `""`; only `null`
|
|
@@ -184,19 +191,21 @@ a silent fallback. A selected id with no installed provider fails hard rather
|
|
|
184
191
|
than degrading silently.
|
|
185
192
|
|
|
186
193
|
Without server HTML, no local recovery input exists. A materializer success can
|
|
187
|
-
still close `
|
|
188
|
-
`
|
|
194
|
+
still close `readable`, but every materializer failure remains the readable
|
|
195
|
+
failure, and `body` closes errored with the origin's own failure.
|
|
189
196
|
|
|
190
197
|
#### §http-channel-outcomes Channel outcomes
|
|
191
198
|
|
|
192
|
-
For finite HTML-page production, `body`, `header`, and `
|
|
199
|
+
For finite HTML-page production, `body`, `header`, and `readable` have independent
|
|
193
200
|
durable outcomes and are written atomically. The selected channel alone
|
|
194
|
-
determines the projected operation result: successful `#
|
|
201
|
+
determines the projected operation result: successful `#readable` or `#header` can
|
|
195
202
|
be read when `body` failed, and a successful default `body` is not invalidated
|
|
196
|
-
by
|
|
197
|
-
their exact `producerResult`. A recoverable local
|
|
198
|
-
channel with producer status `203`, so cold and warm READ both return
|
|
199
|
-
content with that same status.
|
|
203
|
+
by an errored `readable`. Unselected failures remain `errored` channels carrying
|
|
204
|
+
their exact `producerResult`. A recoverable local projection remains a static
|
|
205
|
+
`readable` channel with producer status `203`, so cold and warm READ both return
|
|
206
|
+
its content with that same status. Every READ names the page's other channels
|
|
207
|
+
with their tokens ({§channel-selection-visibility}), so a READ of the source
|
|
208
|
+
shows that `#readable` exists before the model has ever listed the page.
|
|
200
209
|
|
|
201
210
|
Exact READ, exact FIND, and executor materialization preserve the same channel
|
|
202
211
|
representation. A missing source variant is an explicit empty `errored`
|
|
@@ -238,7 +247,8 @@ an origin is first being read.
|
|
|
238
247
|
| SSE cancellation after acquisition | `102` initial; terminal `499` |
|
|
239
248
|
| SSE parser/transfer failure after acquisition | `102` initial; terminal `502` |
|
|
240
249
|
| Multi-statement HTTP edit batch | `409` (`non-atomic-edit-batch`) |
|
|
241
|
-
| Invalid target,
|
|
250
|
+
| Invalid target, line edit, or URL userinfo | `400` with the corresponding stable Problem kind |
|
|
251
|
+
| Missing response channel | `404 channel-not-found` under {§channel-selection-missing}; no remote mutation |
|
|
242
252
|
| Non-corresponding 304 | `502` (`fetch-failed`) |
|
|
243
253
|
| Acquisition failure without a successful provider body | `502` (`fetch-failed`) |
|
|
244
254
|
| Projection exception | `500` (`projection-failed`) |
|
|
@@ -247,8 +257,8 @@ an origin is first being read.
|
|
|
247
257
|
An HTTP error status is still a successfully acquired direct response: its
|
|
248
258
|
content and response evidence are preserved, and origin-backed channels carry
|
|
249
259
|
that exact status as durable producer evidence. HTML still enters page
|
|
250
|
-
production, so a successful materializer `
|
|
251
|
-
origin `
|
|
260
|
+
production, so a successful materializer `readable` can remain readable while the
|
|
261
|
+
origin `body` records the HTTP error. Automatic WebFetcher acquisition instead treats
|
|
252
262
|
a non-2xx response as unavailable. Handler failures use RFC 9457 Problem Details.
|
|
253
263
|
Caught direct-acquisition diagnostics are bounded by
|
|
254
264
|
`PLURNK_SCHEMES_HTTP_ERROR_DETAIL_LIMIT` in model-facing detail while complete
|
|
@@ -421,7 +431,7 @@ later GET or exact-FIND acquisition. An unmarked authored entry and an eligible
|
|
|
421
431
|
stored GET remain visible to universal FIND as durable evidence; exact HTTP
|
|
422
432
|
preparation applies the policy above. A metadata-less `KILL` deletes the stored entry ({§http-kill}).
|
|
423
433
|
|
|
424
|
-
§http-kill **KILL follows the entry rule; the remote DELETE is its own spelling.**
|
|
434
|
+
§http-kill **KILL follows the entry rule; the remote DELETE is its own spelling.** ```` ```KILL (url) ```` cancels all live acquisitions of that exact URL within the workspace — GET, SSE, or mutations — by aborting their registered controllers; each initiating operation settles itself as `499` cancelled; with nothing in flight it deletes the local stored entry so the next READ must acquire again. Only ```` ```KILL (url) [{"remote": true}] ```` sends the HTTP DELETE, and its remaining metadata blocks are that request's headers. A KILL never reaches the remote by accident.
|
|
425
435
|
|
|
426
436
|
### §sse Server-sent events
|
|
427
437
|
|
|
@@ -482,11 +492,11 @@ stateDiagram-v2
|
|
|
482
492
|
|
|
483
493
|
| Operation or event | Contract |
|
|
484
494
|
| --------------------------------- | ---------------------------------------------------------------------------------------------------------------- |
|
|
485
|
-
|
|
|
486
|
-
| Concurrent duplicate READ | `
|
|
487
|
-
|
|
|
488
|
-
|
|
|
489
|
-
|
|
|
495
|
+
| ```` ```READ (ws(s)://…) ```` | Claim, seed/subscribe, construct `CONNECTING`, then return `102` after native `open` plus durable activation |
|
|
496
|
+
| Concurrent duplicate READ | Join the pending acquisition; once acquired, observe the shared connection with `200` and its connection state. Never create a second subscription or socket. |
|
|
497
|
+
| ```` ```EDIT (ws(s)://…) ```` | Send one whole text frame only for an open owner; line ranges and multi-statement batches are rejected |
|
|
498
|
+
| ```` ```SEND (ws(s)://…) ```` with body | Send only for owner `open` plus native `readyState=OPEN`; absent or non-open owner is `409`; send throw is `502` |
|
|
499
|
+
| ```` ```KILL (ws(s)://…) ```` | Close/cancel the claimed owner; no owner is `404`; an attempted close throw is `502` |
|
|
490
500
|
| Inbound frame after native `open` | Join the owner's persistence chain; the next write begins only after the preceding write succeeds |
|
|
491
501
|
| Binary frame after native `open` | Retain the text prefix, prune the binary and later frames, settle `415 binary-frame-unsupported`, close with private-use code `4003` |
|
|
492
502
|
| First inbound persistence failure | Retain the successful prefix, prune queued and later frames, and settle with `500 message-persistence-failed` |
|
|
@@ -496,13 +506,13 @@ stateDiagram-v2
|
|
|
496
506
|
|
|
497
507
|
Markerless single-statement EDIT and SEND with signal `200` converge on one
|
|
498
508
|
outbound text-frame path and have the same connection and transport outcomes.
|
|
499
|
-
|
|
500
|
-
READ
|
|
501
|
-
the opening READ in the same turn.
|
|
509
|
+
Authored dispatch order ({§op-execution-order}) lets either write follow the
|
|
510
|
+
opening READ in the same turn, after acquisition establishes the live owner.
|
|
502
511
|
|
|
503
|
-
The in-instance registry is keyed by
|
|
504
|
-
|
|
505
|
-
|
|
512
|
+
The in-instance registry is keyed by workspace and complete canonical network
|
|
513
|
+
URL, matching the commons entry. Workers share the connection and may SEND or
|
|
514
|
+
KILL it; acquisition attribution and settlement remain with its initiating
|
|
515
|
+
operation ({§runtime-resource-binding}). The claim remains registered through terminal
|
|
506
516
|
cleanup, so a new READ cannot overlap an owner's subscription settlement. Every
|
|
507
517
|
terminal path drains retained owner work, closes the transport when necessary,
|
|
508
518
|
closes the durable subscription, then releases the claim. A persistence failure
|
|
@@ -515,5 +525,5 @@ transport-close failures under {§handler-lifecycle}.
|
|
|
515
525
|
| ------------------ | ------------------------------------------------------------------------------------------------------- |
|
|
516
526
|
| Payload projection | String event data only into `text/plain`; binary data terminates with Plurnk `415` and private-use WebSocket code `4003` |
|
|
517
527
|
| Reconnection | None; READ again after terminal cleanup |
|
|
518
|
-
| Handshake metadata | `
|
|
528
|
+
| Handshake metadata | `[metadata]` is unsupported; the default global-WebSocket identity is used |
|
|
519
529
|
| Runtime | Node ≥26 |
|
package/dist/Http.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Http.d.ts","sourceRoot":"","sources":["../src/Http.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,SAAS,EAA6C,iBAAiB,EAAE,cAAc,EAAE,aAAa,EAAE,gCAAgC,EAAE,+BAA+B,EAAE,aAAa,EAAE,qBAAqB,EAAE,aAAa,EAAmF,MAAM,wBAAwB,CAAC;AAsL9V,MAAM,CAAC,OAAO,OAAO,IAAK,YAAW,aAAa;;IAC9C,MAAM,CAAC,QAAQ,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"Http.d.ts","sourceRoot":"","sources":["../src/Http.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,SAAS,EAA6C,iBAAiB,EAAE,cAAc,EAAE,aAAa,EAAE,gCAAgC,EAAE,+BAA+B,EAAE,aAAa,EAAE,qBAAqB,EAAE,aAAa,EAAmF,MAAM,wBAAwB,CAAC;AAsL9V,MAAM,CAAC,OAAO,OAAO,IAAK,YAAW,aAAa;;IAC9C,MAAM,CAAC,QAAQ,EAAE,cAAc,CAuB7B;IAUF,cAKC;IAEK,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAE3B;IAKK,qBAAqB,CACvB,OAAO,EAAE,gCAAgC,EACzC,GAAG,EAAE,SAAS,GACf,OAAO,CAAC,+BAA+B,CAAC,CAS1C;IAIK,SAAS,CAAC,UAAU,EAAE,SAAS,qBAAqB,EAAE,EAAE,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAqCxG;IAEK,IAAI,CAAC,SAAS,EAAE,qBAAqB,EAAE,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAEvF;IAKK,IAAI,CAAC,SAAS,EAAE,aAAa,EAAE,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAsB/E;IAGK,IAAI,CAAC,SAAS,EAAE,aAAa,EAAE,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAS/E;CAuiBJ"}
|
package/dist/Http.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// acquisition, materialization, publication, and query flow live in
|
|
3
3
|
// {§http-lifecycle}. The implementation depends only on SchemeCtx capabilities.
|
|
4
4
|
import { createParser } from "eventsource-parser";
|
|
5
|
-
import { MimetypeClassifier, NetworkAddress, ProjectionInputLimitError, Results } from "@plurnk/plurnk-schemes";
|
|
5
|
+
import { MetadataOptions, MimetypeClassifier, NetworkAddress, ProjectionInputLimitError, Results } from "@plurnk/plurnk-schemes";
|
|
6
6
|
import { readFile } from "node:fs/promises";
|
|
7
7
|
import ErrorDetail from "./ErrorDetail.js";
|
|
8
8
|
import WebFetcher, { CACHE_VARIANT_HEADER, MATERIALIZER_ID_HEADER, PROJECTION_ID_HEADER, cacheVariantEvidence, classifyCacheVariant } from "./WebFetcher.js";
|
|
@@ -146,25 +146,16 @@ export default class Http {
|
|
|
146
146
|
// response Content-Type or the configured readable projection type;
|
|
147
147
|
// octet-stream is the honest "unknown until fetched". header is always the status
|
|
148
148
|
// line + headers (text/plain).
|
|
149
|
-
|
|
149
|
+
// {§readable-channel} — body is the response as served (a page's server source); readable
|
|
150
|
+
// is a page's curated Markdown, materializer or local projection; header is evidence.
|
|
151
|
+
channels: { [BODY]: "application/octet-stream", [HEADER]: "text/plain", readable: "text/markdown" },
|
|
150
152
|
defaultChannel: BODY,
|
|
151
153
|
category: "data",
|
|
152
|
-
entryOwner: "worker",
|
|
153
|
-
inherit: "snapshot",
|
|
154
154
|
writableBy: ["model", "client"],
|
|
155
155
|
volatile: true, // remote content can change between fetches
|
|
156
156
|
modelVisible: true,
|
|
157
157
|
metadataModifier: true,
|
|
158
158
|
glyph: "🌐",
|
|
159
|
-
example: [
|
|
160
|
-
"### READ0 (https://example.com/page)",
|
|
161
|
-
"",
|
|
162
|
-
"### EDIT0 (https://api.example.com/v1/pets/42) {Content-Type: application/json}",
|
|
163
|
-
'{"name":"Mango","status":"available"}',
|
|
164
|
-
"",
|
|
165
|
-
"### SEND0 (https://api.example.com/v1/pets) {Content-Type: application/json}",
|
|
166
|
-
'{"name":"Mango","status":"available"}',
|
|
167
|
-
].join("\n"),
|
|
168
159
|
documentation,
|
|
169
160
|
traits: ["web"],
|
|
170
161
|
};
|
|
@@ -231,7 +222,7 @@ export default class Http {
|
|
|
231
222
|
}
|
|
232
223
|
// {§http-kill} — KILL follows the entry rule: a live acquisition of the address is
|
|
233
224
|
// cancelled, otherwise the stored response is forgotten. The remote DELETE is its own
|
|
234
|
-
// spelling,
|
|
225
|
+
// spelling, `KILL (https://…) [{"remote": true}]`; any other metadata keys are its headers.
|
|
235
226
|
async kill(statement, ctx) {
|
|
236
227
|
if (statement.target === null || statement.target.kind !== "url") {
|
|
237
228
|
return Http.#bad(400, "http", "bad-target", "KILL requires an http(s):// URL target.", {
|
|
@@ -240,23 +231,24 @@ export default class Http {
|
|
|
240
231
|
retryable: false,
|
|
241
232
|
});
|
|
242
233
|
}
|
|
243
|
-
const
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
234
|
+
const read = MetadataOptions.parse(statement.metadata, "scheme:http");
|
|
235
|
+
if ("failure" in read)
|
|
236
|
+
return read.failure;
|
|
237
|
+
if (read.options.remote === true) {
|
|
238
|
+
const { remote: _remote, ...headers } = read.options;
|
|
239
|
+
const blocks = Object.keys(headers).length === 0 ? null : [JSON.stringify(headers)];
|
|
240
|
+
return this.#requester.request(statement.target, blocks, ctx, "DELETE", undefined);
|
|
248
241
|
}
|
|
249
242
|
const address = Http.#address(statement.target);
|
|
250
243
|
if (!(address instanceof NetworkAddress))
|
|
251
244
|
return address;
|
|
252
|
-
if (this.#live.cancel(LiveAcquisitions.key(ctx.
|
|
245
|
+
if (this.#live.cancel(LiveAcquisitions.key(ctx.workspaceId, address.url))) {
|
|
253
246
|
// The owner settles itself as cancelled through its aborted signal.
|
|
254
247
|
return { shape: "passthrough", status: 200 };
|
|
255
248
|
}
|
|
256
249
|
return Http.#passthrough(await ctx.entries.delete(address.pathname));
|
|
257
250
|
}
|
|
258
|
-
//
|
|
259
|
-
// reaches a scheme, and any other status is refused 501 ({§send-label}).
|
|
251
|
+
// {§turn-disposition} — SEND is messaging; lifecycle operations never reach a scheme.
|
|
260
252
|
async send(statement, ctx) {
|
|
261
253
|
if (statement.target === null || statement.target.kind !== "url") {
|
|
262
254
|
return Http.#bad(400, "http", "bad-target", "SEND requires an http(s):// URL target.", {
|
|
@@ -265,18 +257,7 @@ export default class Http {
|
|
|
265
257
|
retryable: false,
|
|
266
258
|
});
|
|
267
259
|
}
|
|
268
|
-
|
|
269
|
-
if (statement.status === null) {
|
|
270
|
-
const body = statement.body?.raw ?? "";
|
|
271
|
-
return this.#requester.request(statement.target, statement.metadata, ctx, "POST", body);
|
|
272
|
-
}
|
|
273
|
-
const status = statement.status;
|
|
274
|
-
// Entry-bearing schemes return 501 for status codes they don't interpret.
|
|
275
|
-
return Http.#bad(501, "http", "send-status-unsupported", `The HTTP scheme does not interpret SEND status ${status}.`, {
|
|
276
|
-
requestedStatus: status,
|
|
277
|
-
stage: "dispatch",
|
|
278
|
-
retryable: false,
|
|
279
|
-
});
|
|
260
|
+
return this.#requester.request(statement.target, statement.metadata, ctx, "POST", statement.body?.raw ?? "");
|
|
280
261
|
}
|
|
281
262
|
// {§http-manifest}/{§http-lifecycle} Seed the declared channel shape before
|
|
282
263
|
// open(); notifyChunk later welds acquired content to its actual mimetype.
|
|
@@ -429,20 +410,22 @@ export default class Http {
|
|
|
429
410
|
}
|
|
430
411
|
return address;
|
|
431
412
|
}
|
|
413
|
+
// {§scheme-metadata-modifier} The request's [metadata] object is its header map:
|
|
414
|
+
// every key is a header name and every value a header string. `remote` on KILL
|
|
415
|
+
// is the one non-header key, consumed before the headers are read.
|
|
432
416
|
static #requestHeaders(metadata) {
|
|
433
|
-
|
|
434
|
-
|
|
417
|
+
const read = MetadataOptions.parse(metadata, "scheme:http");
|
|
418
|
+
if ("failure" in read)
|
|
419
|
+
return read.failure;
|
|
435
420
|
const headers = [];
|
|
436
|
-
for (const [
|
|
437
|
-
const colon = block.indexOf(":");
|
|
438
|
-
if (colon < 0) {
|
|
439
|
-
return Http.#bad(400, "http", "metadata-header-shape", `HTTP metadata block ${index + 1} requires a header name and ':' separator.`, { block: index + 1, retryable: false });
|
|
440
|
-
}
|
|
441
|
-
const name = block.slice(0, colon).trim();
|
|
421
|
+
for (const [name, value] of Object.entries(read.options)) {
|
|
442
422
|
if (!/^[!#$%&'*+.^_`|~0-9A-Za-z-]+$/u.test(name)) {
|
|
443
|
-
return Http.#bad(400, "http", "metadata-header-name", `HTTP metadata
|
|
423
|
+
return Http.#bad(400, "http", "metadata-header-name", `HTTP metadata key '${name}' is not a valid header name.`, { retryable: false });
|
|
424
|
+
}
|
|
425
|
+
if (typeof value !== "string") {
|
|
426
|
+
return Http.#bad(400, "http", "metadata-header-shape", `HTTP header '${name}' requires a string value.`, { retryable: false });
|
|
444
427
|
}
|
|
445
|
-
headers.push([name,
|
|
428
|
+
headers.push([name, value.trim()]);
|
|
446
429
|
}
|
|
447
430
|
return headers;
|
|
448
431
|
}
|
package/dist/Http.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Http.js","sourceRoot":"","sources":["../src/Http.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Http.js","sourceRoot":"","sources":["../src/Http.ts"],"names":[],"mappings":"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"}
|