@oddington/sdk 0.1.18 → 0.1.20

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
@@ -12,9 +12,16 @@ same key and content returns the original result; changed content conflicts.
12
12
  Existing Inbox-retained files remain separate from shared Files, with their
13
13
  original identities, bytes and audience. The SDK exposes no raw-credential API.
14
14
 
15
- Focused apps use `inbox.questions.list()` for `AnswerableQuestion[]`, with relevance
16
- bound by the trusted host to the canonical routines in the app declaration.
17
- The same list, answer and Record-search methods work in hosted and local apps.
15
+ Hosted apps use `inbox.questions.list({ routines })` for `AnswerableQuestion[]`.
16
+ Derive `routines` from the existing app declaration with
17
+ `[...new Set(Object.values(appDeclaration.routines).map(binding => binding.routine))]`.
18
+ These inner canonical names narrow relevance only; they grant no answer or
19
+ Record-search authority. The ordinary authenticated Inbox context needs no app
20
+ identity or declaration provisioning. The filter is required; `[]` returns no
21
+ Questions after authentication. The SDK validates and privately snapshots the
22
+ filter across pagination. Local apps use `inbox.questions.list()` instead, bound
23
+ to their trusted host's declaration; any supplied filter is invalid locally.
24
+ Both use the same answer and Record-search methods, without a filter or prior list.
18
25
  `InboxItem` remains the complete first-party Inbox value. Record refs are placement
19
26
  hints only: match them against independently authorized Data, and omit ambiguous
20
27
  detail placement. Keep drafts on failed or uncertain acceptance, prevent duplicate
@@ -312,12 +319,13 @@ both shipped SDK inputs and every emitted helper, rejects unexpected inputs and
312
319
  imports, and retains the full credential/server/customer leak scan. Node retains
313
320
  the complete package-root exports; provider classes are never public.
314
321
 
315
- Current auth measurement is **149,045 minified bytes**, including **5,177 fixture
316
- bytes** and **143,868 SDK bytes**, with **38,870 total gzip bytes**. Current
317
- unchanged Data/Files fixture measures **46,164 total / 5,893 fixture / 40,271 SDK
318
- bytes**, with **14,316 total gzip bytes**.
319
- Both fit their explicitly reviewed ceilings: **41,000 SDK bytes** for the pinned
320
- Data/Files fixture and **150,000 SDK bytes** for the separately pinned auth fixture.
322
+ Current auth measurement is **171,346 minified bytes**, including **6,322 fixture
323
+ bytes** and **165,024 SDK bytes**, with **45,466 total gzip bytes**. Current
324
+ Data/Files fixture measures **47,254 total / 5,893 fixture / 41,361 SDK
325
+ bytes**, with **14,906 total gzip bytes**. The shipped runtime now also carries
326
+ the local Questions transport and transparent Local Host renewal.
327
+ Both fit their explicitly reviewed ceilings: **42,000 SDK bytes** for the pinned
328
+ Data/Files fixture and **166,000 SDK bytes** for the separately pinned auth fixture.
321
329
  Those ceilings are fixed review decisions, not values regenerated from later
322
330
  measurements. The installed auth realm/host-handoff proof passes alongside the
323
331
  Node exports, declarations, tarball leak scan and browser compatibility audits.
@@ -331,17 +339,17 @@ bytes; generated helpers count toward the SDK. Gzip is diagnostic only.
331
339
 
332
340
  | Same named-import fixture | Legacy diagnostic | Current strict proof |
333
341
  | --- | ---: | ---: |
334
- | Total minified JavaScript bytes | 488,539 | 46,164 |
342
+ | Total minified JavaScript bytes | 488,539 | 47,254 |
335
343
  | Fixture-attributed bytes | 5,954 | 5,893 |
336
- | SDK bytes | 482,585 | 40,271 |
337
- | Total gzip bytes | 198,612 | 14,316 |
344
+ | SDK bytes | 482,585 | 41,361 |
345
+ | Total gzip bytes | 198,612 | 14,906 |
338
346
 
339
347
  The legacy diagnostic externalized three unresolved Node built-ins and failed
340
348
  browser compatibility. The current strict proof has no imports, shims or warnings
341
- and reduces SDK bytes by 91.7%. Its literal ceiling is **41,000 SDK bytes**:
342
- 729 bytes of deliberately limited headroom. The reviewed measurement includes
343
- the Local Host bootstrap and opaque browser-auth handoff that `os.init` must
344
- select at runtime. The verifier pins the fixture
349
+ and reduces SDK bytes by 91.4%. Its literal ceiling is **42,000 SDK bytes**:
350
+ 639 bytes of deliberately limited headroom. The reviewed measurement includes
351
+ the Local Host bootstrap, local Questions transport, transparent renewal and
352
+ opaque browser-auth handoff that `os.init` must select at runtime. The verifier pins the fixture
345
353
  hash and bundler version; changing either requires a reviewed measurement
346
354
  comparison. Future ceiling increases require explicit review of added browser
347
355
  capability and must never be automatically regenerated from an oversized output.