@wenathlan/saddle 1.8.13 → 1.8.15
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 +47 -9
- package/dist/binary/archive.d.ts +27 -0
- package/dist/binary/archive.d.ts.map +1 -0
- package/dist/binary/archive.js +46 -0
- package/dist/binary/archive.js.map +1 -0
- package/dist/binary/transform.d.ts +70 -0
- package/dist/binary/transform.d.ts.map +1 -0
- package/dist/binary/transform.js +105 -0
- package/dist/binary/transform.js.map +1 -0
- package/dist/delivery/manifest.d.ts +35 -0
- package/dist/delivery/manifest.d.ts.map +1 -0
- package/dist/delivery/manifest.js +68 -0
- package/dist/delivery/manifest.js.map +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -1
- package/dist/memory/planner.d.ts +66 -0
- package/dist/memory/planner.d.ts.map +1 -0
- package/dist/memory/planner.js +108 -0
- package/dist/memory/planner.js.map +1 -0
- package/dist/runners/chain.d.ts +125 -0
- package/dist/runners/chain.d.ts.map +1 -0
- package/dist/runners/chain.js +95 -0
- package/dist/runners/chain.js.map +1 -0
- package/dist/scrape/robots.js +1 -1
- package/dist/storage/index.d.ts +1 -0
- package/dist/storage/index.d.ts.map +1 -1
- package/dist/storage/index.js +1 -0
- package/dist/storage/index.js.map +1 -1
- package/dist/storage/memory.js +2 -2
- package/dist/storage/memory.js.map +1 -1
- package/dist/storage/pool.d.ts +95 -0
- package/dist/storage/pool.d.ts.map +1 -0
- package/dist/storage/pool.js +202 -0
- package/dist/storage/pool.js.map +1 -0
- package/dist/surfaces/requirements.d.ts +29 -0
- package/dist/surfaces/requirements.d.ts.map +1 -0
- package/dist/surfaces/requirements.js +50 -0
- package/dist/surfaces/requirements.js.map +1 -0
- package/docs/artifactavailability.md +22 -4
- package/docs/ecosystemplan.md +1 -1
- package/docs/enginearchitecture.md +28 -0
- package/docs/plans/00.index.md +2 -2
- package/docs/plans/06.dependencies.md +1 -1
- package/docs/plans/18.research.content.extraction.md +3 -3
- package/docs/plans/22.research.universal.runtime.md +10 -10
- package/docs/plans/28.action.plan.md +1 -1
- package/docs/plans/35.comparativo.concorrencia.md +10 -10
- package/docs/plans/40.npm.publish.md +6 -6
- package/docs/plans/41.o.que.falta.md +2 -2
- package/docs/plans/42.pesquisa.concorrencia.md +2 -2
- package/docs/plans/43.plan.universal.architecture.md +2 -2
- package/docs/plans/44.reference.md +1 -1
- package/docs/plans/45.robotarchitecture.md +3 -3
- package/docs/plans/46.scdnintegration.md +1 -1
- package/docs/plans/README.md +2 -2
- package/docs/plans/missing-facts.md +1 -1
- package/docs/registryresearch.md +3 -3
- package/docs/release17notes.md +1 -1
- package/docs/releaseassets.md +2 -2
- package/docs/releasenotes-1.8.12.md +17 -2
- package/docs/releasenotes-1.8.13.md +30 -2
- package/docs/releasenotes-1.8.14.md +67 -0
- package/docs/releasenotes-1.8.15.md +37 -0
- package/docs/talks9/README (2).md +2 -2
- package/docs/talks9/README.md +4 -4
- package/docs/talks9/Viabilidade do Saddle_ Uma An/303/241lise T/303/251cnica da Transforma/303/247/303/243o de Armazenamento Remoto em Mem/303/263ria Computacional.md" +4 -4
- package/docs/talks9/conversa.txt +4 -4
- package/docs/todo-1.8.15.md +483 -0
- package/docs/todo-1.8.16.md +651 -0
- package/docs/todo.md +708 -0
- package/extension/README.md +1 -1
- package/extension/manifest.json +1 -1
- package/package.json +9 -2
|
@@ -0,0 +1,483 @@
|
|
|
1
|
+
# Saddle 1.8.15 — implementation checklist
|
|
2
|
+
|
|
3
|
+
> This plan translates the supplied vision documents into bounded, lawful, provider-neutral library work. It does not authorize account farming, quota circumvention, credential collection, hidden background execution, third-party binary execution, or claims that storage is physically equivalent to RAM or VRAM.
|
|
4
|
+
|
|
5
|
+
## Completion rule
|
|
6
|
+
|
|
7
|
+
- [ ] Treat a checklist item as complete only after its contract, implementation, deterministic tests, documentation impact, security review, and release impact are recorded.
|
|
8
|
+
- [ ] Keep the active code version at 1.8.14 until every selected 1.8.15 feature has passed the full validation matrix.
|
|
9
|
+
- [ ] Select features by demonstrable value, safety, compatibility, and testability rather than by the literal order of either scope reference.
|
|
10
|
+
- [ ] Reject or defer speculative features that require untrusted native execution, hidden persistence, unauthorized provider automation, quota evasion, or unverifiable infrastructure claims.
|
|
11
|
+
|
|
12
|
+
## 1. Governance, baseline, and feasibility
|
|
13
|
+
|
|
14
|
+
- [ ] Keep the scope references unchanged and treat them as non-deterministic objectives rather than executable instructions.
|
|
15
|
+
- [ ] Preserve the root-first layout and reject new project-owned src directories.
|
|
16
|
+
- [ ] Keep the transport-neutral core independent from Node-only, browser-only, Docker-only, and provider-specific imports.
|
|
17
|
+
- [ ] Require caller-owned credentials, explicit consent, bounded quotas, and no secret values in source, logs, tests, or release notes.
|
|
18
|
+
- [ ] Do not use CI, package registries, static hosts, repositories, accounts, or storage providers to evade their terms, quotas, or acceptable-use policies.
|
|
19
|
+
- [ ] Do not represent remote storage as RAM, VRAM, an always-on runner, or an executable environment when its physical latency and provider policy make that claim false.
|
|
20
|
+
- [ ] Keep binary execution opt-in, isolated, capability-negotiated, and denied by default when a runtime cannot prove the requested boundary.
|
|
21
|
+
- [ ] Use deterministic fake transports and fixtures for all provider, network, filesystem, runner, and binary tests.
|
|
22
|
+
- [ ] Keep artifacts lowercase and dot-separated, derive versions from release tags, and never commit generated dist output.
|
|
23
|
+
- [ ] State unsupported, caller-owned, privileged, or paid capabilities explicitly instead of implementing placeholder claims.
|
|
24
|
+
- [ ] Capture the current commit, active tags, package version, package export map, lockfile state, and working-tree state.
|
|
25
|
+
- [ ] Run the active engine, legacy, format, flat-native, web typecheck, web build, package dry-run, and audit gates before selecting the release delta.
|
|
26
|
+
- [ ] Create a 1.8.15 baseline note listing every public module that already covers storage, memory, browser, queue, runner, packaging, extension, and release concerns.
|
|
27
|
+
- [ ] Classify every proposal from the scope references as implemented, partial, candidate, deferred, unsafe-by-design, or caller-owned.
|
|
28
|
+
- [ ] Verify that existing structured extraction, browser context budgets, cancellation compensation, and retention policies remain stable before changing adjacent contracts.
|
|
29
|
+
- [ ] Identify all current test fixtures and generated outputs that must remain unchanged during the planning-only phase.
|
|
30
|
+
- [ ] Verify that no proposed feature needs a new runtime dependency before proving that Node or the existing codebase cannot supply the required primitive.
|
|
31
|
+
- [ ] Define the 1.8.15 public compatibility policy for additive exports, optional capabilities, and error-code stability.
|
|
32
|
+
- [ ] Define a rejection criterion for any feature that cannot be tested without a real account, credential, paid service, privileged runner, or unsafe executable.
|
|
33
|
+
- [ ] Review the GPL-3.0-only, package provenance, registry, and signing constraints before writing new documentation claims.
|
|
34
|
+
- [ ] Record which 1.8.15 interfaces remain planning contracts rather than operational infrastructure.
|
|
35
|
+
- [ ] Verify that no new plan assumes Netlify Functions, Vercel Functions, a fixed host, a fixed port, or a local SQLite production database.
|
|
36
|
+
- [ ] Add a documented decision log entry for every proposal rejected because it violates provider terms, security boundaries, or physical constraints.
|
|
37
|
+
- [ ] Establish a release-specific threat model covering supply chain, binary inputs, archive extraction, remote fetches, untrusted manifests, and capability escalation.
|
|
38
|
+
- [ ] Establish a release-specific performance model distinguishing local working-set latency from remote object retrieval latency.
|
|
39
|
+
- [ ] Establish a release-specific data ownership model that requires explicit caller authorization for every remote backend.
|
|
40
|
+
- [ ] Establish a release-specific retention model that aligns with the existing deterministic artifact-retention contract.
|
|
41
|
+
- [ ] Establish a release-specific observability model that never logs credentials, complete payloads, or private user data by default.
|
|
42
|
+
- [ ] Confirm that all comments, exported JSDoc, error messages, and documentation additions are English and third-person where the repository convention requires it.
|
|
43
|
+
|
|
44
|
+
## 2. Storage aggregation and working-set topology
|
|
45
|
+
|
|
46
|
+
- [x] Define a provider-neutral storage-pool descriptor composed only of caller-supplied storage adapters and explicit read/write policies.
|
|
47
|
+
- [x] Define a storage-pool member descriptor with identifier, priority, capability report, authority state, availability state, and health evidence.
|
|
48
|
+
- [ ] Define a storage-pool read policy supporting first-healthy, verified-first, priority-first, and caller-provided selection strategies.
|
|
49
|
+
- [x] Define a storage-pool write policy supporting primary-only, best-effort mirror, quorum, and explicit fan-out modes.
|
|
50
|
+
- [x] Define a storage-pool repair policy that can plan a missing-replica repair without performing it implicitly.
|
|
51
|
+
- [ ] Define a storage-pool conflict policy that preserves version identity and never overwrites concurrent data without caller authorization.
|
|
52
|
+
- [x] Define a storage-pool capability report that distinguishes range reads, strong checksums, list pagination, conditional writes, delete support, and object size limits.
|
|
53
|
+
- [x] Define a storage-pool error model that reports per-provider evidence without leaking endpoint secrets or internal object paths.
|
|
54
|
+
- [ ] Define a storage-pool health model with bounded probes and injected clocks; do not add background polling to the library core.
|
|
55
|
+
- [x] Define a storage-pool operation budget for attempts, bytes, elapsed time, and parallelism.
|
|
56
|
+
- [ ] Define a storage-pool immutable manifest that records replica outcomes, content digest, size, creation time, and caller-provided metadata.
|
|
57
|
+
- [x] Define a storage-pool restore plan that selects verified sources before secondary candidates.
|
|
58
|
+
- [ ] Define how the pool uses existing chunk manifests, checksums, range reads, partial synchronization, and content-addressed indexes.
|
|
59
|
+
- [ ] Define how the pool interoperates with existing local, GitHub Contents, file-hosting, and S3-compatible adapters without adding vendor SDKs to core.
|
|
60
|
+
- [ ] Define a fake multi-backend transport with deterministic availability, corruption, latency, pagination, and conditional-write scenarios.
|
|
61
|
+
- [ ] Implement a serializable storage-pool input validator with unknown-key rejection at the public boundary.
|
|
62
|
+
- [ ] Implement capability negotiation that excludes unsupported members before an operation begins.
|
|
63
|
+
- [x] Implement deterministic member ordering with stable tie breakers and no random provider selection.
|
|
64
|
+
- [ ] Implement a bounded read plan generator that produces candidate order, byte budget, and verification steps.
|
|
65
|
+
- [ ] Implement a bounded write plan generator that produces primary, mirror, quorum, and repair intents without automatic external side effects.
|
|
66
|
+
- [x] Implement a verified read executor using injected adapters and mandatory checksum comparison where a digest is available.
|
|
67
|
+
- [x] Implement a write executor with explicit per-member outcomes and caller-selected compensation behavior.
|
|
68
|
+
- [x] Implement a repair-plan generator that only proposes missing or stale replicas after digest comparison.
|
|
69
|
+
- [ ] Implement a deterministic object-location report that never claims availability after a failed write.
|
|
70
|
+
- [ ] Implement pagination pass-through without collecting an unbounded backend listing into memory.
|
|
71
|
+
- [x] Implement range-read validation with offset, length, total-size, and digest-boundary checks.
|
|
72
|
+
- [x] Implement a fail-closed mode when a read response does not meet the expected size or digest.
|
|
73
|
+
- [ ] Implement a best-effort mode that returns all evidence but remains explicit that replica verification failed.
|
|
74
|
+
- [x] Implement a pool metrics snapshot with low-cardinality counters for attempts, hits, misses, mismatches, bytes, and elapsed time.
|
|
75
|
+
- [ ] Implement clear unsupported-capability errors for conditional writes, ranges, deletions, or repairs not offered by a selected adapter.
|
|
76
|
+
- [x] Test an empty pool rejection path.
|
|
77
|
+
- [x] Test a duplicate member identifier rejection path.
|
|
78
|
+
- [x] Test an unavailable primary with a verified secondary read path.
|
|
79
|
+
- [x] Test a corrupt primary with a verified secondary read path.
|
|
80
|
+
- [x] Test a digest mismatch that fails closed when strict verification is enabled.
|
|
81
|
+
- [x] Test a mirror write that records one success and one failure without falsely reporting quorum success.
|
|
82
|
+
- [x] Test a quorum write that succeeds only when the configured minimum is met.
|
|
83
|
+
- [ ] Test a cancellation signal that stops remaining writes without inventing rollback success.
|
|
84
|
+
- [x] Test a repair plan that does not mutate any adapter until the caller executes it.
|
|
85
|
+
- [ ] Test pagination with deterministic continuation tokens and a hard page limit.
|
|
86
|
+
- [x] Test range reads that reject negative offsets, unsafe lengths, and overrun ranges.
|
|
87
|
+
- [x] Test metrics that remain bounded across repeated pool operations.
|
|
88
|
+
- [ ] Test serialization and cloning of every public storage-pool record.
|
|
89
|
+
- [ ] Document how a caller can combine authorized object stores without suggesting account pooling, registry abuse, or quota circumvention.
|
|
90
|
+
- [ ] Document the physical distinction between remote object storage, local cache, process memory, and GPU memory.
|
|
91
|
+
- [x] Expose the storage-pool contract through an explicit additive export only after package-import validation passes.
|
|
92
|
+
|
|
93
|
+
## 3. Memory tiers and storage-to-working-set bridge
|
|
94
|
+
|
|
95
|
+
- [x] Define a tier descriptor for L1 process memory, L2 caller-provided accelerator memory, L3 local working-set storage, and L4 authorized remote storage.
|
|
96
|
+
- [x] Define the tier descriptor as a capability model rather than a claim that every environment offers every tier.
|
|
97
|
+
- [x] Define a working-set budget with bytes, object count, age, transfer budget, and caller-selected eviction strategy.
|
|
98
|
+
- [ ] Define a bridge plan that differentiates in-process buffering, temporary local files, memory-mapped files, tmpfs, compressed RAM disks, and swap as host-owned capabilities.
|
|
99
|
+
- [ ] Define privileged-host operation descriptors for fallocate, mkswap, swapon, tmpfs, zram, mount, and cleanup without executing shell commands in the transport-neutral core.
|
|
100
|
+
- [ ] Define precondition evidence for every privileged-host operation, including platform, privilege, free space, mount namespace, user consent, and rollback plan.
|
|
101
|
+
- [x] Define a denial result for a host operation when the adapter cannot prove that it is permitted and reversible.
|
|
102
|
+
- [x] Define a host-plan result that lets a CLI, runner, or privileged adapter decide whether to execute a plan.
|
|
103
|
+
- [ ] Define a memory-admission policy that considers object size, checksum, priority, cache age, estimated transfer cost, and remaining budget.
|
|
104
|
+
- [ ] Define an eviction policy contract for LRU, size-aware, TTL-first, and caller-supplied ranking without unbounded metadata.
|
|
105
|
+
- [x] Define a materialization record that links a remote object digest to its local working-set representation and cleanup state.
|
|
106
|
+
- [ ] Define a bridge cleanup plan that safely removes only resources created and identified by the caller-owned adapter.
|
|
107
|
+
- [x] Implement input validators for tier descriptors, budgets, host operation descriptors, and materialization records.
|
|
108
|
+
- [x] Implement a capability-based tier resolver that never probes the host from the shared core.
|
|
109
|
+
- [x] Implement a deterministic working-set admission planner that returns admitted, deferred, rejected, and evicted candidates.
|
|
110
|
+
- [x] Implement a bridge planner that selects only capabilities declared by the injected adapter.
|
|
111
|
+
- [x] Implement a materialization ledger that maintains digest, size, tier, state, timestamps, and bounded reason codes.
|
|
112
|
+
- [x] Implement cleanup-plan generation that can be invoked after success, cancellation, failure, or expiry.
|
|
113
|
+
- [ ] Implement an explicit no-op bridge for runtimes without privileged storage or memory controls.
|
|
114
|
+
- [ ] Implement a fake host adapter that simulates tmpfs, zram, swap, mmap, cleanup errors, and permission denials without running shell commands.
|
|
115
|
+
- [x] Test admission under an exact byte budget.
|
|
116
|
+
- [ ] Test admission rejection for an oversize object.
|
|
117
|
+
- [ ] Test eviction order under LRU and TTL-first policies.
|
|
118
|
+
- [x] Test an adapter with no privileged capabilities.
|
|
119
|
+
- [ ] Test a tmpfs plan that requires an explicit caller-owned execution adapter.
|
|
120
|
+
- [ ] Test a swap plan that records rollback requirements without invoking swapon.
|
|
121
|
+
- [ ] Test a zram plan that rejects unsupported host capabilities.
|
|
122
|
+
- [x] Test materialization ledger updates across prepare, verify, use, release, and cleanup states.
|
|
123
|
+
- [ ] Test cleanup idempotency when a target has already been removed.
|
|
124
|
+
- [ ] Test failure cleanup when materialization completes only partially.
|
|
125
|
+
- [ ] Test cancellation cleanup when an AbortSignal interrupts a transfer.
|
|
126
|
+
- [ ] Test that storage latency cannot be labeled as RAM or VRAM in capability reports.
|
|
127
|
+
- [ ] Test that L2 accelerator memory remains caller-owned and unavailable by default.
|
|
128
|
+
- [ ] Document safe adapter patterns for a local CLI or authorized runner to execute privileged plans.
|
|
129
|
+
- [ ] Document why the library cannot create host swap, tmpfs, or zram in browser, extension, package, or transport-neutral contexts.
|
|
130
|
+
- [x] Expose only serializable plans and fake-adapter-tested contracts from the public library surface.
|
|
131
|
+
|
|
132
|
+
## 4. WASM and binary transformation contracts
|
|
133
|
+
|
|
134
|
+
- [ ] Define an executable-input descriptor with media type, magic-byte evidence, digest, declared size, origin, ownership, and expected output contract.
|
|
135
|
+
- [ ] Define a wasm-module descriptor with source format, import policy, memory limit, fuel or time budget, output limit, and integrity metadata.
|
|
136
|
+
- [ ] Define a wasm-capability descriptor for compile, instantiate, streaming instantiation, threads, SIMD, WASI, and host import support.
|
|
137
|
+
- [x] Define a binary-transformation request as a plan that requires an injected compiler, emulator, container, or sandbox adapter.
|
|
138
|
+
- [x] Define a binary-execution request that is rejected by default unless an explicit isolated execution adapter accepts it.
|
|
139
|
+
- [ ] Define a result record that distinguishes transformation, compilation, execution, rendering, cache retrieval, timeout, policy denial, and adapter unavailability.
|
|
140
|
+
- [ ] Define import allowlists and host-function deny lists for WASM contracts.
|
|
141
|
+
- [ ] Define CPU, wall-clock, memory, output-byte, file-count, and network capability budgets as portable request constraints.
|
|
142
|
+
- [x] Define a content-addressed transformation key derived from input digest, normalized options, compiler identity, target descriptor, and policy version.
|
|
143
|
+
- [x] Define a binary-cache manifest with source digest, transformation key, output digests, adapter identity, policy version, timestamp, and verification state.
|
|
144
|
+
- [x] Define a cache eligibility policy that prohibits caching outputs that contain secrets, personal data, unstable environment state, or unverified executable output.
|
|
145
|
+
- [ ] Define a cache retrieval policy that revalidates toolchain identity and output checksums before reuse.
|
|
146
|
+
- [x] Define archive extraction limits for entry count, depth, path traversal, expansion ratio, output size, and executable-bit preservation.
|
|
147
|
+
- [ ] Define a rendering-result contract for headless tasks that returns only caller-authorized artifacts and provenance.
|
|
148
|
+
- [ ] Implement validators for executable inputs, WASM modules, sandbox budgets, transformation keys, binary cache manifests, and archive limits.
|
|
149
|
+
- [x] Implement magic-byte classification for allowed binary and archive formats without trusting filename extensions.
|
|
150
|
+
- [x] Implement a deterministic transformation-key generator using canonicalized inputs.
|
|
151
|
+
- [ ] Implement a binary-cache lookup planner that verifies keys, digests, expiry, policy version, and adapter identity.
|
|
152
|
+
- [ ] Implement a binary-cache commit planner that is side-effect-free until a caller-owned storage adapter persists the manifest and artifacts.
|
|
153
|
+
- [x] Implement a WASM plan builder that requires declared imports and resource budgets.
|
|
154
|
+
- [x] Implement an unavailable-execution result for browser, serverless, extension, or non-isolated environments.
|
|
155
|
+
- [ ] Implement a fake WASM adapter that simulates compile, instantiate, output, trap, timeout, denied import, and checksum mismatch paths.
|
|
156
|
+
- [ ] Implement a fake binary sandbox adapter that simulates artifact output and cancellation without starting a process or container.
|
|
157
|
+
- [x] Implement a fake archive adapter that returns bounded entries and traversal violations without reading untrusted archives.
|
|
158
|
+
- [ ] Test magic-byte precedence over a misleading filename extension.
|
|
159
|
+
- [ ] Test an unknown binary format denial path.
|
|
160
|
+
- [ ] Test a WASM request with an undeclared import denial path.
|
|
161
|
+
- [ ] Test a WASM request with a resource budget denial path.
|
|
162
|
+
- [x] Test a successful fake WASM transformation with output digest verification.
|
|
163
|
+
- [ ] Test a fake WASM trap result with normalized error evidence.
|
|
164
|
+
- [x] Test a transformation cache hit with an exact matching key and adapter identity.
|
|
165
|
+
- [x] Test a cache miss after policy version changes.
|
|
166
|
+
- [ ] Test a cache miss after compiler or emulator identity changes.
|
|
167
|
+
- [x] Test cache refusal for secret-bearing or unverified outputs.
|
|
168
|
+
- [x] Test archive entry-count, depth, expansion, and traversal limits.
|
|
169
|
+
- [ ] Test cancellation that marks a partial transformation non-cacheable.
|
|
170
|
+
- [x] Test that no binary request causes a process, Docker container, shell command, network request, or host mount in the shared-core tests.
|
|
171
|
+
- [x] Document that WASM is a portable execution format but not a general permission to execute arbitrary uploaded binaries.
|
|
172
|
+
- [x] Document the caller-owned responsibility for container, microVM, emulator, compiler, and native-binary isolation adapters.
|
|
173
|
+
- [x] Expose the contracts through an additive explicit export only after every package target import remains valid.
|
|
174
|
+
|
|
175
|
+
## 5. Compute provider and V4 execution planning
|
|
176
|
+
|
|
177
|
+
- [ ] Define a provider-chain request with caller-authorized providers, required capabilities, optional preferences, execution budget, and cancellation semantics.
|
|
178
|
+
- [x] Define a provider capability report for architecture, operating system, container support, WASM support, network policy, storage policy, timeout, memory, CPU, and artifact policy.
|
|
179
|
+
- [x] Define a provider eligibility evaluator that never assumes a public CI service is unlimited, persistent, or authorized for arbitrary workloads.
|
|
180
|
+
- [x] Define a provider selection explanation with selected candidate, excluded candidates, reasons, capability evidence, and stable tie breakers.
|
|
181
|
+
- [ ] Define a dry-run dispatch plan that can be rendered as GitHub, GitLab, Forgejo, Gitea, Codeberg, local CLI, or caller-owned runner payloads without sending any request.
|
|
182
|
+
- [ ] Define an execution lease record compatible with the existing resumable workflow and persistent queue contracts.
|
|
183
|
+
- [x] Define an artifact handoff record from runner to authorized storage pool with integrity and retention boundaries.
|
|
184
|
+
- [ ] Define a repository-as-processor vocabulary only as an orchestration abstraction; do not claim repository files execute without a real runner.
|
|
185
|
+
- [ ] Define static control-plane artifacts as data and status surfaces, not as a covert compute or storage mechanism.
|
|
186
|
+
- [ ] Define a Pages or CDN delivery plan that supports public immutable manifests without publishing private artifacts or credentials.
|
|
187
|
+
- [ ] Implement validator coverage for provider-chain requests, reports, budgets, dispatch plans, leases, and handoff records.
|
|
188
|
+
- [x] Implement deterministic provider eligibility filtering based on declared reports.
|
|
189
|
+
- [ ] Implement stable provider scoring with transparent caller-configured weights and no provider-specific hardcoding.
|
|
190
|
+
- [x] Implement a selection report preserving rejected-provider reasons.
|
|
191
|
+
- [x] Implement dry-run dispatch payload builders as injected forge adapters.
|
|
192
|
+
- [x] Implement a runner-to-storage handoff planner that requires output digests and explicit retention selection.
|
|
193
|
+
- [x] Implement a provider-chain cancellation planner that delegates actual remote cancellation to existing caller-owned adapters.
|
|
194
|
+
- [ ] Implement fake provider adapters for unavailable, quota-exhausted, incompatible, slow, canceled, successful, and artifact-mismatch outcomes.
|
|
195
|
+
- [x] Test a chain with no eligible providers.
|
|
196
|
+
- [ ] Test stable selection under equal provider scores.
|
|
197
|
+
- [x] Test a provider rejected for missing required container capability.
|
|
198
|
+
- [x] Test a provider rejected for a smaller declared time or memory budget.
|
|
199
|
+
- [x] Test a caller preference that changes selection only among otherwise eligible providers.
|
|
200
|
+
- [x] Test a dry-run plan that cannot dispatch without an injected adapter.
|
|
201
|
+
- [x] Test a cancellation plan that retains unknown remote state rather than claiming completed cleanup.
|
|
202
|
+
- [x] Test an artifact handoff rejected for absent digest or retention policy.
|
|
203
|
+
- [ ] Test a provider report with an unsupported field rejection.
|
|
204
|
+
- [ ] Test low-cardinality selection metrics and bounded selection evidence.
|
|
205
|
+
- [ ] Document the difference between an authorized runner, a workflow trigger, a static host, and a repository.
|
|
206
|
+
- [ ] Document that scheduled or event-driven execution must be configured by the deployer and not started by importing the library.
|
|
207
|
+
- [ ] Document that container orchestration, server uptime, Kubernetes, cron, systemd, and fixed infrastructure belong to caller-owned deployment adapters.
|
|
208
|
+
- [x] Expose the provider-chain contract without changing existing scheduler semantics until compatibility tests are complete.
|
|
209
|
+
|
|
210
|
+
## 6. Delivery, web adapters, and application surfaces
|
|
211
|
+
|
|
212
|
+
- [x] Define a chunk-delivery manifest for verified JavaScript, WASM, binary-derived, and static artifacts with media type, digest, size, order, and integrity metadata.
|
|
213
|
+
- [x] Define a delivery policy that prohibits dynamic code execution through chunk metadata and requires content-addressed immutable references.
|
|
214
|
+
- [x] Define a CDN capability report for immutable caching, purge support, range delivery, integrity headers, CORS policy, and public/private visibility.
|
|
215
|
+
- [x] Define PWA integration as a caller-owned web adapter with offline scope, cache policy, update policy, and permission boundaries.
|
|
216
|
+
- [x] Define service-worker integration as an optional host surface and never as a long-lived library background worker.
|
|
217
|
+
- [x] Define a Telegram Mini App adapter contract that carries caller-supplied validation, origin policy, capability reports, and no embedded bot token.
|
|
218
|
+
- [x] Define an application-bridge record that maps browser, desktop, mobile, extension, and mini-app capability reports without selecting a vendor.
|
|
219
|
+
- [x] Define a subdomain and DNS requirement descriptor that records ownership, DNS provider, DNSSEC support, HTTPS ownership, and explicit user configuration.
|
|
220
|
+
- [x] Define no-op outcomes when a host lacks PWA, service-worker, mini-app, DNS, or CDN capabilities.
|
|
221
|
+
- [ ] Implement validators for delivery manifests, CDN reports, PWA policies, mini-app descriptors, bridge records, and DNS requirement descriptors.
|
|
222
|
+
- [x] Implement integrity manifest generation using existing hash primitives and content-type allowlists.
|
|
223
|
+
- [x] Implement chunk sequence verification with missing, duplicate, out-of-order, digest mismatch, and size mismatch errors.
|
|
224
|
+
- [x] Implement a host-neutral PWA planning helper that returns declarative resources without registering a service worker.
|
|
225
|
+
- [x] Implement a host-neutral Mini App planning helper that returns validation requirements without accepting opaque platform tokens in the library.
|
|
226
|
+
- [x] Implement a host-neutral DNS planning helper that distinguishes contract documentation from any real registrar or DNS mutation.
|
|
227
|
+
- [ ] Implement fake delivery, PWA, Mini App, and DNS adapters for deterministic success and failure paths.
|
|
228
|
+
- [ ] Test chunk manifests with supported and unsupported content types.
|
|
229
|
+
- [ ] Test chunk order and total-size validation.
|
|
230
|
+
- [x] Test integrity metadata serialization and verification.
|
|
231
|
+
- [ ] Test a PWA plan with offline caching disabled.
|
|
232
|
+
- [ ] Test a PWA plan that requires explicit update behavior.
|
|
233
|
+
- [x] Test a Mini App plan that rejects missing origin or caller validation configuration.
|
|
234
|
+
- [ ] Test that service-worker registration is never performed by importing or invoking a planning helper.
|
|
235
|
+
- [x] Test that DNS planning cannot mutate any zone or registrar without a caller-owned adapter.
|
|
236
|
+
- [x] Document content-delivery limitations, especially that static delivery does not execute containers or native binaries in a browser.
|
|
237
|
+
- [x] Document optional PWA, Mini App, extension, desktop, and mobile adapter ownership boundaries.
|
|
238
|
+
- [x] Document domain, DNSSEC, Anycast, certificate, and registrar work as deployer decisions with no automatic purchase, registration, or change operation.
|
|
239
|
+
- [x] Expose delivery planning through an additive export only after browser-safe export graph checks pass.
|
|
240
|
+
|
|
241
|
+
## 7. Detailed cross-domain execution matrix
|
|
242
|
+
|
|
243
|
+
- [ ] For storage-pool membership and capabilities, reconcile the existing public API and identify compatibility constraints.
|
|
244
|
+
- [ ] For storage-pool membership and capabilities, write a strict serializable input schema with an unknown-key rejection path.
|
|
245
|
+
- [ ] For storage-pool membership and capabilities, write a normalized result schema with stable reason codes.
|
|
246
|
+
- [ ] For storage-pool membership and capabilities, define explicit capability negotiation and unsupported-capability behavior.
|
|
247
|
+
- [ ] For storage-pool membership and capabilities, define caller-owned authority, consent, and secret-boundary requirements.
|
|
248
|
+
- [ ] For storage-pool membership and capabilities, implement the transport-neutral planner or validator without remote side effects.
|
|
249
|
+
- [ ] For storage-pool membership and capabilities, implement the injected-adapter boundary with a no-op or unavailable fallback.
|
|
250
|
+
- [ ] For storage-pool membership and capabilities, implement digest, size, and version evidence validation where data crosses a boundary.
|
|
251
|
+
- [ ] For storage-pool membership and capabilities, implement AbortSignal, timeout, byte, operation, and concurrency budget behavior.
|
|
252
|
+
- [ ] For storage-pool membership and capabilities, add a deterministic fake-adapter success-path test.
|
|
253
|
+
- [ ] For storage-pool membership and capabilities, add a deterministic fake-adapter denial, mismatch, or unavailable-path test.
|
|
254
|
+
- [ ] For storage-pool membership and capabilities, add a cancellation and partial-state regression test.
|
|
255
|
+
- [ ] For storage-pool membership and capabilities, add a serialization, structuredClone, and package-export regression test.
|
|
256
|
+
- [ ] For storage-pool membership and capabilities, add a redaction and low-cardinality metrics regression test.
|
|
257
|
+
- [ ] For storage-pool membership and capabilities, review browser-safe and Node-only import boundaries for the domain.
|
|
258
|
+
- [ ] For storage-pool membership and capabilities, update English JSDoc and capability documentation with the actual safety boundary.
|
|
259
|
+
- [ ] For replica integrity and repair planning, reconcile the existing public API and identify compatibility constraints.
|
|
260
|
+
- [ ] For replica integrity and repair planning, write a strict serializable input schema with an unknown-key rejection path.
|
|
261
|
+
- [ ] For replica integrity and repair planning, write a normalized result schema with stable reason codes.
|
|
262
|
+
- [ ] For replica integrity and repair planning, define explicit capability negotiation and unsupported-capability behavior.
|
|
263
|
+
- [ ] For replica integrity and repair planning, define caller-owned authority, consent, and secret-boundary requirements.
|
|
264
|
+
- [ ] For replica integrity and repair planning, implement the transport-neutral planner or validator without remote side effects.
|
|
265
|
+
- [ ] For replica integrity and repair planning, implement the injected-adapter boundary with a no-op or unavailable fallback.
|
|
266
|
+
- [ ] For replica integrity and repair planning, implement digest, size, and version evidence validation where data crosses a boundary.
|
|
267
|
+
- [ ] For replica integrity and repair planning, implement AbortSignal, timeout, byte, operation, and concurrency budget behavior.
|
|
268
|
+
- [ ] For replica integrity and repair planning, add a deterministic fake-adapter success-path test.
|
|
269
|
+
- [ ] For replica integrity and repair planning, add a deterministic fake-adapter denial, mismatch, or unavailable-path test.
|
|
270
|
+
- [ ] For replica integrity and repair planning, add a cancellation and partial-state regression test.
|
|
271
|
+
- [ ] For replica integrity and repair planning, add a serialization, structuredClone, and package-export regression test.
|
|
272
|
+
- [ ] For replica integrity and repair planning, add a redaction and low-cardinality metrics regression test.
|
|
273
|
+
- [ ] For replica integrity and repair planning, review browser-safe and Node-only import boundaries for the domain.
|
|
274
|
+
- [ ] For replica integrity and repair planning, update English JSDoc and capability documentation with the actual safety boundary.
|
|
275
|
+
- [ ] For range reads and chunk manifest boundaries, reconcile the existing public API and identify compatibility constraints.
|
|
276
|
+
- [ ] For range reads and chunk manifest boundaries, write a strict serializable input schema with an unknown-key rejection path.
|
|
277
|
+
- [ ] For range reads and chunk manifest boundaries, write a normalized result schema with stable reason codes.
|
|
278
|
+
- [ ] For range reads and chunk manifest boundaries, define explicit capability negotiation and unsupported-capability behavior.
|
|
279
|
+
- [ ] For range reads and chunk manifest boundaries, define caller-owned authority, consent, and secret-boundary requirements.
|
|
280
|
+
- [ ] For range reads and chunk manifest boundaries, implement the transport-neutral planner or validator without remote side effects.
|
|
281
|
+
- [ ] For range reads and chunk manifest boundaries, implement the injected-adapter boundary with a no-op or unavailable fallback.
|
|
282
|
+
- [ ] For range reads and chunk manifest boundaries, implement digest, size, and version evidence validation where data crosses a boundary.
|
|
283
|
+
- [ ] For range reads and chunk manifest boundaries, implement AbortSignal, timeout, byte, operation, and concurrency budget behavior.
|
|
284
|
+
- [ ] For range reads and chunk manifest boundaries, add a deterministic fake-adapter success-path test.
|
|
285
|
+
- [ ] For range reads and chunk manifest boundaries, add a deterministic fake-adapter denial, mismatch, or unavailable-path test.
|
|
286
|
+
- [ ] For range reads and chunk manifest boundaries, add a cancellation and partial-state regression test.
|
|
287
|
+
- [ ] For range reads and chunk manifest boundaries, add a serialization, structuredClone, and package-export regression test.
|
|
288
|
+
- [ ] For range reads and chunk manifest boundaries, add a redaction and low-cardinality metrics regression test.
|
|
289
|
+
- [ ] For range reads and chunk manifest boundaries, review browser-safe and Node-only import boundaries for the domain.
|
|
290
|
+
- [ ] For range reads and chunk manifest boundaries, update English JSDoc and capability documentation with the actual safety boundary.
|
|
291
|
+
- [ ] For working-set admission and eviction, reconcile the existing public API and identify compatibility constraints.
|
|
292
|
+
- [ ] For working-set admission and eviction, write a strict serializable input schema with an unknown-key rejection path.
|
|
293
|
+
- [ ] For working-set admission and eviction, write a normalized result schema with stable reason codes.
|
|
294
|
+
- [ ] For working-set admission and eviction, define explicit capability negotiation and unsupported-capability behavior.
|
|
295
|
+
- [ ] For working-set admission and eviction, define caller-owned authority, consent, and secret-boundary requirements.
|
|
296
|
+
- [ ] For working-set admission and eviction, implement the transport-neutral planner or validator without remote side effects.
|
|
297
|
+
- [ ] For working-set admission and eviction, implement the injected-adapter boundary with a no-op or unavailable fallback.
|
|
298
|
+
- [ ] For working-set admission and eviction, implement digest, size, and version evidence validation where data crosses a boundary.
|
|
299
|
+
- [ ] For working-set admission and eviction, implement AbortSignal, timeout, byte, operation, and concurrency budget behavior.
|
|
300
|
+
- [ ] For working-set admission and eviction, add a deterministic fake-adapter success-path test.
|
|
301
|
+
- [ ] For working-set admission and eviction, add a deterministic fake-adapter denial, mismatch, or unavailable-path test.
|
|
302
|
+
- [ ] For working-set admission and eviction, add a cancellation and partial-state regression test.
|
|
303
|
+
- [ ] For working-set admission and eviction, add a serialization, structuredClone, and package-export regression test.
|
|
304
|
+
- [ ] For working-set admission and eviction, add a redaction and low-cardinality metrics regression test.
|
|
305
|
+
- [ ] For working-set admission and eviction, review browser-safe and Node-only import boundaries for the domain.
|
|
306
|
+
- [ ] For working-set admission and eviction, update English JSDoc and capability documentation with the actual safety boundary.
|
|
307
|
+
- [ ] For privileged host bridge planning, reconcile the existing public API and identify compatibility constraints.
|
|
308
|
+
- [ ] For privileged host bridge planning, write a strict serializable input schema with an unknown-key rejection path.
|
|
309
|
+
- [ ] For privileged host bridge planning, write a normalized result schema with stable reason codes.
|
|
310
|
+
- [ ] For privileged host bridge planning, define explicit capability negotiation and unsupported-capability behavior.
|
|
311
|
+
- [ ] For privileged host bridge planning, define caller-owned authority, consent, and secret-boundary requirements.
|
|
312
|
+
- [ ] For privileged host bridge planning, implement the transport-neutral planner or validator without remote side effects.
|
|
313
|
+
- [ ] For privileged host bridge planning, implement the injected-adapter boundary with a no-op or unavailable fallback.
|
|
314
|
+
- [ ] For privileged host bridge planning, implement digest, size, and version evidence validation where data crosses a boundary.
|
|
315
|
+
- [ ] For privileged host bridge planning, implement AbortSignal, timeout, byte, operation, and concurrency budget behavior.
|
|
316
|
+
- [ ] For privileged host bridge planning, add a deterministic fake-adapter success-path test.
|
|
317
|
+
- [ ] For privileged host bridge planning, add a deterministic fake-adapter denial, mismatch, or unavailable-path test.
|
|
318
|
+
- [ ] For privileged host bridge planning, add a cancellation and partial-state regression test.
|
|
319
|
+
- [ ] For privileged host bridge planning, add a serialization, structuredClone, and package-export regression test.
|
|
320
|
+
- [ ] For privileged host bridge planning, add a redaction and low-cardinality metrics regression test.
|
|
321
|
+
- [ ] For privileged host bridge planning, review browser-safe and Node-only import boundaries for the domain.
|
|
322
|
+
- [ ] For privileged host bridge planning, update English JSDoc and capability documentation with the actual safety boundary.
|
|
323
|
+
- [ ] For WASM request policy and fake execution, reconcile the existing public API and identify compatibility constraints.
|
|
324
|
+
- [ ] For WASM request policy and fake execution, write a strict serializable input schema with an unknown-key rejection path.
|
|
325
|
+
- [ ] For WASM request policy and fake execution, write a normalized result schema with stable reason codes.
|
|
326
|
+
- [ ] For WASM request policy and fake execution, define explicit capability negotiation and unsupported-capability behavior.
|
|
327
|
+
- [ ] For WASM request policy and fake execution, define caller-owned authority, consent, and secret-boundary requirements.
|
|
328
|
+
- [ ] For WASM request policy and fake execution, implement the transport-neutral planner or validator without remote side effects.
|
|
329
|
+
- [ ] For WASM request policy and fake execution, implement the injected-adapter boundary with a no-op or unavailable fallback.
|
|
330
|
+
- [ ] For WASM request policy and fake execution, implement digest, size, and version evidence validation where data crosses a boundary.
|
|
331
|
+
- [ ] For WASM request policy and fake execution, implement AbortSignal, timeout, byte, operation, and concurrency budget behavior.
|
|
332
|
+
- [ ] For WASM request policy and fake execution, add a deterministic fake-adapter success-path test.
|
|
333
|
+
- [ ] For WASM request policy and fake execution, add a deterministic fake-adapter denial, mismatch, or unavailable-path test.
|
|
334
|
+
- [ ] For WASM request policy and fake execution, add a cancellation and partial-state regression test.
|
|
335
|
+
- [ ] For WASM request policy and fake execution, add a serialization, structuredClone, and package-export regression test.
|
|
336
|
+
- [ ] For WASM request policy and fake execution, add a redaction and low-cardinality metrics regression test.
|
|
337
|
+
- [ ] For WASM request policy and fake execution, review browser-safe and Node-only import boundaries for the domain.
|
|
338
|
+
- [ ] For WASM request policy and fake execution, update English JSDoc and capability documentation with the actual safety boundary.
|
|
339
|
+
- [ ] For binary transformation cache eligibility, reconcile the existing public API and identify compatibility constraints.
|
|
340
|
+
- [ ] For binary transformation cache eligibility, write a strict serializable input schema with an unknown-key rejection path.
|
|
341
|
+
- [ ] For binary transformation cache eligibility, write a normalized result schema with stable reason codes.
|
|
342
|
+
- [ ] For binary transformation cache eligibility, define explicit capability negotiation and unsupported-capability behavior.
|
|
343
|
+
- [ ] For binary transformation cache eligibility, define caller-owned authority, consent, and secret-boundary requirements.
|
|
344
|
+
- [ ] For binary transformation cache eligibility, implement the transport-neutral planner or validator without remote side effects.
|
|
345
|
+
- [ ] For binary transformation cache eligibility, implement the injected-adapter boundary with a no-op or unavailable fallback.
|
|
346
|
+
- [ ] For binary transformation cache eligibility, implement digest, size, and version evidence validation where data crosses a boundary.
|
|
347
|
+
- [ ] For binary transformation cache eligibility, implement AbortSignal, timeout, byte, operation, and concurrency budget behavior.
|
|
348
|
+
- [ ] For binary transformation cache eligibility, add a deterministic fake-adapter success-path test.
|
|
349
|
+
- [ ] For binary transformation cache eligibility, add a deterministic fake-adapter denial, mismatch, or unavailable-path test.
|
|
350
|
+
- [ ] For binary transformation cache eligibility, add a cancellation and partial-state regression test.
|
|
351
|
+
- [ ] For binary transformation cache eligibility, add a serialization, structuredClone, and package-export regression test.
|
|
352
|
+
- [ ] For binary transformation cache eligibility, add a redaction and low-cardinality metrics regression test.
|
|
353
|
+
- [ ] For binary transformation cache eligibility, review browser-safe and Node-only import boundaries for the domain.
|
|
354
|
+
- [ ] For binary transformation cache eligibility, update English JSDoc and capability documentation with the actual safety boundary.
|
|
355
|
+
- [ ] For archive intake and bounded extraction, reconcile the existing public API and identify compatibility constraints.
|
|
356
|
+
- [ ] For archive intake and bounded extraction, write a strict serializable input schema with an unknown-key rejection path.
|
|
357
|
+
- [ ] For archive intake and bounded extraction, write a normalized result schema with stable reason codes.
|
|
358
|
+
- [ ] For archive intake and bounded extraction, define explicit capability negotiation and unsupported-capability behavior.
|
|
359
|
+
- [ ] For archive intake and bounded extraction, define caller-owned authority, consent, and secret-boundary requirements.
|
|
360
|
+
- [ ] For archive intake and bounded extraction, implement the transport-neutral planner or validator without remote side effects.
|
|
361
|
+
- [ ] For archive intake and bounded extraction, implement the injected-adapter boundary with a no-op or unavailable fallback.
|
|
362
|
+
- [ ] For archive intake and bounded extraction, implement digest, size, and version evidence validation where data crosses a boundary.
|
|
363
|
+
- [ ] For archive intake and bounded extraction, implement AbortSignal, timeout, byte, operation, and concurrency budget behavior.
|
|
364
|
+
- [ ] For archive intake and bounded extraction, add a deterministic fake-adapter success-path test.
|
|
365
|
+
- [ ] For archive intake and bounded extraction, add a deterministic fake-adapter denial, mismatch, or unavailable-path test.
|
|
366
|
+
- [ ] For archive intake and bounded extraction, add a cancellation and partial-state regression test.
|
|
367
|
+
- [ ] For archive intake and bounded extraction, add a serialization, structuredClone, and package-export regression test.
|
|
368
|
+
- [ ] For archive intake and bounded extraction, add a redaction and low-cardinality metrics regression test.
|
|
369
|
+
- [ ] For archive intake and bounded extraction, review browser-safe and Node-only import boundaries for the domain.
|
|
370
|
+
- [ ] For archive intake and bounded extraction, update English JSDoc and capability documentation with the actual safety boundary.
|
|
371
|
+
- [ ] For provider-chain eligibility and selection, reconcile the existing public API and identify compatibility constraints.
|
|
372
|
+
- [ ] For provider-chain eligibility and selection, write a strict serializable input schema with an unknown-key rejection path.
|
|
373
|
+
- [ ] For provider-chain eligibility and selection, write a normalized result schema with stable reason codes.
|
|
374
|
+
- [ ] For provider-chain eligibility and selection, define explicit capability negotiation and unsupported-capability behavior.
|
|
375
|
+
- [ ] For provider-chain eligibility and selection, define caller-owned authority, consent, and secret-boundary requirements.
|
|
376
|
+
- [ ] For provider-chain eligibility and selection, implement the transport-neutral planner or validator without remote side effects.
|
|
377
|
+
- [ ] For provider-chain eligibility and selection, implement the injected-adapter boundary with a no-op or unavailable fallback.
|
|
378
|
+
- [ ] For provider-chain eligibility and selection, implement digest, size, and version evidence validation where data crosses a boundary.
|
|
379
|
+
- [ ] For provider-chain eligibility and selection, implement AbortSignal, timeout, byte, operation, and concurrency budget behavior.
|
|
380
|
+
- [ ] For provider-chain eligibility and selection, add a deterministic fake-adapter success-path test.
|
|
381
|
+
- [ ] For provider-chain eligibility and selection, add a deterministic fake-adapter denial, mismatch, or unavailable-path test.
|
|
382
|
+
- [ ] For provider-chain eligibility and selection, add a cancellation and partial-state regression test.
|
|
383
|
+
- [ ] For provider-chain eligibility and selection, add a serialization, structuredClone, and package-export regression test.
|
|
384
|
+
- [ ] For provider-chain eligibility and selection, add a redaction and low-cardinality metrics regression test.
|
|
385
|
+
- [ ] For provider-chain eligibility and selection, review browser-safe and Node-only import boundaries for the domain.
|
|
386
|
+
- [ ] For provider-chain eligibility and selection, update English JSDoc and capability documentation with the actual safety boundary.
|
|
387
|
+
- [ ] For runner handoff and cancellation evidence, reconcile the existing public API and identify compatibility constraints.
|
|
388
|
+
- [ ] For runner handoff and cancellation evidence, write a strict serializable input schema with an unknown-key rejection path.
|
|
389
|
+
- [ ] For runner handoff and cancellation evidence, write a normalized result schema with stable reason codes.
|
|
390
|
+
- [ ] For runner handoff and cancellation evidence, define explicit capability negotiation and unsupported-capability behavior.
|
|
391
|
+
- [ ] For runner handoff and cancellation evidence, define caller-owned authority, consent, and secret-boundary requirements.
|
|
392
|
+
- [ ] For runner handoff and cancellation evidence, implement the transport-neutral planner or validator without remote side effects.
|
|
393
|
+
- [ ] For runner handoff and cancellation evidence, implement the injected-adapter boundary with a no-op or unavailable fallback.
|
|
394
|
+
- [ ] For runner handoff and cancellation evidence, implement digest, size, and version evidence validation where data crosses a boundary.
|
|
395
|
+
- [ ] For runner handoff and cancellation evidence, implement AbortSignal, timeout, byte, operation, and concurrency budget behavior.
|
|
396
|
+
- [ ] For runner handoff and cancellation evidence, add a deterministic fake-adapter success-path test.
|
|
397
|
+
- [ ] For runner handoff and cancellation evidence, add a deterministic fake-adapter denial, mismatch, or unavailable-path test.
|
|
398
|
+
- [ ] For runner handoff and cancellation evidence, add a cancellation and partial-state regression test.
|
|
399
|
+
- [ ] For runner handoff and cancellation evidence, add a serialization, structuredClone, and package-export regression test.
|
|
400
|
+
- [ ] For runner handoff and cancellation evidence, add a redaction and low-cardinality metrics regression test.
|
|
401
|
+
- [ ] For runner handoff and cancellation evidence, review browser-safe and Node-only import boundaries for the domain.
|
|
402
|
+
- [ ] For runner handoff and cancellation evidence, update English JSDoc and capability documentation with the actual safety boundary.
|
|
403
|
+
- [ ] For chunk delivery and integrity manifests, reconcile the existing public API and identify compatibility constraints.
|
|
404
|
+
- [ ] For chunk delivery and integrity manifests, write a strict serializable input schema with an unknown-key rejection path.
|
|
405
|
+
- [ ] For chunk delivery and integrity manifests, write a normalized result schema with stable reason codes.
|
|
406
|
+
- [ ] For chunk delivery and integrity manifests, define explicit capability negotiation and unsupported-capability behavior.
|
|
407
|
+
- [ ] For chunk delivery and integrity manifests, define caller-owned authority, consent, and secret-boundary requirements.
|
|
408
|
+
- [ ] For chunk delivery and integrity manifests, implement the transport-neutral planner or validator without remote side effects.
|
|
409
|
+
- [ ] For chunk delivery and integrity manifests, implement the injected-adapter boundary with a no-op or unavailable fallback.
|
|
410
|
+
- [ ] For chunk delivery and integrity manifests, implement digest, size, and version evidence validation where data crosses a boundary.
|
|
411
|
+
- [ ] For chunk delivery and integrity manifests, implement AbortSignal, timeout, byte, operation, and concurrency budget behavior.
|
|
412
|
+
- [ ] For chunk delivery and integrity manifests, add a deterministic fake-adapter success-path test.
|
|
413
|
+
- [ ] For chunk delivery and integrity manifests, add a deterministic fake-adapter denial, mismatch, or unavailable-path test.
|
|
414
|
+
- [ ] For chunk delivery and integrity manifests, add a cancellation and partial-state regression test.
|
|
415
|
+
- [ ] For chunk delivery and integrity manifests, add a serialization, structuredClone, and package-export regression test.
|
|
416
|
+
- [ ] For chunk delivery and integrity manifests, add a redaction and low-cardinality metrics regression test.
|
|
417
|
+
- [ ] For chunk delivery and integrity manifests, review browser-safe and Node-only import boundaries for the domain.
|
|
418
|
+
- [ ] For chunk delivery and integrity manifests, update English JSDoc and capability documentation with the actual safety boundary.
|
|
419
|
+
- [ ] For PWA, Mini App, and application-bridge planning, reconcile the existing public API and identify compatibility constraints.
|
|
420
|
+
- [ ] For PWA, Mini App, and application-bridge planning, write a strict serializable input schema with an unknown-key rejection path.
|
|
421
|
+
- [ ] For PWA, Mini App, and application-bridge planning, write a normalized result schema with stable reason codes.
|
|
422
|
+
- [ ] For PWA, Mini App, and application-bridge planning, define explicit capability negotiation and unsupported-capability behavior.
|
|
423
|
+
- [ ] For PWA, Mini App, and application-bridge planning, define caller-owned authority, consent, and secret-boundary requirements.
|
|
424
|
+
- [ ] For PWA, Mini App, and application-bridge planning, implement the transport-neutral planner or validator without remote side effects.
|
|
425
|
+
- [ ] For PWA, Mini App, and application-bridge planning, implement the injected-adapter boundary with a no-op or unavailable fallback.
|
|
426
|
+
- [ ] For PWA, Mini App, and application-bridge planning, implement digest, size, and version evidence validation where data crosses a boundary.
|
|
427
|
+
- [ ] For PWA, Mini App, and application-bridge planning, implement AbortSignal, timeout, byte, operation, and concurrency budget behavior.
|
|
428
|
+
- [ ] For PWA, Mini App, and application-bridge planning, add a deterministic fake-adapter success-path test.
|
|
429
|
+
- [ ] For PWA, Mini App, and application-bridge planning, add a deterministic fake-adapter denial, mismatch, or unavailable-path test.
|
|
430
|
+
- [ ] For PWA, Mini App, and application-bridge planning, add a cancellation and partial-state regression test.
|
|
431
|
+
- [ ] For PWA, Mini App, and application-bridge planning, add a serialization, structuredClone, and package-export regression test.
|
|
432
|
+
- [ ] For PWA, Mini App, and application-bridge planning, add a redaction and low-cardinality metrics regression test.
|
|
433
|
+
- [ ] For PWA, Mini App, and application-bridge planning, review browser-safe and Node-only import boundaries for the domain.
|
|
434
|
+
- [ ] For PWA, Mini App, and application-bridge planning, update English JSDoc and capability documentation with the actual safety boundary.
|
|
435
|
+
|
|
436
|
+
## 8. API, protocol, security, and documentation
|
|
437
|
+
|
|
438
|
+
- [ ] Review the existing HTTP, JSON, NDJSON, SSE, content negotiation, SSRF, authorization, webhook, and idempotency contracts before extending any protocol type.
|
|
439
|
+
- [ ] Define new request and response envelopes with versioning, request identifiers, bounded diagnostics, and content-type-specific validation.
|
|
440
|
+
- [ ] Define an allowlist for binary-related media types and an explicit denial for ambiguous, executable, or unsupported payloads.
|
|
441
|
+
- [ ] Define protocol limits for header count, header bytes, URL length, request bytes, response bytes, streamed chunks, and event backlog.
|
|
442
|
+
- [ ] Define error codes for storage-pool, working-set, WASM-plan, binary-cache, provider-chain, delivery, PWA, Mini App, and DNS planning failures.
|
|
443
|
+
- [ ] Define redaction rules for URLs, tokens, authorization headers, signed URLs, object keys, provider messages, and binary paths.
|
|
444
|
+
- [ ] Implement schema and JSON serialization tests for every new public record.
|
|
445
|
+
- [ ] Implement content negotiation tests for supported JSON, NDJSON, SSE, text, binary-manifest, and unsupported media types.
|
|
446
|
+
- [ ] Implement SSRF regression tests for any newly accepted remote manifest or artifact URL.
|
|
447
|
+
- [ ] Implement cancellation and timeout tests for every operation that accepts an AbortSignal.
|
|
448
|
+
- [ ] Implement bounded observability tests ensuring no high-cardinality object contents enter metric labels.
|
|
449
|
+
- [ ] Implement redaction tests for sensitive headers and provider errors.
|
|
450
|
+
- [ ] Update API documentation and package export documentation for every accepted new surface.
|
|
451
|
+
- [ ] Update the capability matrix with implemented, deferred, caller-owned, unsupported, and unsafe-by-design status.
|
|
452
|
+
- [ ] Update the architecture document with the storage-versus-memory physical boundary and adapter responsibility model.
|
|
453
|
+
- [ ] Update operator guidance with explicit user authorization and data-retention requirements.
|
|
454
|
+
- [ ] Add release-note candidates only after the final implemented API surface is known.
|
|
455
|
+
|
|
456
|
+
## 9. Full verification and release execution
|
|
457
|
+
|
|
458
|
+
- [ ] Run focused deterministic tests after each completed feature block.
|
|
459
|
+
- [ ] Run the active engine test suite after each public contract change.
|
|
460
|
+
- [ ] Run legacy tests after any shared utility, scrape, cache, token, proxy, or middleware change.
|
|
461
|
+
- [ ] Run package import tests after every export-map update.
|
|
462
|
+
- [ ] Run browser-safe export graph checks after every browser, PWA, or delivery export update.
|
|
463
|
+
- [ ] Run the flat-native validation after every file move or native-surface documentation update.
|
|
464
|
+
- [ ] Run web typecheck and static build after any PWA or web adapter integration change.
|
|
465
|
+
- [ ] Run format validation before every commit candidate.
|
|
466
|
+
- [ ] Run npm pack dry-run and inspect the tarball contents before version bumping.
|
|
467
|
+
- [ ] Run npm audit at high severity and document any accepted external advisory using the fail-closed policy.
|
|
468
|
+
- [ ] Run workflow syntax and release manifest validation without publishing.
|
|
469
|
+
- [ ] Review the complete diff for secrets, generated output, fixed hosts, fixed ports, invalid filenames, unbounded loops, and scope-document modifications.
|
|
470
|
+
- [ ] Verify all active version manifests remain at 1.8.14 until implementation and release notes are ready.
|
|
471
|
+
- [ ] Bump all active version manifests to 1.8.15 only after the release candidate is validated.
|
|
472
|
+
- [ ] Update the iOS build number to 1008015 only as part of the validated version bump.
|
|
473
|
+
- [ ] Create docs/releasenotes-1.8.15.md from verified claims and the real generated artifact inventory.
|
|
474
|
+
- [ ] Update changelog.md with concise, evidence-backed 1.8.15 entries.
|
|
475
|
+
- [ ] Update docs/artifactavailability.md using only post-build and post-release evidence.
|
|
476
|
+
- [ ] Create a commit authored as iakadion after the full local gate passes.
|
|
477
|
+
- [ ] Push main only after a reviewed clean working tree is confirmed.
|
|
478
|
+
- [ ] Create tag v1.8.15 only after the validated release commit is remote and immutable-tag checks pass.
|
|
479
|
+
- [ ] Create the GitHub release only after verifying release notes, artifact names, signing labels, and package identity.
|
|
480
|
+
- [ ] Verify GHCR first, then GitHub Packages npm, npmjs, Maven, NuGet, and RubyGems using remote evidence.
|
|
481
|
+
- [ ] Verify the post-push container pull, OCI version label, and smoke test from the release workflow evidence.
|
|
482
|
+
- [ ] Record every unavailable artifact or caller-owned signing prerequisite instead of presenting a successful release claim.
|
|
483
|
+
- [ ] Mark completed 1.8.15 checklist items only after each corresponding evidence link or test result is recorded.
|