@kehto/paja 0.16.0 → 0.16.2

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 CHANGED
@@ -183,8 +183,10 @@ node scripts/build-paja-pages.mjs
183
183
  ```
184
184
 
185
185
  When `PAJA_UPLOAD_SERVERS` is set, the runtime enables the Blossom upload rail
186
- with server discovery and uses those servers for Blossom NAP-RESOURCE
187
- resolution too.
186
+ and also makes those servers explicit NAP-RESOURCE fallbacks. It is not needed
187
+ for read-side discovery: resources learned through OUTBOX use their event hints
188
+ and hinted-author/publisher server lists first, then the active shell user's
189
+ published list.
188
190
 
189
191
  ## Installed intent handlers and delivery
190
192
 
@@ -306,16 +308,28 @@ Paja's developer-runtime policy accepts arbitrary `http:` and `https:` resource
306
308
  URLs so a normal remote image does not look broken merely because its origin was
307
309
  not pre-granted. Paja resolves those URLs with browser `fetch`, omits credentials
308
310
  and referrer data, caps responses at 10 MiB, and classifies MIME from returned
309
- bytes. Browser network and CORS rules still apply: an unreadable response is the
311
+ bytes. Its byte classifier recognizes checksum-valid Game Boy ROM headers as
312
+ `application/vnd.nintendo.gb-rom`; it never trusts a server-supplied media type.
313
+ Browser network and CORS rules still apply: an unreadable response is the
310
314
  canonical `network-error`, while any CORS-readable response is returned as NAP
311
315
  bytes.
312
316
 
313
317
  `data:` remains locally decoded. `blossom:` is a separate, content-addressed
314
318
  boundary and is advertised because each request may provide server locations
315
319
  without a host default. Paja accepts only public-looking HTTPS origin hints,
316
- discards invalid/private literals, deduplicates them, and tries them before
317
- host-configured runtime-pointer or upload defaults. The combined list is capped
318
- at eight candidates. The only accepted identifier is `blossom:sha256:<hex>`;
320
+ discards invalid/private literals, and deduplicates them. For a canonical URL
321
+ previously returned to the same napplet window by `outbox.getEvent`,
322
+ `outbox.query`, or `outbox.subscribe`, Paja retains bounded event context
323
+ without prefetching bytes. Resolution tries request and
324
+ event-local server hints first, then lazily queries hinted authors' and the
325
+ event publisher's newest BUD-03 kind `10063` lists through the verified
326
+ NIP-65-aware OUTBOX router, then queries the active shell user's BUD-03 list
327
+ through that same router, then uses host-configured runtime-pointer and
328
+ upload-runtime fallbacks. The user-list
329
+ lookup works independently of upload mode; an upload runtime may reuse the same
330
+ servers when present. ROM-specific event and publisher locations retain
331
+ priority over the user/runtime fallbacks. The combined list is capped at eight
332
+ candidates. The only accepted identifier is `blossom:sha256:<hex>`;
319
333
  Paja refuses redirects, verifies the requested SHA-256, and permits plain-HTTP
320
334
  transport only for configured loopback development defaults. Browser-only Paja
321
335
  cannot pin DNS results, so production runtimes must add the draft's DNS-time
@@ -323,7 +337,8 @@ private-address checks. This behavior targets draft
323
337
  [NAP-RESOURCE at `9511232`](https://github.com/napplet/naps/blob/9511232f69313aa7953d110e35d32cc28d506f66/naps/NAP-RESOURCE.md), with the merged package implementation
324
338
  [`napplet/web#206@19e0029b`](https://github.com/napplet/web/pull/206) released as
325
339
  `@napplet/core`/`@napplet/nap` 0.32.0, `@napplet/shim` 0.30.0, and
326
- `@napplet/sdk` 0.28.0.
340
+ `@napplet/sdk` 0.28.0. Publisher discovery follows
341
+ [Blossom BUD-03 at `b5bd280`](https://github.com/hzrd149/blossom/blob/b5bd2801d1763aa635fc8fea7a76597e0eb18990/buds/03.md).
327
342
 
328
343
  Full package docs: [`docs/packages/paja.md`](../../docs/packages/paja.md).
329
344
  Getting started: [`docs/how-tos/paja-getting-started.md`](../../docs/how-tos/paja-getting-started.md).