@weftlet/toolkit 0.3.0 → 0.5.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/README.md +26 -1
- package/dist/application/application.js +7 -4
- package/dist/application/cache-adoption.d.ts +43 -0
- package/dist/application/cache-adoption.js +129 -0
- package/dist/application/extraction-identity.d.ts +6 -0
- package/dist/application/extraction-identity.js +15 -0
- package/dist/application/hydration-failure.d.ts +41 -0
- package/dist/application/hydration-failure.js +43 -0
- package/dist/application/hydration-plan.d.ts +4 -7
- package/dist/application/hydration-plan.js +7 -15
- package/dist/application/hydrator.d.ts +5 -5
- package/dist/application/hydrator.js +37 -52
- package/dist/application/overlay.d.ts +3 -1
- package/dist/application/overlay.js +13 -4
- package/dist/application/saved-evidence.d.ts +6 -3
- package/dist/application/saved-evidence.js +7 -1
- package/dist/application/semantic-artifact-store.d.ts +4 -0
- package/dist/application/semantic-artifact-store.js +7 -0
- package/dist/application/semantic-run.d.ts +32 -0
- package/dist/application/semantic-run.js +111 -0
- package/dist/application/semantic-scope.d.ts +13 -0
- package/dist/application/semantic-scope.js +12 -0
- package/dist/application/snapshot-checks.d.ts +2 -1
- package/dist/application/snapshot-checks.js +8 -1
- package/dist/configuration/cache.d.ts +6 -0
- package/dist/configuration/cache.js +18 -0
- package/dist/configuration/config.js +1 -1
- package/dist/extraction/document.js +1 -1
- package/dist/extraction/providers.js +10 -3
- package/dist/extraction/repository-nodes.d.ts +2 -3
- package/dist/extraction/repository-nodes.js +5 -11
- package/dist/extraction/routing.d.ts +1 -1
- package/dist/extraction/routing.js +3 -6
- package/dist/extraction/semantic-cache.d.ts +1 -0
- package/dist/extraction/semantic-cache.js +9 -2
- package/dist/extraction/semantic-diagnostics.d.ts +9 -0
- package/dist/extraction/semantic-diagnostics.js +15 -0
- package/dist/extraction/semantic.d.ts +5 -1
- package/dist/extraction/semantic.js +39 -6
- package/dist/extraction/static.d.ts +13 -5
- package/dist/extraction/static.js +8 -15
- package/dist/governance/governance.js +11 -7
- package/dist/graph/identity-preflight.d.ts +57 -0
- package/dist/graph/identity-preflight.js +71 -0
- package/dist/graph/query.js +2 -0
- package/dist/graph/rdf.d.ts +4 -1
- package/dist/graph/rdf.js +10 -6
- package/dist/graph/validation-progress.d.ts +14 -0
- package/dist/graph/validation-progress.js +18 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.js +5 -0
- package/dist/interfaces/cli.js +52 -22
- package/dist/storage/storage.d.ts +7 -1
- package/dist/storage/storage.js +15 -3
- package/dist/visualization/visualization.js +1 -0
- package/docs/ADR-016-hydration-preview.md +1 -1
- package/docs/ADR-017-shacl-validation-union.md +1 -1
- package/docs/ADR-018-operational-semantic-cache.md +100 -0
- package/docs/ADR-019-semantic-failure-diagnostics.md +82 -0
- package/docs/ADR-020-canonical-physical-file-producers.md +97 -0
- package/docs/ADR-021-identity-preflight-and-validation-timing.md +81 -0
- package/docs/PROVIDERS.md +58 -1
- package/docs/RELEASE-1.0-PLAN.md +100 -34
- package/docs/RELEASING.md +4 -2
- package/docs/ROADMAP.md +40 -15
- package/docs/VALIDATION.md +351 -4
- package/docs/extraction-manifest.json +50 -23
- package/package.json +2 -2
package/docs/VALIDATION.md
CHANGED
|
@@ -8,10 +8,357 @@ The milestone entries below record the original cloud checks. Subsequent
|
|
|
8
8
|
establishes live Codex success on Windows and the full deterministic checks on WSL,
|
|
9
9
|
while identifying remaining native Windows issues.
|
|
10
10
|
|
|
11
|
+
## Ten-minute timeout blocker, 2026-10-27
|
|
12
|
+
|
|
13
|
+
The maintainer reports that published 0.4.0 rejects the approved `semantic.timeoutMs: 600000`.
|
|
14
|
+
The consumer's ten-minute retry has **not run**. This is a configuration ceiling defect, separate
|
|
15
|
+
from the corrected physical-file kinds and earlier positive consumer update below.
|
|
16
|
+
|
|
17
|
+
The source patch raises only the accepted maximum from 300000 to 600000 ms. Omitted timeout
|
|
18
|
+
still defaults to 120000; finite positive integer validation, retries, cancellation and the
|
|
19
|
+
separate authentication/discovery limits are unchanged. No provider/prompt/artifact identity
|
|
20
|
+
changes or forced model re-extraction are introduced.
|
|
21
|
+
|
|
22
|
+
Focused checks pass: config acceptance/boundary rejection, Codex propagation across retries,
|
|
23
|
+
per-call override/cancellation, a cancellable module deadline, and real artifact reuse/preview
|
|
24
|
+
after an interrupted run switches to 600000. The provider tests use an injected runner/local
|
|
25
|
+
module and finish immediately; they are not a live ten-minute extraction. Independent review
|
|
26
|
+
found no blocker. Local `pnpm context-graph:publication-check` passed: 408 deterministic tests
|
|
27
|
+
(17 core, 391 toolkit), one optional OML skip, 13 unchanged advisory architecture findings,
|
|
28
|
+
inventory, licenses and fresh packed-consumer checks. The installed CLI accepts 600000 in
|
|
29
|
+
no-model preview and reports the same limit on an immediate missing-provider failure.
|
|
30
|
+
All 79 original source path/hash pairs remain intact. Hosted checks and publication are recorded
|
|
31
|
+
after completion; the consumer's live ten-minute retry remains unrun.
|
|
32
|
+
|
|
33
|
+
## Consumer update after 0.4.0, 2026-10-27
|
|
34
|
+
|
|
35
|
+
The maintainer reports that the consumer updated and appears to be working. This is positive
|
|
36
|
+
consumer feedback after the T08 release. No exact consumer commit, graph scope, adapter test
|
|
37
|
+
report, full-run timing or repeated-hydration report was supplied with that update, so those
|
|
38
|
+
detailed acceptance results remain unrecorded. No private consumer files were inspected or changed.
|
|
39
|
+
|
|
40
|
+
## T05a identity preflight and validation phase timing, 2026-10-27
|
|
41
|
+
|
|
42
|
+
Implemented in development source after 0.4.0; no new publication is claimed.
|
|
43
|
+
[ADR 021](ADR-021-identity-preflight-and-validation-timing.md) records the bounded scope:
|
|
44
|
+
complete identity/kind attribution before compilation/RDF, explicit local diagnostic detail,
|
|
45
|
+
and elapsed phase boundaries. Full SHACL shapes, accepted facts and cache identities are unchanged.
|
|
46
|
+
|
|
47
|
+
- Twelve pure preflight cases pass: both endpoints, cross-source kinds, conceptual IDs,
|
|
48
|
+
duplicates/self-references, all late conflicts, exact copied provenance/authority, absent
|
|
49
|
+
authority preservation and opaque defaults including unknown kinds. A pass explicitly says
|
|
50
|
+
`shaclValidated: false`; it does not infer canonical classification or approved intent.
|
|
51
|
+
- Two hydration composition cases pass with actual committed file/contract/document producers
|
|
52
|
+
and a deterministic semantic provider. A kind conflict skips compilation, invariants and RDF;
|
|
53
|
+
previous head/snapshot and completed artifact bytes remain intact. Correcting the fixture
|
|
54
|
+
reuses the artifact and runs full SHACL. Invalid confidence with consistent kinds still fails
|
|
55
|
+
real SHACL. Indexing is stubbed in these scheduling cases; real SCIP is covered separately.
|
|
56
|
+
- Four CLI subprocess cases pass with real SCIP and public adapters: default human/JSON privacy,
|
|
57
|
+
explicit exact attribution, empty failure stdout, preserved artifacts/snapshots, overlay detail
|
|
58
|
+
propagation and valid full-validation timing. The existing four semantic-failure CLI cases pass.
|
|
59
|
+
- All 26 full SHACL parity/timing cases pass, including original named-dataset positive/negative
|
|
60
|
+
equivalence and the 2,200-fact late failure. Phase events do not change verdicts or serialization;
|
|
61
|
+
completed means the operation returned, not that its graph conformed.
|
|
62
|
+
- Local `pnpm context-graph:publication-check` passed: 403 deterministic tests (17 core,
|
|
63
|
+
386 toolkit), one optional OML skip, 13 unchanged advisory architecture findings, inventory,
|
|
64
|
+
licenses and fresh packed-consumer checks. The installed public API detects kind conflicts,
|
|
65
|
+
preserves exact opt-in citations, reports phase timing and still rejects the same pair under
|
|
66
|
+
full SHACL. All 79 original extraction source path/hash pairs remain intact.
|
|
67
|
+
- Independent runtime/test review found no blocker. No live model or private consumer
|
|
68
|
+
performance result is implied.
|
|
69
|
+
|
|
70
|
+
[PR 30](https://github.com/jchewitt/weftlet/pull/30) merged at
|
|
71
|
+
`c8db1f0b871f5e6f3d1d2e9eda1b045aa45469df`. Exact feature head
|
|
72
|
+
`dc01421aa3953963e411430266b9035f2852cfd8` passed hosted Ubuntu and native Windows checks
|
|
73
|
+
in [push run 40451305862](https://github.com/jchewitt/weftlet/actions/runs/40451305862) and
|
|
74
|
+
[PR run 40451332221](https://github.com/jchewitt/weftlet/actions/runs/40451332221).
|
|
75
|
+
T05a is merged but unpublished; npm 0.4.0 remains the verified public release.
|
|
76
|
+
|
|
77
|
+
A bounded public profile ran the unique-node fixture in three fresh processes: 500 facts,
|
|
78
|
+
the same 500 facts again, then 501 facts. Command: `node scripts/benchmark-shacl.mjs --counts 500
|
|
79
|
+
--topologies unique --modes optimized --deadline-ms 15000` (use 501 for the final case), after
|
|
80
|
+
`pnpm build`. Linux x64, Node 24.19.0, N3 2.7.2 and rdf-validate-shacl 0.6.5; built RDF module
|
|
81
|
+
SHA-256 `8a66e0266d812b742103d42de3572faf4ab9873d0f37424b563962ea7473fae1`.
|
|
82
|
+
|
|
83
|
+
| Facts / nodes | Preflight ms | RDF construction ms | Union ms | SHACL ms | Process peak RSS KiB |
|
|
84
|
+
| --- | ---: | ---: | ---: | ---: | ---: |
|
|
85
|
+
| 500 / 1,000 | 0.84 | 67.90 | 32 | 186 | 330,496 |
|
|
86
|
+
| 500 / 1,000 repeat | 0.74 | 57.15 | 32 | 174 | 334,356 |
|
|
87
|
+
| 501 / 1,002 | 0.74 | 59.88 | 54 | 185 | 333,584 |
|
|
88
|
+
|
|
89
|
+
All three ran full validation and preserved serialization; the repeated input's serialization
|
|
90
|
+
digest matched, and the added-fact digest differed. These single-run smoke measurements establish
|
|
91
|
+
phase visibility, not a speedup or production capacity. RSS includes imports, fixture and
|
|
92
|
+
serialization; no successful-result reuse or dependency-aware incremental validation was used.
|
|
93
|
+
|
|
94
|
+
## 0.4.0 publication and installed-package checks, 2026-10-26
|
|
95
|
+
|
|
96
|
+
`@weftlet/core@0.4.0` and `@weftlet/toolkit@0.4.0` ship T03 operational cache reuse,
|
|
97
|
+
T04 semantic failure diagnostics and T08 canonical physical-file kinds. This is an upstream
|
|
98
|
+
release; private consumer adapter migration and full hydration acceptance remain pending.
|
|
99
|
+
|
|
100
|
+
[Release PR 23](https://github.com/jchewitt/weftlet/pull/23) merged at
|
|
101
|
+
`9c6c2625ce2f5d3a28d2be40610130c745b416d4`. Trusted publishing
|
|
102
|
+
[run 40421791942](https://github.com/jchewitt/weftlet/actions/runs/40421791942)
|
|
103
|
+
completed preparation, publication and release records on attempt 1. Both versions are public
|
|
104
|
+
and tagged `latest`; downloaded registry archives are byte-identical to the independently
|
|
105
|
+
reviewed archives. npm provenance identifies that merge commit and workflow attempt. The
|
|
106
|
+
[core](https://github.com/jchewitt/weftlet/releases/tag/%40weftlet/core%400.4.0) and
|
|
107
|
+
[toolkit](https://github.com/jchewitt/weftlet/releases/tag/%40weftlet/toolkit%400.4.0)
|
|
108
|
+
package tags and GitHub Releases resolve to the same commit.
|
|
109
|
+
|
|
110
|
+
- Exact reviewed version head `8ea26c7f538202b4acb67ceeda6adbf220a85e93` passed
|
|
111
|
+
`pnpm release:prepare`: 384 deterministic tests (17 core, 367 toolkit), one optional OML skip,
|
|
112
|
+
13 advisory architecture findings, inventory, licenses and fresh packed-consumer checks.
|
|
113
|
+
Hosted Ubuntu and native Windows checks passed in
|
|
114
|
+
[run 40421253221](https://github.com/jchewitt/weftlet/actions/runs/40421253221).
|
|
115
|
+
- Independent source/archive review found no release blocker. Core contains 13 files/8,212 bytes;
|
|
116
|
+
toolkit contains 213 files/244,424 bytes. Archive digests match the reviewed manifest; all
|
|
117
|
+
non-manifest files match the reviewed checkout. Public exports, CLI/runtime assets, Apache-2.0
|
|
118
|
+
licenses and attribution are present. Core has no runtime dependencies; toolkit requires
|
|
119
|
+
core `^0.4.0`. No forbidden local-state entries or credential-signature matches were found.
|
|
120
|
+
All 79 original extraction source path/hash pairs are unchanged.
|
|
121
|
+
- A separate offline rehearsal installed those exact archives with lifecycle scripts disabled.
|
|
122
|
+
Its public fixture produced 54 facts, including four contract consumers, 24 SCIP facts and two
|
|
123
|
+
public adapter facts. Strict SHACL, immutable repeat reuse and provider-unavailable saved reads
|
|
124
|
+
passed. This rehearsal is distinct from public-registry acceptance.
|
|
125
|
+
- Fresh public-registry installation passed on Linux/Node 24.19.0 with lifecycle scripts disabled.
|
|
126
|
+
Its lockfile registry URLs and SHA-512 values match the reviewed archives. The committed public
|
|
127
|
+
fixture produced 54 total facts, including two semantic facts, four contract consumers, 24 real SCIP facts,
|
|
128
|
+
two public adapter facts and nine document facts; the impact query returned 53 facts.
|
|
129
|
+
Cold hydration extracted two artifacts; repeat hydration extracted zero and reused both with
|
|
130
|
+
identical snapshot identity, content digest and stored bytes. Removing the provider module
|
|
131
|
+
preserved no-model preview and saved queries, with no additional provider invocations.
|
|
132
|
+
Fixture commit: `41d0c4fa68f7a358d52471dbbd2a6186adb22fa5`; content digest:
|
|
133
|
+
`f5a8fbde346d070074164edf970bfd98246c4e34718b43f5850757501daf50ca`.
|
|
134
|
+
|
|
135
|
+
The installed-package fixture uses a deterministic public provider, actual contract/document
|
|
136
|
+
extractors, real TypeScript SCIP and a public adapter that imports only the core file factory.
|
|
137
|
+
It checks retained citations, digests and authority, strict RDF/SHACL, projection/query results,
|
|
138
|
+
repeat artifact reuse and unchanged snapshot bytes. It makes no live model calls and does not
|
|
139
|
+
establish private adapter correctness, semantic quality or the consumer's full-graph performance.
|
|
140
|
+
The T03/T04 test checkpoints below remain the evidence for operational Codex cache partitioning
|
|
141
|
+
and structured failure handling; ordinary fixture reuse is not a substitute for those tests.
|
|
142
|
+
|
|
143
|
+
Reviewed and public archive integrity:
|
|
144
|
+
|
|
145
|
+
| Package | SHA-512 integrity |
|
|
146
|
+
| --- | --- |
|
|
147
|
+
| `@weftlet/core@0.4.0` | `sha512-hNiLpfFaL/o+uQJlRdW+jN/cdMIY8QxTAgwTA7F1kN8f1KhHWH8qsxc4RgC8mP+4huLsWLk8m0v14xrq5prMdA==` |
|
|
148
|
+
| `@weftlet/toolkit@0.4.0` | `sha512-UrHRBuz3v7Olfqk0iaSyvZ1+9xnCHMAjh0ZGj+HWde4zAR0M2zEHjeOxkyC2B2d63gPAqttlQ5kzpauRdfd0Jg==` |
|
|
149
|
+
|
|
150
|
+
## T08 deterministic physical-file kinds, 2026-10-26
|
|
151
|
+
|
|
152
|
+
Implemented after 0.3.0; this checkpoint does not claim npm publication or private consumer
|
|
153
|
+
acceptance. [ADR 020](ADR-020-canonical-physical-file-producers.md) separates the neutral fix from
|
|
154
|
+
the consumer-owned framework adapter migration. The reported 120-ID partition is consumer
|
|
155
|
+
evidence; the upstream tests below are independent public reproductions, not that private replay.
|
|
156
|
+
|
|
157
|
+
- Local `pnpm context-graph:publication-check` passed: 384 deterministic tests (17 core,
|
|
158
|
+
367 toolkit), one optional OML skip, 13 advisory architecture findings, inventory, licenses and
|
|
159
|
+
fresh packed-consumer checks. No rule, baseline, exception or SHACL shape was relaxed.
|
|
160
|
+
- Sixteen new core cases verify the exported pure physical-file mapping, exact path spelling,
|
|
161
|
+
document/test/production distinctions and absence of inferred existence or intent. The package
|
|
162
|
+
retains no runtime package dependencies. Its public JS/declaration assets are required in the archive.
|
|
163
|
+
- Three public composition cases use actual file and contract extraction from committed Prisma
|
|
164
|
+
schema/production/spec/test/Markdown consumers, actual bundled SCIP indexing and document links.
|
|
165
|
+
They assert exact retained citations/digests, confidence, authority and conceptual contract IDs.
|
|
166
|
+
A kind-only historical control restores the old Component label on an actual test-consumer fact
|
|
167
|
+
and fails strict SHACL; unchanged current producer output conforms. This control is not claimed
|
|
168
|
+
as execution of the installed 0.3.0 package. A public adapter-shaped fixture imports only core's
|
|
169
|
+
factory for its physical nodes; it is not the private framework implementation.
|
|
170
|
+
- The overlay case reindexes real source changes without routing configured, retains canonical
|
|
171
|
+
kinds/draft authority, and proves its new identity differs from the frozen 0.3.0 formula.
|
|
172
|
+
A separately labeled retained-inference fixture still fails strict SHACL when incompatible;
|
|
173
|
+
previous heads, snapshots and assertion bytes remain intact. It is neither rewritten nor suppressed.
|
|
174
|
+
- Routing and governance regressions compose real producer facts with neutral extraction and
|
|
175
|
+
strict SHACL. They retain routing binding IDs, provenance/authority and architectural attributes;
|
|
176
|
+
document endpoints join canonical Document identities, test files remain Evidence, and business
|
|
177
|
+
module/contract identities stay separate. Governance analyzer 3 differs from the frozen prior ID.
|
|
178
|
+
- Twelve compatibility cases reject old/missing assembly, contract, SCIP-fact and configured
|
|
179
|
+
routing metadata for current validation. Production application tests still query historical
|
|
180
|
+
facts unchanged at the same commit/configuration, label extraction incompatibility separately
|
|
181
|
+
from checkout staleness, and invoke no provider, indexer, hydration or graph refresh.
|
|
182
|
+
- Existing hydration/reuse/rename/delete tests pass with graph-v7 and preserve older snapshot
|
|
183
|
+
records. Semantic artifact/provider/prompt identity stays unchanged; no model call or private
|
|
184
|
+
cache rewrite is required by this deterministic fix. Non-document model kinds remain unreviewed
|
|
185
|
+
assertions and can still fail strict SHACL; this increment does not silently reinterpret them.
|
|
186
|
+
- Fresh packed installation checks a public `@weftlet/core` adapter import against actual neutral
|
|
187
|
+
contract test-consumer facts, strict SHACL, real SCIP, RDF/SPARQL projection, CLI/npx and MCP.
|
|
188
|
+
Independent review found no remaining blocker. All 79 original source path/hash pairs are intact.
|
|
189
|
+
|
|
190
|
+
[PR 27](https://github.com/jchewitt/weftlet/pull/27) merged at
|
|
191
|
+
`7b3b0a4af260a6fa70f1107b3c5c315826c22c0e`. Exact feature head
|
|
192
|
+
`493c68faada31f35e4c7dd5d047e70ac5c96b2ad` passed hosted Ubuntu and native Windows checks
|
|
193
|
+
in [push run 40420049204](https://github.com/jchewitt/weftlet/actions/runs/40420049204) and
|
|
194
|
+
[PR run 40420084937](https://github.com/jchewitt/weftlet/actions/runs/40420084937).
|
|
195
|
+
Publication is pending the separately reviewed 0.4.0 release. No private application files
|
|
196
|
+
or installed consumer packages were modified. The consumer must upgrade both released packages,
|
|
197
|
+
migrate/version its framework extractor, run composed adapter tests, then complete full hydration
|
|
198
|
+
and repeat acceptance before its adoption blocker can be declared resolved.
|
|
199
|
+
|
|
200
|
+
## T04 semantic failure diagnostics, 2026-10-26
|
|
201
|
+
|
|
202
|
+
Implemented in development source after 0.3.0; no new npm publication is claimed.
|
|
203
|
+
[ADR 019](ADR-019-semantic-failure-diagnostics.md) records the safe failure envelope, opaque
|
|
204
|
+
source correlation, settled progress and recovery boundaries. T04 does not change prompts,
|
|
205
|
+
artifact keys, source/assertion authority, timeout defaults or graph validation.
|
|
206
|
+
|
|
207
|
+
- Local `pnpm context-graph:publication-check` passed: 351 deterministic tests (1 core,
|
|
208
|
+
350 toolkit), one optional OML skip, inventory, licenses and fresh packed-consumer checks.
|
|
209
|
+
- 20 new application cases use committed public fixtures and real artifact/snapshot storage.
|
|
210
|
+
They cover retained completed work, resumed reuse, cache hits, timeout/root-cause ordering,
|
|
211
|
+
synchronous sibling cancellation, late provider results, in-flight writes, late storage failure,
|
|
212
|
+
cancellation between sources and final completed/remaining counts. The previous snapshot/head
|
|
213
|
+
remains intact after failure. An injected Codex runner verifies elapsed time across retries
|
|
214
|
+
is separate from the configured per-attempt limit; no real model is called.
|
|
215
|
+
- Unknown provider messages, private abort reasons and unrecognized error codes are excluded
|
|
216
|
+
from public reports. Missing infrastructure, invalid output, unresolved mappings, low confidence
|
|
217
|
+
and cache problems retain distinct safe diagnoses. The existing RDF regression now checks the
|
|
218
|
+
typed unresolved-policy error and unchanged prior head; its positive, missing-link, contradiction
|
|
219
|
+
and full SHACL checks remain in place.
|
|
220
|
+
- Four CLI subprocess cases cover actual module timeouts, unknown module errors, missing provider
|
|
221
|
+
infrastructure, source-ID mapping through local preview, progress/error privacy, empty failure
|
|
222
|
+
stdout, JSON-only stderr with `--quiet`, and preserved previous snapshot bytes. The installed
|
|
223
|
+
consumer verifies public error/helper exports, required runtime assets, matching preview IDs and
|
|
224
|
+
safe structured failure from an unavailable provider. Existing installed CLI/npx, real SCIP,
|
|
225
|
+
RDF/SPARQL/SHACL, viewer and MCP initialization/missing-snapshot checks pass.
|
|
226
|
+
- Governance reports 13 advisory findings: the 12 prior findings plus a new `semantic.ts` size
|
|
227
|
+
signal (510 nonblank/noncomment lines against the 500-line threshold). Independent review
|
|
228
|
+
considered the addition; scheduling/reporting is separated into its own module. The warning
|
|
229
|
+
remains visible. No rule, baseline or exception was changed; line count is not proof of
|
|
230
|
+
modularity or a product violation.
|
|
231
|
+
- Independent review found no remaining blocker. All 79 original source path/hash pairs are
|
|
232
|
+
unchanged. [PR 25](https://github.com/jchewitt/weftlet/pull/25) merged at
|
|
233
|
+
`a919b82eab35808985d5c497bbe59ccfcba8bfcb`. Exact feature head
|
|
234
|
+
`a755dcdd2c0f97a7507f02f64b907a231162bf78` passed hosted Ubuntu and native Windows checks
|
|
235
|
+
in [push run 40417172248](https://github.com/jchewitt/weftlet/actions/runs/40417172248)
|
|
236
|
+
and [PR run 40417209468](https://github.com/jchewitt/weftlet/actions/runs/40417209468).
|
|
237
|
+
Both runs completed successfully; the Windows suite includes the new application/CLI failure
|
|
238
|
+
tests and existing provider/process tests, plus inventory and license checks.
|
|
239
|
+
|
|
240
|
+
These checks use public deterministic fixtures and local child processes, not live models or
|
|
241
|
+
private consumer data. Genuine consumer acceptance remains separate. Native Windows is covered
|
|
242
|
+
by the hosted runs above; the local run is Linux/Node 24.19.0/pnpm 10.18.2.
|
|
243
|
+
Published packages remain at 0.3.0 at this checkpoint. Broader T05, T06 and T07 remain separate
|
|
244
|
+
1.0 increments.
|
|
245
|
+
|
|
246
|
+
## T03 operational semantic-cache reuse, 2026-10-26
|
|
247
|
+
|
|
248
|
+
Implemented in development source after 0.3.0; no new npm publication is claimed here.
|
|
249
|
+
[ADR 018](ADR-018-operational-semantic-cache.md) records the built-in Codex user-cache partition,
|
|
250
|
+
the five operational settings that may share artifacts, and conservative custom-provider behavior.
|
|
251
|
+
Snapshot profiles, full configuration digests, workspace paths and the 0.2.1/0.3.0 artifact-key
|
|
252
|
+
contract remain unchanged. No credential environment values are read to construct cache identity.
|
|
253
|
+
|
|
254
|
+
- [PR 22](https://github.com/jchewitt/weftlet/pull/22) merged at
|
|
255
|
+
`5b889854e8a4b3a84653770e3244dee39d4b7d37`. Exact feature head
|
|
256
|
+
`c92689699fb09c80246edd61b692fca086ff6e83` passed hosted Ubuntu and focused native Windows
|
|
257
|
+
checks in [push run 40411921483](https://github.com/jchewitt/weftlet/actions/runs/40411921483)
|
|
258
|
+
and [PR run 40411954882](https://github.com/jchewitt/weftlet/actions/runs/40411954882).
|
|
259
|
+
Both runs completed successfully; Windows includes all four new cache test suites plus
|
|
260
|
+
inventory and license checks. Independent review found no remaining blocker. All 79 original
|
|
261
|
+
source path/hash pairs remain unchanged.
|
|
262
|
+
- Local `pnpm context-graph:publication-check` passed: 327 deterministic tests (1 core,
|
|
263
|
+
326 toolkit), one optional OML skip, 12 existing advisory architecture findings, inventory,
|
|
264
|
+
licenses and fresh packed-consumer checks. No new architecture baseline or exception was added.
|
|
265
|
+
- 28 configuration cases distinguish supported operational/default settings from model/policy/
|
|
266
|
+
authentication descriptors, unknown fields, repository/checkout and custom-provider changes.
|
|
267
|
+
The full snapshot storage profile still changes when its configuration changes.
|
|
268
|
+
- 11 integration/storage cases cover an interrupted run followed by a longer timeout: the
|
|
269
|
+
completed source is reused, the unfinished source is extracted, and the new snapshot records
|
|
270
|
+
the complete current configuration. Old-configuration evidence fails current snapshot checks;
|
|
271
|
+
a saved query can still label it as historical. An actual application hydration uses real
|
|
272
|
+
bundled SCIP and cached semantic artifacts with a tripwire against unexpected Codex calls.
|
|
273
|
+
- Legacy fixtures independently reproduce the frozen 0.3.0 profile/key formulas. Planning
|
|
274
|
+
neither copies artifacts nor creates directories; hydration promotes only validated entries
|
|
275
|
+
from the exact compatible legacy profile. Unrelated profiles and incomplete temporary files
|
|
276
|
+
are ignored. Old artifact bytes, raw output and provenance remain intact.
|
|
277
|
+
- 21 adoption cases exercise explicit previous-config recovery, dry-run/index/filesystem
|
|
278
|
+
preservation, current and historical agent scope, budgets, source changes and omitted coverage.
|
|
279
|
+
Incompatible policies, authentication descriptors, unknown fields, providers and checkouts are
|
|
280
|
+
refused. Corrupt, unreadable and conflicting entries are reported without overwriting them.
|
|
281
|
+
- Concurrent-writer tests cover matching/different outputs and malformed identity metadata with
|
|
282
|
+
a deceptively matching output-digest field. Both adoption and hydration promotion fully inspect
|
|
283
|
+
the retained entry before claiming success. Forced extraction preserves the old artifact.
|
|
284
|
+
- Three CLI subprocess cases verify that adoption runs before provider/adapter initialization,
|
|
285
|
+
preserves the active checkout, supports historical refs, rejects malformed invocation, and
|
|
286
|
+
returns structured nonzero results for cache or budget problems. The fresh packed consumer
|
|
287
|
+
checks the public API/runtime helpers and installed adoption command with unavailable provider
|
|
288
|
+
and adapter modules; its dry run selects the committed source without storage writes.
|
|
289
|
+
|
|
290
|
+
These are public deterministic fixtures, including an injected Codex runner, not live model
|
|
291
|
+
extractions or private consumer acceptance. Existing full SHACL and fresh snapshot publication
|
|
292
|
+
remain required after cache reuse. Published packages remain at 0.3.0 at this checkpoint;
|
|
293
|
+
the minor changeset is pending a separate release. T04 timeout diagnostics and the remaining
|
|
294
|
+
1.0 work are separate increments.
|
|
295
|
+
|
|
296
|
+
## Weftlet 0.3.0 preview and SHACL performance release, 2026-10-26
|
|
297
|
+
|
|
298
|
+
T02 and the focused cold-validation portion of T05 shipped ahead of the remaining 1.0 work.
|
|
299
|
+
Both `@weftlet/core@0.3.0` and `@weftlet/toolkit@0.3.0` are public npm `latest` at this
|
|
300
|
+
checkpoint. Core advances with the fixed release group and has no code change in this release.
|
|
301
|
+
|
|
302
|
+
- [Preview PR 18](https://github.com/jchewitt/weftlet/pull/18) merged at
|
|
303
|
+
`63c70f85b26a6cc60f8bc0615a86f6042a61ecd0`.
|
|
304
|
+
[SHACL PR 20](https://github.com/jchewitt/weftlet/pull/20) merged at
|
|
305
|
+
`e45fda59037293a6ded20da70b812bbd385500a5`. Its final head
|
|
306
|
+
`ec7bb87ea3287a6322eeb09fa72ba53b3f1eec4e` passed hosted Ubuntu and focused Windows
|
|
307
|
+
checks in [run 40402839679](https://github.com/jchewitt/weftlet/actions/runs/40402839679)
|
|
308
|
+
and [run 40402826889](https://github.com/jchewitt/weftlet/actions/runs/40402826889).
|
|
309
|
+
- [Release PR 19](https://github.com/jchewitt/weftlet/pull/19) advanced both versions to 0.3.0.
|
|
310
|
+
Exact head `897e731222180cc58ccf8acfe9cc2cd6252245b5` passed local `pnpm release:prepare`
|
|
311
|
+
and [dispatched Ubuntu/Windows checks](https://github.com/jchewitt/weftlet/actions/runs/40403315203).
|
|
312
|
+
The bot's automatic PR run required GitHub approval and ran no jobs; the explicit dispatch
|
|
313
|
+
validated that same head. The version PR contains only generated release metadata/changelogs
|
|
314
|
+
and consumed changesets, with no implementation changes.
|
|
315
|
+
- [Trusted-publishing run 40403950446](https://github.com/jchewitt/weftlet/actions/runs/40403950446)
|
|
316
|
+
completed preparation, publication and release records on attempt 1 at merged commit
|
|
317
|
+
`ffc332adb84b8f9e854370ff4799aab32e189356`. Both package-specific tags and GitHub Releases
|
|
318
|
+
identify that commit, and main's package versions agree with npm.
|
|
319
|
+
- Local publication checks passed 264 deterministic tests (1 core, 263 toolkit), one optional
|
|
320
|
+
OML skip, 12 existing advisory architecture findings, inventory, licenses and fresh packed-consumer
|
|
321
|
+
CLI/npx/MCP, preview, real SCIP, RDF/SPARQL/SHACL and viewer checks. Independent code review
|
|
322
|
+
found no remaining blocker. No shape, assertion, baseline or exception was removed or added to
|
|
323
|
+
conceal a failure. The 79 original source path/hash pairs remain unchanged.
|
|
324
|
+
- Independent archive review covered core's 11 entries and toolkit's 196 entries. Runtime assets,
|
|
325
|
+
declarations, examples, README, Apache license and attribution/notices are present. No Git state,
|
|
326
|
+
credentials, caches, private consumer payloads or compiled tests were included. Toolkit's packed
|
|
327
|
+
core dependency is `^0.3.0`. Public archives match both the hosted prepared archives and locally
|
|
328
|
+
reviewed archives byte for byte. Public SLSA provenance subjects match their SHA-512 hashes and
|
|
329
|
+
identify the expected source, repository, `publish.yml` and workflow attempt. This is a provenance
|
|
330
|
+
content/source check, not a separate cryptographic signature audit.
|
|
331
|
+
- A fresh Linux/Node 24.19.0 consumer installed only toolkit 0.3.0 directly from npm with
|
|
332
|
+
`--ignore-scripts`; core resolved transitively to 0.3.0. Both package-lock registry URLs and
|
|
333
|
+
integrity hashes matched the reviewed archives. The public two-document fixture retained
|
|
334
|
+
2 semantic facts within 17 total facts, including 4 real SCIP facts. Impact returned 17 facts;
|
|
335
|
+
SPARQL returned four canonical document references. Cold hydration extracted 2/reused 0;
|
|
336
|
+
the repeat extracted 0/reused 2 with identical snapshot identity, content digest and bytes.
|
|
337
|
+
- Installed cold/warm `hydrate --plan --json` worked with the provider module unavailable,
|
|
338
|
+
reported 2 expected extractions then 2 reusable artifacts, preserved source authority and
|
|
339
|
+
performed no preview storage writes or provider calls. Saved queries still worked with the
|
|
340
|
+
provider disabled. Hydration used a deterministic fixture provider; no external model calls
|
|
341
|
+
were made during these checks.
|
|
342
|
+
|
|
343
|
+
The installed public `RdfEvidenceGraph.validate()` also passed bounded, fresh-process public
|
|
344
|
+
synthetic checks, preserving exact canonical serialization:
|
|
345
|
+
|
|
346
|
+
| Facts / topology | Original quads | Validation including union | Whole-process maximum RSS |
|
|
347
|
+
| --- | ---: | ---: | ---: |
|
|
348
|
+
| 2,000 unique | 56,003 | 0.632 s | 492 MiB |
|
|
349
|
+
| 10,000 unique | 280,003 | 2.903 s | 1,640 MiB |
|
|
350
|
+
|
|
351
|
+
These are single-run synthetic measurements. Memory includes imports, fixtures and serialization;
|
|
352
|
+
the extra union has a material memory cost. This installed-package probe ran on Linux; hosted
|
|
353
|
+
Windows covers the new parity tests separately. Neither establishes the private consumer's total
|
|
354
|
+
generation time. Full consumer hydration/repeat acceptance, live semantic quality, broader T05
|
|
355
|
+
progress/reuse work and the remaining [1.0 tasks](RELEASE-1.0-PLAN.md) remain open. The SHACL
|
|
356
|
+
change preserves compatible 0.2.1 semantic artifacts and does not require forced re-extraction.
|
|
357
|
+
|
|
11
358
|
## T05 cold SHACL validation improvement, 2026-10-26
|
|
12
359
|
|
|
13
|
-
|
|
14
|
-
|
|
360
|
+
Pre-release source checkpoint following the T02 preview merge; npm was still at 0.2.1.
|
|
361
|
+
The subsequent 0.3.0 publication is recorded above. [ADR 017](ADR-017-shacl-validation-union.md)
|
|
15
362
|
records the measured graph-wildcard lookup cost and the temporary all-triples union used by the
|
|
16
363
|
unchanged JavaScript SHACL validator. The canonical named dataset and every assertion remain intact.
|
|
17
364
|
|
|
@@ -53,14 +400,14 @@ repeated validation. A 2,200-fact case detects the invalid final assertion witho
|
|
|
53
400
|
The existing full hydration integration still verifies that failed SHACL preserves the last head.
|
|
54
401
|
The shape Turtle is byte-for-byte unchanged from the T02 merge; no shape or assertion was dropped.
|
|
55
402
|
|
|
56
|
-
Hosted checks and release status
|
|
403
|
+
Hosted checks and release status were pending at this source checkpoint; their results are above.
|
|
57
404
|
Early identity preflight, in-phase progress, validation-result reuse and incremental validation
|
|
58
405
|
remain separate work. Each hydration still performs full SHACL before publishing; saved queries
|
|
59
406
|
do not repeat validation. Private consumer full hydration/repeat acceptance remains pending.
|
|
60
407
|
|
|
61
408
|
## T02 no-model hydration preview, 2026-10-26
|
|
62
409
|
|
|
63
|
-
|
|
410
|
+
Pre-release source checkpoint, while npm was still at 0.2.1. Subsequent 0.3.0 publication is above. See
|
|
64
411
|
[ADR-016](ADR-016-hydration-preview.md) for source, cache and readiness semantics.
|
|
65
412
|
|
|
66
413
|
[PR 18](https://github.com/jchewitt/weftlet/pull/18) merged at
|