@weftlet/toolkit 0.3.0 → 0.4.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 +15 -0
- 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 +3 -5
- package/dist/application/hydrator.js +23 -48
- package/dist/application/overlay.js +10 -3
- 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 +29 -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/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/query.js +2 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.js +3 -0
- package/dist/interfaces/cli.js +44 -21
- 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/PROVIDERS.md +51 -1
- package/docs/RELEASE-1.0-PLAN.md +70 -21
- package/docs/RELEASING.md +4 -2
- package/docs/ROADMAP.md +31 -12
- package/docs/VALIDATION.md +212 -4
- package/docs/extraction-manifest.json +42 -21
- package/package.json +2 -2
package/docs/VALIDATION.md
CHANGED
|
@@ -8,10 +8,218 @@ 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
|
+
## T08 deterministic physical-file kinds, 2026-10-26
|
|
12
|
+
|
|
13
|
+
Implemented after 0.3.0; this checkpoint does not claim npm publication or private consumer
|
|
14
|
+
acceptance. [ADR 020](ADR-020-canonical-physical-file-producers.md) separates the neutral fix from
|
|
15
|
+
the consumer-owned framework adapter migration. The reported 120-ID partition is consumer
|
|
16
|
+
evidence; the upstream tests below are independent public reproductions, not that private replay.
|
|
17
|
+
|
|
18
|
+
- Local `pnpm context-graph:publication-check` passed: 384 deterministic tests (17 core,
|
|
19
|
+
367 toolkit), one optional OML skip, 13 advisory architecture findings, inventory, licenses and
|
|
20
|
+
fresh packed-consumer checks. No rule, baseline, exception or SHACL shape was relaxed.
|
|
21
|
+
- Sixteen new core cases verify the exported pure physical-file mapping, exact path spelling,
|
|
22
|
+
document/test/production distinctions and absence of inferred existence or intent. The package
|
|
23
|
+
retains no runtime package dependencies. Its public JS/declaration assets are required in the archive.
|
|
24
|
+
- Three public composition cases use actual file and contract extraction from committed Prisma
|
|
25
|
+
schema/production/spec/test/Markdown consumers, actual bundled SCIP indexing and document links.
|
|
26
|
+
They assert exact retained citations/digests, confidence, authority and conceptual contract IDs.
|
|
27
|
+
A kind-only historical control restores the old Component label on an actual test-consumer fact
|
|
28
|
+
and fails strict SHACL; unchanged current producer output conforms. This control is not claimed
|
|
29
|
+
as execution of the installed 0.3.0 package. A public adapter-shaped fixture imports only core's
|
|
30
|
+
factory for its physical nodes; it is not the private framework implementation.
|
|
31
|
+
- The overlay case reindexes real source changes without routing configured, retains canonical
|
|
32
|
+
kinds/draft authority, and proves its new identity differs from the frozen 0.3.0 formula.
|
|
33
|
+
A separately labeled retained-inference fixture still fails strict SHACL when incompatible;
|
|
34
|
+
previous heads, snapshots and assertion bytes remain intact. It is neither rewritten nor suppressed.
|
|
35
|
+
- Routing and governance regressions compose real producer facts with neutral extraction and
|
|
36
|
+
strict SHACL. They retain routing binding IDs, provenance/authority and architectural attributes;
|
|
37
|
+
document endpoints join canonical Document identities, test files remain Evidence, and business
|
|
38
|
+
module/contract identities stay separate. Governance analyzer 3 differs from the frozen prior ID.
|
|
39
|
+
- Twelve compatibility cases reject old/missing assembly, contract, SCIP-fact and configured
|
|
40
|
+
routing metadata for current validation. Production application tests still query historical
|
|
41
|
+
facts unchanged at the same commit/configuration, label extraction incompatibility separately
|
|
42
|
+
from checkout staleness, and invoke no provider, indexer, hydration or graph refresh.
|
|
43
|
+
- Existing hydration/reuse/rename/delete tests pass with graph-v7 and preserve older snapshot
|
|
44
|
+
records. Semantic artifact/provider/prompt identity stays unchanged; no model call or private
|
|
45
|
+
cache rewrite is required by this deterministic fix. Non-document model kinds remain unreviewed
|
|
46
|
+
assertions and can still fail strict SHACL; this increment does not silently reinterpret them.
|
|
47
|
+
- Fresh packed installation checks a public `@weftlet/core` adapter import against actual neutral
|
|
48
|
+
contract test-consumer facts, strict SHACL, real SCIP, RDF/SPARQL projection, CLI/npx and MCP.
|
|
49
|
+
Independent review found no remaining blocker. All 79 original source path/hash pairs are intact.
|
|
50
|
+
|
|
51
|
+
[PR 27](https://github.com/jchewitt/weftlet/pull/27) merged at
|
|
52
|
+
`7b3b0a4af260a6fa70f1107b3c5c315826c22c0e`. Exact feature head
|
|
53
|
+
`493c68faada31f35e4c7dd5d047e70ac5c96b2ad` passed hosted Ubuntu and native Windows checks
|
|
54
|
+
in [push run 40420049204](https://github.com/jchewitt/weftlet/actions/runs/40420049204) and
|
|
55
|
+
[PR run 40420084937](https://github.com/jchewitt/weftlet/actions/runs/40420084937).
|
|
56
|
+
Publication is pending the separately reviewed 0.4.0 release. No private application files
|
|
57
|
+
or installed consumer packages were modified. The consumer must upgrade both released packages,
|
|
58
|
+
migrate/version its framework extractor, run composed adapter tests, then complete full hydration
|
|
59
|
+
and repeat acceptance before its adoption blocker can be declared resolved.
|
|
60
|
+
|
|
61
|
+
## T04 semantic failure diagnostics, 2026-10-26
|
|
62
|
+
|
|
63
|
+
Implemented in development source after 0.3.0; no new npm publication is claimed.
|
|
64
|
+
[ADR 019](ADR-019-semantic-failure-diagnostics.md) records the safe failure envelope, opaque
|
|
65
|
+
source correlation, settled progress and recovery boundaries. T04 does not change prompts,
|
|
66
|
+
artifact keys, source/assertion authority, timeout defaults or graph validation.
|
|
67
|
+
|
|
68
|
+
- Local `pnpm context-graph:publication-check` passed: 351 deterministic tests (1 core,
|
|
69
|
+
350 toolkit), one optional OML skip, inventory, licenses and fresh packed-consumer checks.
|
|
70
|
+
- 20 new application cases use committed public fixtures and real artifact/snapshot storage.
|
|
71
|
+
They cover retained completed work, resumed reuse, cache hits, timeout/root-cause ordering,
|
|
72
|
+
synchronous sibling cancellation, late provider results, in-flight writes, late storage failure,
|
|
73
|
+
cancellation between sources and final completed/remaining counts. The previous snapshot/head
|
|
74
|
+
remains intact after failure. An injected Codex runner verifies elapsed time across retries
|
|
75
|
+
is separate from the configured per-attempt limit; no real model is called.
|
|
76
|
+
- Unknown provider messages, private abort reasons and unrecognized error codes are excluded
|
|
77
|
+
from public reports. Missing infrastructure, invalid output, unresolved mappings, low confidence
|
|
78
|
+
and cache problems retain distinct safe diagnoses. The existing RDF regression now checks the
|
|
79
|
+
typed unresolved-policy error and unchanged prior head; its positive, missing-link, contradiction
|
|
80
|
+
and full SHACL checks remain in place.
|
|
81
|
+
- Four CLI subprocess cases cover actual module timeouts, unknown module errors, missing provider
|
|
82
|
+
infrastructure, source-ID mapping through local preview, progress/error privacy, empty failure
|
|
83
|
+
stdout, JSON-only stderr with `--quiet`, and preserved previous snapshot bytes. The installed
|
|
84
|
+
consumer verifies public error/helper exports, required runtime assets, matching preview IDs and
|
|
85
|
+
safe structured failure from an unavailable provider. Existing installed CLI/npx, real SCIP,
|
|
86
|
+
RDF/SPARQL/SHACL, viewer and MCP initialization/missing-snapshot checks pass.
|
|
87
|
+
- Governance reports 13 advisory findings: the 12 prior findings plus a new `semantic.ts` size
|
|
88
|
+
signal (510 nonblank/noncomment lines against the 500-line threshold). Independent review
|
|
89
|
+
considered the addition; scheduling/reporting is separated into its own module. The warning
|
|
90
|
+
remains visible. No rule, baseline or exception was changed; line count is not proof of
|
|
91
|
+
modularity or a product violation.
|
|
92
|
+
- Independent review found no remaining blocker. All 79 original source path/hash pairs are
|
|
93
|
+
unchanged. [PR 25](https://github.com/jchewitt/weftlet/pull/25) merged at
|
|
94
|
+
`a919b82eab35808985d5c497bbe59ccfcba8bfcb`. Exact feature head
|
|
95
|
+
`a755dcdd2c0f97a7507f02f64b907a231162bf78` passed hosted Ubuntu and native Windows checks
|
|
96
|
+
in [push run 40417172248](https://github.com/jchewitt/weftlet/actions/runs/40417172248)
|
|
97
|
+
and [PR run 40417209468](https://github.com/jchewitt/weftlet/actions/runs/40417209468).
|
|
98
|
+
Both runs completed successfully; the Windows suite includes the new application/CLI failure
|
|
99
|
+
tests and existing provider/process tests, plus inventory and license checks.
|
|
100
|
+
|
|
101
|
+
These checks use public deterministic fixtures and local child processes, not live models or
|
|
102
|
+
private consumer data. Genuine consumer acceptance remains separate. Native Windows is covered
|
|
103
|
+
by the hosted runs above; the local run is Linux/Node 24.19.0/pnpm 10.18.2.
|
|
104
|
+
Published packages remain at 0.3.0 at this checkpoint. Broader T05, T06 and T07 remain separate
|
|
105
|
+
1.0 increments.
|
|
106
|
+
|
|
107
|
+
## T03 operational semantic-cache reuse, 2026-10-26
|
|
108
|
+
|
|
109
|
+
Implemented in development source after 0.3.0; no new npm publication is claimed here.
|
|
110
|
+
[ADR 018](ADR-018-operational-semantic-cache.md) records the built-in Codex user-cache partition,
|
|
111
|
+
the five operational settings that may share artifacts, and conservative custom-provider behavior.
|
|
112
|
+
Snapshot profiles, full configuration digests, workspace paths and the 0.2.1/0.3.0 artifact-key
|
|
113
|
+
contract remain unchanged. No credential environment values are read to construct cache identity.
|
|
114
|
+
|
|
115
|
+
- [PR 22](https://github.com/jchewitt/weftlet/pull/22) merged at
|
|
116
|
+
`5b889854e8a4b3a84653770e3244dee39d4b7d37`. Exact feature head
|
|
117
|
+
`c92689699fb09c80246edd61b692fca086ff6e83` passed hosted Ubuntu and focused native Windows
|
|
118
|
+
checks in [push run 40411921483](https://github.com/jchewitt/weftlet/actions/runs/40411921483)
|
|
119
|
+
and [PR run 40411954882](https://github.com/jchewitt/weftlet/actions/runs/40411954882).
|
|
120
|
+
Both runs completed successfully; Windows includes all four new cache test suites plus
|
|
121
|
+
inventory and license checks. Independent review found no remaining blocker. All 79 original
|
|
122
|
+
source path/hash pairs remain unchanged.
|
|
123
|
+
- Local `pnpm context-graph:publication-check` passed: 327 deterministic tests (1 core,
|
|
124
|
+
326 toolkit), one optional OML skip, 12 existing advisory architecture findings, inventory,
|
|
125
|
+
licenses and fresh packed-consumer checks. No new architecture baseline or exception was added.
|
|
126
|
+
- 28 configuration cases distinguish supported operational/default settings from model/policy/
|
|
127
|
+
authentication descriptors, unknown fields, repository/checkout and custom-provider changes.
|
|
128
|
+
The full snapshot storage profile still changes when its configuration changes.
|
|
129
|
+
- 11 integration/storage cases cover an interrupted run followed by a longer timeout: the
|
|
130
|
+
completed source is reused, the unfinished source is extracted, and the new snapshot records
|
|
131
|
+
the complete current configuration. Old-configuration evidence fails current snapshot checks;
|
|
132
|
+
a saved query can still label it as historical. An actual application hydration uses real
|
|
133
|
+
bundled SCIP and cached semantic artifacts with a tripwire against unexpected Codex calls.
|
|
134
|
+
- Legacy fixtures independently reproduce the frozen 0.3.0 profile/key formulas. Planning
|
|
135
|
+
neither copies artifacts nor creates directories; hydration promotes only validated entries
|
|
136
|
+
from the exact compatible legacy profile. Unrelated profiles and incomplete temporary files
|
|
137
|
+
are ignored. Old artifact bytes, raw output and provenance remain intact.
|
|
138
|
+
- 21 adoption cases exercise explicit previous-config recovery, dry-run/index/filesystem
|
|
139
|
+
preservation, current and historical agent scope, budgets, source changes and omitted coverage.
|
|
140
|
+
Incompatible policies, authentication descriptors, unknown fields, providers and checkouts are
|
|
141
|
+
refused. Corrupt, unreadable and conflicting entries are reported without overwriting them.
|
|
142
|
+
- Concurrent-writer tests cover matching/different outputs and malformed identity metadata with
|
|
143
|
+
a deceptively matching output-digest field. Both adoption and hydration promotion fully inspect
|
|
144
|
+
the retained entry before claiming success. Forced extraction preserves the old artifact.
|
|
145
|
+
- Three CLI subprocess cases verify that adoption runs before provider/adapter initialization,
|
|
146
|
+
preserves the active checkout, supports historical refs, rejects malformed invocation, and
|
|
147
|
+
returns structured nonzero results for cache or budget problems. The fresh packed consumer
|
|
148
|
+
checks the public API/runtime helpers and installed adoption command with unavailable provider
|
|
149
|
+
and adapter modules; its dry run selects the committed source without storage writes.
|
|
150
|
+
|
|
151
|
+
These are public deterministic fixtures, including an injected Codex runner, not live model
|
|
152
|
+
extractions or private consumer acceptance. Existing full SHACL and fresh snapshot publication
|
|
153
|
+
remain required after cache reuse. Published packages remain at 0.3.0 at this checkpoint;
|
|
154
|
+
the minor changeset is pending a separate release. T04 timeout diagnostics and the remaining
|
|
155
|
+
1.0 work are separate increments.
|
|
156
|
+
|
|
157
|
+
## Weftlet 0.3.0 preview and SHACL performance release, 2026-10-26
|
|
158
|
+
|
|
159
|
+
T02 and the focused cold-validation portion of T05 shipped ahead of the remaining 1.0 work.
|
|
160
|
+
Both `@weftlet/core@0.3.0` and `@weftlet/toolkit@0.3.0` are public npm `latest` at this
|
|
161
|
+
checkpoint. Core advances with the fixed release group and has no code change in this release.
|
|
162
|
+
|
|
163
|
+
- [Preview PR 18](https://github.com/jchewitt/weftlet/pull/18) merged at
|
|
164
|
+
`63c70f85b26a6cc60f8bc0615a86f6042a61ecd0`.
|
|
165
|
+
[SHACL PR 20](https://github.com/jchewitt/weftlet/pull/20) merged at
|
|
166
|
+
`e45fda59037293a6ded20da70b812bbd385500a5`. Its final head
|
|
167
|
+
`ec7bb87ea3287a6322eeb09fa72ba53b3f1eec4e` passed hosted Ubuntu and focused Windows
|
|
168
|
+
checks in [run 40402839679](https://github.com/jchewitt/weftlet/actions/runs/40402839679)
|
|
169
|
+
and [run 40402826889](https://github.com/jchewitt/weftlet/actions/runs/40402826889).
|
|
170
|
+
- [Release PR 19](https://github.com/jchewitt/weftlet/pull/19) advanced both versions to 0.3.0.
|
|
171
|
+
Exact head `897e731222180cc58ccf8acfe9cc2cd6252245b5` passed local `pnpm release:prepare`
|
|
172
|
+
and [dispatched Ubuntu/Windows checks](https://github.com/jchewitt/weftlet/actions/runs/40403315203).
|
|
173
|
+
The bot's automatic PR run required GitHub approval and ran no jobs; the explicit dispatch
|
|
174
|
+
validated that same head. The version PR contains only generated release metadata/changelogs
|
|
175
|
+
and consumed changesets, with no implementation changes.
|
|
176
|
+
- [Trusted-publishing run 40403950446](https://github.com/jchewitt/weftlet/actions/runs/40403950446)
|
|
177
|
+
completed preparation, publication and release records on attempt 1 at merged commit
|
|
178
|
+
`ffc332adb84b8f9e854370ff4799aab32e189356`. Both package-specific tags and GitHub Releases
|
|
179
|
+
identify that commit, and main's package versions agree with npm.
|
|
180
|
+
- Local publication checks passed 264 deterministic tests (1 core, 263 toolkit), one optional
|
|
181
|
+
OML skip, 12 existing advisory architecture findings, inventory, licenses and fresh packed-consumer
|
|
182
|
+
CLI/npx/MCP, preview, real SCIP, RDF/SPARQL/SHACL and viewer checks. Independent code review
|
|
183
|
+
found no remaining blocker. No shape, assertion, baseline or exception was removed or added to
|
|
184
|
+
conceal a failure. The 79 original source path/hash pairs remain unchanged.
|
|
185
|
+
- Independent archive review covered core's 11 entries and toolkit's 196 entries. Runtime assets,
|
|
186
|
+
declarations, examples, README, Apache license and attribution/notices are present. No Git state,
|
|
187
|
+
credentials, caches, private consumer payloads or compiled tests were included. Toolkit's packed
|
|
188
|
+
core dependency is `^0.3.0`. Public archives match both the hosted prepared archives and locally
|
|
189
|
+
reviewed archives byte for byte. Public SLSA provenance subjects match their SHA-512 hashes and
|
|
190
|
+
identify the expected source, repository, `publish.yml` and workflow attempt. This is a provenance
|
|
191
|
+
content/source check, not a separate cryptographic signature audit.
|
|
192
|
+
- A fresh Linux/Node 24.19.0 consumer installed only toolkit 0.3.0 directly from npm with
|
|
193
|
+
`--ignore-scripts`; core resolved transitively to 0.3.0. Both package-lock registry URLs and
|
|
194
|
+
integrity hashes matched the reviewed archives. The public two-document fixture retained
|
|
195
|
+
2 semantic facts within 17 total facts, including 4 real SCIP facts. Impact returned 17 facts;
|
|
196
|
+
SPARQL returned four canonical document references. Cold hydration extracted 2/reused 0;
|
|
197
|
+
the repeat extracted 0/reused 2 with identical snapshot identity, content digest and bytes.
|
|
198
|
+
- Installed cold/warm `hydrate --plan --json` worked with the provider module unavailable,
|
|
199
|
+
reported 2 expected extractions then 2 reusable artifacts, preserved source authority and
|
|
200
|
+
performed no preview storage writes or provider calls. Saved queries still worked with the
|
|
201
|
+
provider disabled. Hydration used a deterministic fixture provider; no external model calls
|
|
202
|
+
were made during these checks.
|
|
203
|
+
|
|
204
|
+
The installed public `RdfEvidenceGraph.validate()` also passed bounded, fresh-process public
|
|
205
|
+
synthetic checks, preserving exact canonical serialization:
|
|
206
|
+
|
|
207
|
+
| Facts / topology | Original quads | Validation including union | Whole-process maximum RSS |
|
|
208
|
+
| --- | ---: | ---: | ---: |
|
|
209
|
+
| 2,000 unique | 56,003 | 0.632 s | 492 MiB |
|
|
210
|
+
| 10,000 unique | 280,003 | 2.903 s | 1,640 MiB |
|
|
211
|
+
|
|
212
|
+
These are single-run synthetic measurements. Memory includes imports, fixtures and serialization;
|
|
213
|
+
the extra union has a material memory cost. This installed-package probe ran on Linux; hosted
|
|
214
|
+
Windows covers the new parity tests separately. Neither establishes the private consumer's total
|
|
215
|
+
generation time. Full consumer hydration/repeat acceptance, live semantic quality, broader T05
|
|
216
|
+
progress/reuse work and the remaining [1.0 tasks](RELEASE-1.0-PLAN.md) remain open. The SHACL
|
|
217
|
+
change preserves compatible 0.2.1 semantic artifacts and does not require forced re-extraction.
|
|
218
|
+
|
|
11
219
|
## T05 cold SHACL validation improvement, 2026-10-26
|
|
12
220
|
|
|
13
|
-
|
|
14
|
-
|
|
221
|
+
Pre-release source checkpoint following the T02 preview merge; npm was still at 0.2.1.
|
|
222
|
+
The subsequent 0.3.0 publication is recorded above. [ADR 017](ADR-017-shacl-validation-union.md)
|
|
15
223
|
records the measured graph-wildcard lookup cost and the temporary all-triples union used by the
|
|
16
224
|
unchanged JavaScript SHACL validator. The canonical named dataset and every assertion remain intact.
|
|
17
225
|
|
|
@@ -53,14 +261,14 @@ repeated validation. A 2,200-fact case detects the invalid final assertion witho
|
|
|
53
261
|
The existing full hydration integration still verifies that failed SHACL preserves the last head.
|
|
54
262
|
The shape Turtle is byte-for-byte unchanged from the T02 merge; no shape or assertion was dropped.
|
|
55
263
|
|
|
56
|
-
Hosted checks and release status
|
|
264
|
+
Hosted checks and release status were pending at this source checkpoint; their results are above.
|
|
57
265
|
Early identity preflight, in-phase progress, validation-result reuse and incremental validation
|
|
58
266
|
remain separate work. Each hydration still performs full SHACL before publishing; saved queries
|
|
59
267
|
do not repeat validation. Private consumer full hydration/repeat acceptance remains pending.
|
|
60
268
|
|
|
61
269
|
## T02 no-model hydration preview, 2026-10-26
|
|
62
270
|
|
|
63
|
-
|
|
271
|
+
Pre-release source checkpoint, while npm was still at 0.2.1. Subsequent 0.3.0 publication is above. See
|
|
64
272
|
[ADR-016](ADR-016-hydration-preview.md) for source, cache and readiness semantics.
|
|
65
273
|
|
|
66
274
|
[PR 18](https://github.com/jchewitt/weftlet/pull/18) merged at
|
|
@@ -108,7 +108,7 @@
|
|
|
108
108
|
"destinationPath": "package.json",
|
|
109
109
|
"sourceSha256": "a575dbb2fed8c554b95e8e9b3e03a0c21cab1be7249860bbebc18e046b2ff78d",
|
|
110
110
|
"modified": true,
|
|
111
|
-
"destinationSha256": "
|
|
111
|
+
"destinationSha256": "1e5ae982ffbb2cb02071bbf6c4f8040836dcc451c5e478f10b07cc5646f0e1eb"
|
|
112
112
|
},
|
|
113
113
|
{
|
|
114
114
|
"sourcePath": "tools/context-graph/packages/core/LICENSE",
|
|
@@ -129,7 +129,7 @@
|
|
|
129
129
|
"destinationPath": "packages/core/README.md",
|
|
130
130
|
"sourceSha256": "6044bf7b9a3dc793f41e2ff048546ed11938957d10a5b143eb1739ac4cd7477c",
|
|
131
131
|
"modified": true,
|
|
132
|
-
"destinationSha256": "
|
|
132
|
+
"destinationSha256": "c929bd90f5d2bae73554df2dcd0af0ad1bfd45d0843cd7940bde90c42b1266b9"
|
|
133
133
|
},
|
|
134
134
|
{
|
|
135
135
|
"sourcePath": "tools/context-graph/packages/core/THIRD_PARTY_NOTICES.md",
|
|
@@ -143,21 +143,21 @@
|
|
|
143
143
|
"destinationPath": "packages/core/package.json",
|
|
144
144
|
"sourceSha256": "2a29066eb8452f22fafcb06bb035a84dda93c5705dba32aba600a1b7e5aaf19c",
|
|
145
145
|
"modified": true,
|
|
146
|
-
"destinationSha256": "
|
|
146
|
+
"destinationSha256": "090d8d90cbf775e6edf1656215d75200f9961009ef75f2ab4de55fe5603814ea"
|
|
147
147
|
},
|
|
148
148
|
{
|
|
149
149
|
"sourcePath": "tools/context-graph/packages/core/src/core.ts",
|
|
150
150
|
"destinationPath": "packages/core/src/core.ts",
|
|
151
151
|
"sourceSha256": "cb3f4eb7bfe9f458494607406664445a276aad37235930a043d400ea9211ed16",
|
|
152
152
|
"modified": true,
|
|
153
|
-
"destinationSha256": "
|
|
153
|
+
"destinationSha256": "00550f6cc7a8caa4120337ebc73e443b988bfdb72d05a2f828c88db502606fe3"
|
|
154
154
|
},
|
|
155
155
|
{
|
|
156
156
|
"sourcePath": "tools/context-graph/packages/core/src/index.ts",
|
|
157
157
|
"destinationPath": "packages/core/src/index.ts",
|
|
158
158
|
"sourceSha256": "6cbf51e60ac8c7b21b04870b50b92f6da0a1a3b2fa9dd21331e7e83e7beced05",
|
|
159
|
-
"modified":
|
|
160
|
-
"destinationSha256": "
|
|
159
|
+
"modified": true,
|
|
160
|
+
"destinationSha256": "d4edc3853d65cf55cd9b12ab17e3af2607f87f6d654556a25ac5253f975292ac"
|
|
161
161
|
},
|
|
162
162
|
{
|
|
163
163
|
"sourcePath": "tools/context-graph/packages/core/src/util.test.ts",
|
|
@@ -192,7 +192,7 @@
|
|
|
192
192
|
"destinationPath": "scripts/check-publication.mjs",
|
|
193
193
|
"sourceSha256": "88692c21d34cef2d2e5b20c92ab3ec26cbe6336889dbb7b534c681ded7f466b2",
|
|
194
194
|
"modified": true,
|
|
195
|
-
"destinationSha256": "
|
|
195
|
+
"destinationSha256": "2b92ad80a6a193b4628d4caec2bd29b6fbf3c6c97066bda2fe91ceb173d06158"
|
|
196
196
|
},
|
|
197
197
|
{
|
|
198
198
|
"sourcePath": "tools/context-graph/scripts/generate-third-party-notices.mjs",
|
|
@@ -227,21 +227,21 @@
|
|
|
227
227
|
"destinationPath": "src/application/application.ts",
|
|
228
228
|
"sourceSha256": "22e0fa1312c652f3e5ab2078d8c7e03d3b0235231e220df3349eb60622f78469",
|
|
229
229
|
"modified": true,
|
|
230
|
-
"destinationSha256": "
|
|
230
|
+
"destinationSha256": "e163e5ec862dcceea43d8351c3c0a4d0626e870b718fc1107627ebad10874628"
|
|
231
231
|
},
|
|
232
232
|
{
|
|
233
233
|
"sourcePath": "tools/context-graph/src/cache.ts",
|
|
234
234
|
"destinationPath": "src/configuration/cache.ts",
|
|
235
235
|
"sourceSha256": "c65c9803657762dbcfd482c58820950d938694a8432f38d65cc35a86eeca216d",
|
|
236
236
|
"modified": true,
|
|
237
|
-
"destinationSha256": "
|
|
237
|
+
"destinationSha256": "676467260f107d5120c19c11a6a32d785acbf6a0f69c03f96074ccd2c5e05b32"
|
|
238
238
|
},
|
|
239
239
|
{
|
|
240
240
|
"sourcePath": "tools/context-graph/src/cli.ts",
|
|
241
241
|
"destinationPath": "src/interfaces/cli.ts",
|
|
242
242
|
"sourceSha256": "c68f5f35a5325cc03811b0d4ffb6d58c31a9b4e6115fcb2c5e4fda9560a34714",
|
|
243
243
|
"modified": true,
|
|
244
|
-
"destinationSha256": "
|
|
244
|
+
"destinationSha256": "c333051df80a274410351b0ba1eef1a1e004f790fa457fd3ebb7909197c4ca29"
|
|
245
245
|
},
|
|
246
246
|
{
|
|
247
247
|
"sourcePath": "tools/context-graph/src/config.test.ts",
|
|
@@ -283,7 +283,7 @@
|
|
|
283
283
|
"destinationPath": "src/extraction/document.ts",
|
|
284
284
|
"sourceSha256": "62a2da37d8cc0637b192b7e70ae7a0dce72244d335da9df0e0ad9b0eb7c4e1f1",
|
|
285
285
|
"modified": true,
|
|
286
|
-
"destinationSha256": "
|
|
286
|
+
"destinationSha256": "1e9a5db4bf04455fa202d48fb20ac1de268d74179034cfcfa24d845cb4736bb3"
|
|
287
287
|
},
|
|
288
288
|
{
|
|
289
289
|
"sourcePath": "tools/context-graph/src/git.test.ts",
|
|
@@ -311,21 +311,21 @@
|
|
|
311
311
|
"destinationPath": "src/application/hydrator.test.ts",
|
|
312
312
|
"sourceSha256": "95f20a526fe69ce3a506ef01da1c20827e09d631a34126e781a07979cc43de07",
|
|
313
313
|
"modified": true,
|
|
314
|
-
"destinationSha256": "
|
|
314
|
+
"destinationSha256": "e32e0af9596cbf036570e08033503c053a25ed401c3c999c48dab7b106274710"
|
|
315
315
|
},
|
|
316
316
|
{
|
|
317
317
|
"sourcePath": "tools/context-graph/src/hydrator.ts",
|
|
318
318
|
"destinationPath": "src/application/hydrator.ts",
|
|
319
319
|
"sourceSha256": "bb41c5b53b26da10274d8b967b99c78ff12b485df16bfc66445252e35c94fb9d",
|
|
320
320
|
"modified": true,
|
|
321
|
-
"destinationSha256": "
|
|
321
|
+
"destinationSha256": "1833e788ca0c162947c626ff611f724d53f349b8d1dc019f204bd433726f9be9"
|
|
322
322
|
},
|
|
323
323
|
{
|
|
324
324
|
"sourcePath": "tools/context-graph/src/index.ts",
|
|
325
325
|
"destinationPath": "src/index.ts",
|
|
326
326
|
"sourceSha256": "a3545649f67fc0bf0496298e3f1dca1e91aa7cb68ec112c34b99a5785fa83f3c",
|
|
327
327
|
"modified": true,
|
|
328
|
-
"destinationSha256": "
|
|
328
|
+
"destinationSha256": "2dff4c9bca049dc1607cce7cf709494aae24a7f27b05fcb9353dd19de4546fac"
|
|
329
329
|
},
|
|
330
330
|
{
|
|
331
331
|
"sourcePath": "tools/context-graph/src/mcp-facade.ts",
|
|
@@ -395,7 +395,7 @@
|
|
|
395
395
|
"destinationPath": "src/graph/query.ts",
|
|
396
396
|
"sourceSha256": "4d67f87ca660cefe9686fb5b775f86a997a25d539819ea81d321c8bd1e0aaa39",
|
|
397
397
|
"modified": true,
|
|
398
|
-
"destinationSha256": "
|
|
398
|
+
"destinationSha256": "0cf5bf085aa71180447e7d5b35a19eba6b3e8d87cef550b8bcb996022a7618d8"
|
|
399
399
|
},
|
|
400
400
|
{
|
|
401
401
|
"sourcePath": "tools/context-graph/src/request.test.ts",
|
|
@@ -451,21 +451,21 @@
|
|
|
451
451
|
"destinationPath": "src/extraction/semantic.ts",
|
|
452
452
|
"sourceSha256": "1a41fb3fc5a9508c76be59d1c50b74d70ec96411fcbb7f63b0e098c1813d8473",
|
|
453
453
|
"modified": true,
|
|
454
|
-
"destinationSha256": "
|
|
454
|
+
"destinationSha256": "aaac083e8eea8e9b6a7303b73f8beea3014c10711eb4afc0b0dd9d81424d5437"
|
|
455
455
|
},
|
|
456
456
|
{
|
|
457
457
|
"sourcePath": "tools/context-graph/src/snapshot-checks.test.ts",
|
|
458
458
|
"destinationPath": "src/application/snapshot-checks.test.ts",
|
|
459
459
|
"sourceSha256": "a16c1676f3168fcc87c1fe095c4cb164c0a8738cc3610f1a92bb54ea75267400",
|
|
460
460
|
"modified": true,
|
|
461
|
-
"destinationSha256": "
|
|
461
|
+
"destinationSha256": "c6921040f8adcea8b9c8456a8be626cdaaaa5b45fa74cde1bfc3c312f1b9e05c"
|
|
462
462
|
},
|
|
463
463
|
{
|
|
464
464
|
"sourcePath": "tools/context-graph/src/snapshot-checks.ts",
|
|
465
465
|
"destinationPath": "src/application/snapshot-checks.ts",
|
|
466
466
|
"sourceSha256": "3c8e01b886d49ce8323b6275019fd503ec3bbbb21671808e228880cc0f853d07",
|
|
467
467
|
"modified": true,
|
|
468
|
-
"destinationSha256": "
|
|
468
|
+
"destinationSha256": "db0d088932820a3e34af3b71e3722e0b6e4bd1e0b7d04534bd806ff79cd0811f"
|
|
469
469
|
},
|
|
470
470
|
{
|
|
471
471
|
"sourcePath": "tools/context-graph/src/static.test.ts",
|
|
@@ -479,14 +479,14 @@
|
|
|
479
479
|
"destinationPath": "src/extraction/static.ts",
|
|
480
480
|
"sourceSha256": "f8dcff3e10361314c06911dc7cec1e2cb0f8d9af68a6c61a30b2a741c5c3a385",
|
|
481
481
|
"modified": true,
|
|
482
|
-
"destinationSha256": "
|
|
482
|
+
"destinationSha256": "99147784d567ff9ccf2619a5452824fb13dc7b8061fc269c1fc90b36cdd96851"
|
|
483
483
|
},
|
|
484
484
|
{
|
|
485
485
|
"sourcePath": "tools/context-graph/src/storage.ts",
|
|
486
486
|
"destinationPath": "src/storage/storage.ts",
|
|
487
487
|
"sourceSha256": "9e38af8e34dc84ccaed5322b37b485e60706c68542271926228fb6d4af3d1f71",
|
|
488
488
|
"modified": true,
|
|
489
|
-
"destinationSha256": "
|
|
489
|
+
"destinationSha256": "48a4eabe1954f612b1d27f2ac56cb63ae064b0b957570c25c349154adfc2d34d"
|
|
490
490
|
},
|
|
491
491
|
{
|
|
492
492
|
"sourcePath": "tools/context-graph/src/telemetry.test.ts",
|
|
@@ -521,7 +521,7 @@
|
|
|
521
521
|
"destinationPath": "src/visualization/visualization.ts",
|
|
522
522
|
"sourceSha256": "4839a5cfbd0a97bf3d338e59eca752a9b96812b464c0369da93a55d209120ab7",
|
|
523
523
|
"modified": true,
|
|
524
|
-
"destinationSha256": "
|
|
524
|
+
"destinationSha256": "e55328ba9957201c2152fcf036c8cd3eb9ce96fcbbdb93408ded2f5becd2f268"
|
|
525
525
|
},
|
|
526
526
|
{
|
|
527
527
|
"sourcePath": "tools/context-graph/templates/context-graph-development/SKILL.md",
|
|
@@ -610,6 +610,9 @@
|
|
|
610
610
|
"docs/ADR-015-repository-document-identity.md",
|
|
611
611
|
"docs/ADR-016-hydration-preview.md",
|
|
612
612
|
"docs/ADR-017-shacl-validation-union.md",
|
|
613
|
+
"docs/ADR-018-operational-semantic-cache.md",
|
|
614
|
+
"docs/ADR-019-semantic-failure-diagnostics.md",
|
|
615
|
+
"docs/ADR-020-canonical-physical-file-producers.md",
|
|
613
616
|
"docs/CLOUD-ENVIRONMENT.md",
|
|
614
617
|
"docs/CONSUMER-TRIAL.md",
|
|
615
618
|
"docs/ENVIRONMENT-VALIDATION.md",
|
|
@@ -697,6 +700,8 @@
|
|
|
697
700
|
"examples/pipeline/tsconfig.json",
|
|
698
701
|
"mcp-launcher.mjs",
|
|
699
702
|
"packages/core/CHANGELOG.md",
|
|
703
|
+
"packages/core/src/repository-nodes.test.ts",
|
|
704
|
+
"packages/core/src/repository-nodes.ts",
|
|
700
705
|
"pnpm-lock.yaml",
|
|
701
706
|
"pnpm-workspace.yaml",
|
|
702
707
|
"reviewed-licenses.json",
|
|
@@ -734,11 +739,18 @@
|
|
|
734
739
|
"scripts/update-inventory.mjs",
|
|
735
740
|
"scripts/version-packages.mjs",
|
|
736
741
|
"scripts/version-packages.test.ts",
|
|
742
|
+
"src/application/cache-adoption.ts",
|
|
743
|
+
"src/application/extraction-identity.ts",
|
|
744
|
+
"src/application/hydration-failure.ts",
|
|
737
745
|
"src/application/hydration-plan.ts",
|
|
738
746
|
"src/application/overlay.test.ts",
|
|
739
747
|
"src/application/overlay.ts",
|
|
740
748
|
"src/application/saved-evidence.ts",
|
|
749
|
+
"src/application/semantic-artifact-store.ts",
|
|
750
|
+
"src/application/semantic-run.ts",
|
|
751
|
+
"src/application/semantic-scope.ts",
|
|
741
752
|
"src/cli.ts",
|
|
753
|
+
"src/configuration/cache.test.ts",
|
|
742
754
|
"src/configuration/scip-project.ts",
|
|
743
755
|
"src/extraction/codex-auth.test.ts",
|
|
744
756
|
"src/extraction/codex-auth.ts",
|
|
@@ -757,19 +769,23 @@
|
|
|
757
769
|
"src/extraction/scip-project.test.ts",
|
|
758
770
|
"src/extraction/scip-project.ts",
|
|
759
771
|
"src/extraction/semantic-cache.ts",
|
|
772
|
+
"src/extraction/semantic-diagnostics.ts",
|
|
760
773
|
"src/extraction/semantic-identity.ts",
|
|
761
774
|
"src/extraction/semantic-process.test.ts",
|
|
762
775
|
"src/extraction/semantic-process.ts",
|
|
763
776
|
"src/extraction/semantic-sources.ts",
|
|
764
777
|
"src/governance/governance.test.ts",
|
|
765
778
|
"src/governance/governance.ts",
|
|
779
|
+
"src/governance/physical-file-kinds.test.ts",
|
|
766
780
|
"src/graph/authority.ts",
|
|
767
781
|
"src/graph/ranking.test.ts",
|
|
768
782
|
"src/graph/ranking.ts",
|
|
769
783
|
"src/graph/rdf.ts",
|
|
770
784
|
"src/graph/shacl-shapes.ts",
|
|
771
785
|
"src/infrastructure/module-resolution.ts",
|
|
786
|
+
"src/interfaces/cache-adoption.test.ts",
|
|
772
787
|
"src/interfaces/doctor.ts",
|
|
788
|
+
"src/interfaces/hydration-failure.test.ts",
|
|
773
789
|
"src/interfaces/hydration-plan.test.ts",
|
|
774
790
|
"src/interfaces/init.test.ts",
|
|
775
791
|
"src/interfaces/init.ts",
|
|
@@ -782,12 +798,17 @@
|
|
|
782
798
|
"src/telemetry.ts",
|
|
783
799
|
"src/visualization/viewer-interaction.ts",
|
|
784
800
|
"tests/architecture.test.ts",
|
|
801
|
+
"tests/cache-adoption.test.ts",
|
|
802
|
+
"tests/extractor-compatibility.test.ts",
|
|
803
|
+
"tests/hydration-failure.test.ts",
|
|
785
804
|
"tests/hydration-plan.test.ts",
|
|
786
805
|
"tests/module-boundaries.test.ts",
|
|
806
|
+
"tests/physical-file-kinds.test.ts",
|
|
787
807
|
"tests/rdf-ontology.test.ts",
|
|
788
808
|
"tests/rdf.test.ts",
|
|
789
809
|
"tests/routing.test.ts",
|
|
790
810
|
"tests/runtime.test.ts",
|
|
811
|
+
"tests/semantic-cache-reuse.test.ts",
|
|
791
812
|
"tests/semantic-identity.test.ts",
|
|
792
813
|
"tests/shacl-validation.test.ts",
|
|
793
814
|
"tests/snapshot-lifecycle.test.ts"
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@weftlet/toolkit",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"description": "Evidence-backed context graphs for AI development agents: product intent, contracts, code, tests and runtime behavior",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"type": "module",
|
|
@@ -63,7 +63,7 @@
|
|
|
63
63
|
"n3": "2.7.2",
|
|
64
64
|
"rdf-validate-shacl": "0.6.5",
|
|
65
65
|
"sparqljs": "3.7.4",
|
|
66
|
-
"@weftlet/core": "^0.
|
|
66
|
+
"@weftlet/core": "^0.4.0"
|
|
67
67
|
},
|
|
68
68
|
"devDependencies": {
|
|
69
69
|
"@changesets/cli": "3.0.3",
|