@weftlet/toolkit 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,17 +1,18 @@
1
1
  # Weftlet — Context Graph Toolkit
2
2
 
3
- An extracted Apache-2.0 toolkit for connecting product intent, contracts, implementation,
4
- tests and observed runtime evidence. Derived from LaunchEcho Context Graph; see
5
- [NOTICE](NOTICE) and the [source inventory](docs/SOURCE-INVENTORY.md).
3
+ Weftlet is an open-source context-graph toolkit that helps AI development agents understand
4
+ how a local change affects the broader product. It connects approved product intent, shared
5
+ contracts, implementing code, downstream consumers, tests and observed runtime evidence.
6
6
 
7
- This standalone implementation uses small, recorded delivery milestones. See [roadmap](docs/ROADMAP.md) and
8
- [validation](docs/VALIDATION.md) for completed checks and limitations.
7
+ Agents can query cited evidence and explore dependencies across module and asynchronous
8
+ boundaries. See the [roadmap](docs/ROADMAP.md) and [validation](docs/VALIDATION.md) for
9
+ supported capabilities and limitations.
9
10
 
10
11
  ## Set up a project
11
12
 
12
13
  Weftlet uses `@weftlet/toolkit`; its neutral `@weftlet/core` dependency is installed
13
- automatically. The initial Weftlet release targets `0.1.0`. Check [release status](docs/RELEASING.md)
14
- for public availability before using the npm commands below. Existing Tently users should follow
14
+ automatically. Both packages are available on npm at `0.1.0`; source now prepares `0.1.1`.
15
+ See [release status](docs/RELEASING.md). Existing Tently users should follow
15
16
  the [migration guide](docs/MIGRATING-TO-WEFTLET.md).
16
17
 
17
18
  From your TypeScript project's directory (Node 24+):
@@ -59,7 +60,8 @@ For a project-local dependency, install `npm install --save-dev @weftlet/toolkit
59
60
  the project's absolute configuration path. Pin a reviewed version for reproducible agent setup.
60
61
 
61
62
  Linux/WSL is the validated full-suite path. Native Windows has a recorded live Codex pass;
62
- archive-byte, snapshot replacement and MCP fixture fixes await native confirmation.
63
+ the archive-byte, snapshot replacement and MCP startup regression suite also passes hosted
64
+ Windows CI. Full native Windows release preparation remains separately unvalidated.
63
65
  See the [validation record](docs/VALIDATION.md).
64
66
 
65
67
  ## Development
@@ -103,7 +105,7 @@ Install the locally packed core and toolkit tarballs together. The installed com
103
105
  `weftlet`, `weftlet-mcp`, and the compatible `context-graph` / `context-graph-mcp` aliases. For example, after preparing a release:
104
106
 
105
107
  ```sh
106
- npm install --save-dev /path/to/tently/.release/weftlet-core-0.1.0.tgz /path/to/tently/.release/weftlet-toolkit-0.1.0.tgz
108
+ npm install --save-dev /path/to/weftlet/.release/weftlet-core-0.1.1.tgz /path/to/weftlet/.release/weftlet-toolkit-0.1.1.tgz
107
109
  npx weftlet init
108
110
  ```
109
111
 
@@ -154,3 +156,8 @@ See [provider contract](docs/PROVIDERS.md) for bounded extraction and adapters,
154
156
  [architecture policy](docs/architecture-policy.md) for deterministic governance.
155
157
 
156
158
  See the [bounded viewer guide](docs/VIEWER.md) and [cloud setup](docs/CLOUD-ENVIRONMENT.md).
159
+
160
+ ## License and provenance
161
+
162
+ Apache-2.0. See [LICENSE](LICENSE), [NOTICE](NOTICE), and the
163
+ [source inventory](docs/SOURCE-INVENTORY.md) for attribution and extraction history.
@@ -12,6 +12,11 @@ ran checkout and the repository's composite action. That action selects Node 24
12
12
  packed-consumer smoke. It neither publishes packages nor invokes a live model. Codex/npm
13
13
  publication credentials and the managed cloud filesystem are not needed by this job.
14
14
 
15
+ A subsequent hosted [run 39656137105](https://github.com/jchewitt/weftlet/actions/runs/39656137105)
16
+ passed at `4cdc4e5bc8b53bde3b23ce0be550146ac6ae817c`: the full Ubuntu job and a focused
17
+ Windows job covering storage contention, committed archive bytes and all original MCP startup
18
+ cases. This Windows subset does not establish full Windows release-preparation readiness.
19
+
15
20
  ## Fresh cloud: requires a new task
16
21
 
17
22
  Before publishing the current environment snapshot:
@@ -1,8 +1,8 @@
1
1
  # Migrating from Tently to Weftlet
2
2
 
3
3
  The project is now Weftlet. LaunchEcho remains the maintainer; the GitHub repository remains
4
- [jchewitt/weftlet](https://github.com/jchewitt/weftlet). Check [release status](RELEASING.md) before
5
- installing the new names: source preparation is not proof of public npm availability.
4
+ [jchewitt/weftlet](https://github.com/jchewitt/weftlet). Both new package names are published
5
+ at 0.1.0; see [release status](RELEASING.md) for subsequent releases.
6
6
 
7
7
  | Previous package / command | Replacement |
8
8
  | --- | --- |
@@ -12,7 +12,7 @@ installing the new names: source preparation is not proof of public npm availabi
12
12
  | `context-graph` | Still supported; `weftlet` is the primary CLI |
13
13
  | `context-graph-mcp` | Still supported; `weftlet-mcp` is the primary MCP binary |
14
14
 
15
- After the new release is public, replace the old dependency using your package manager. For
15
+ Replace the old dependency using your package manager. For
16
16
  an npm project that installed the toolkit as a development dependency:
17
17
 
18
18
  ```sh
@@ -51,4 +51,4 @@ Native Windows limitations remain documented in [validation](VALIDATION.md).
51
51
 
52
52
  The old `@launch-echo` releases remain immutable and usable. Do not unpublish them. Deprecation
53
53
  is a later registry action, only after both replacements and a fresh public installation are
54
- verified. This migration does not modify or reintegrate the original TradePilot repository.
54
+ verified. Existing consumer integrations can migrate independently.
package/docs/PROVIDERS.md CHANGED
@@ -21,9 +21,9 @@ Artifact storage contains model output and must remain private with the source r
21
21
 
22
22
  ## Codex authentication
23
23
 
24
- Status: implemented in unreleased source; live validation is **tentative and non-blocking for
25
- release**, as accepted by the maintainer. Follow-up is planned after publication and adoption into
26
- Banditrade using the maintainer's existing ChatGPT login; API-key testing may remain deferred.
24
+ Status: included in `@weftlet/toolkit@0.1.0`; live validation is **tentative and non-blocking for
25
+ release**, as accepted by the maintainer. Follow-up is planned in a consumer project using an
26
+ existing ChatGPT login; API-key testing may remain deferred.
27
27
  The earlier `@launch-echo/tently@0.1.0` release does not contain this option. Both modes still use Codex CLI;
28
28
  this is not a direct OpenAI API provider or a fix for the managed-cloud filesystem issue.
29
29
 
package/docs/RELEASING.md CHANGED
@@ -1,8 +1,9 @@
1
1
  # Weftlet npm releases
2
2
 
3
- Current source prepares the first `@weftlet/core@0.1.0` and `@weftlet/toolkit@0.1.0` release.
4
- The maintainer created the `weftlet` npm organization. Neither new package is claimed published
5
- by this document. The earlier `@launch-echo/tently-core@0.1.0` and `@launch-echo/tently@0.1.0`
3
+ The maintainer published `@weftlet/core@0.1.0` and `@weftlet/toolkit@0.1.0`; both versions
4
+ and their archive integrity are verified against the public registry. Current source prepares
5
+ `0.1.1` for both packages, with independent-project descriptions and updated documentation.
6
+ The earlier `@launch-echo/tently-core@0.1.0` and `@launch-echo/tently@0.1.0`
6
7
  releases remain available and undeprecated; their public installation evidence is in
7
8
  [validation](VALIDATION.md). GitHub is now `jchewitt/weftlet`; npm and GitHub owner names need not match.
8
9
 
@@ -10,12 +11,12 @@ Live Codex authentication validation is tentative and non-blocking for release,
10
11
  the maintainer. Deterministic release checks still apply. Native Windows limitations remain
11
12
  recorded; use Linux or WSL for the full release gate. See [consumer migration](MIGRATING-TO-WEFTLET.md).
12
13
 
13
- ## First publication and maintainer setup
14
+ ## Trusted-publisher setup
14
15
 
15
- Creating an npm organization does not publish its packages or configure package-level trusted
16
- publishers. Use an npm account with permission to publish both names in `@weftlet`. The initial
17
- publication can use the normal npm login/2FA flow below. Once the packages exist, configure each
18
- package's Settings → Trusted Publisher with the following GitHub Actions identity:
16
+ The initial manual publication is complete. Sign in to npm with package administration permission
17
+ and configure **both** [core](https://www.npmjs.com/package/@weftlet/core) and
18
+ [toolkit](https://www.npmjs.com/package/@weftlet/toolkit): Settings → Trusted Publisher →
19
+ GitHub Actions, using the following identity:
19
20
 
20
21
  | npm setting | Value |
21
22
  | --- | --- |
@@ -27,7 +28,8 @@ package's Settings → Trusted Publisher with the following GitHub Actions ident
27
28
 
28
29
  On GitHub, create repository Settings → Environments → `npm-release`. Restrict deployment branches
29
30
  to `main` and configure a required reviewer. A sole maintainer must be allowed to approve their own
30
- release. Do not rely on the YAML environment name alone: an automatically created environment has
31
+ release: leave **Prevent self-review** unchecked when approving your own runs. Do not rely on the YAML environment
32
+ name alone: an automatically created environment has
31
33
  no review protection until you configure it. No npm token secret is required for OIDC publication.
32
34
  Keep npm account 2FA enabled. The package's repository metadata already identifies `jchewitt/weftlet`.
33
35
 
package/docs/ROADMAP.md CHANGED
@@ -1,12 +1,12 @@
1
1
  # Delivery roadmap
2
2
 
3
- Destination: `jchewitt/weftlet`. Read-only source:
4
- `launchecho/tradepilot@fda97e0146099543aeaa6b338ef2b0e9fab0d1d6`.
3
+ Project: `jchewitt/weftlet`. Extraction provenance is recorded in the
4
+ [source inventory](SOURCE-INVENTORY.md).
5
5
 
6
6
  | Milestone | Delivered and checked | Remaining limits |
7
7
  | --- | --- | --- |
8
8
  | 1. Standalone | Explicit committed inventory, core/toolkit boundary, public examples, build/tests, packed independent consumer and real TypeScript indexing | GitHub exported; both @launch-echo packages published at 0.1.0 and public installation verified |
9
- | 2a. Saved evidence | Read/refresh separation, commit/config/scope metadata, dirty querying, isolated archives, atomic snapshots validated on Linux/WSL, failed-refresh preservation | Archive LF conversion and bounded atomic head-replacement fixes pass Linux regressions; native Windows confirmation pending; archives reject symlinks/submodules and sizes above 128 MiB |
9
+ | 2a. Saved evidence | Read/refresh separation, commit/config/scope metadata, dirty querying, isolated archives, atomic snapshots validated on Linux/WSL, failed-refresh preservation | Archive LF conversion and atomic head-replacement regressions pass Linux and hosted Windows CI; archives reject symlinks/submodules and sizes above 128 MiB |
10
10
  | 2b. Draft overlays | Base/content identity, reindexed replacement, delete/rename handling, separate checkout/agent heads | Full implementation reindex; changed prose invalidated pending re-extraction |
11
11
  | 3. Unified graph | RDF/SPARQL, SHACL, lossless projection, bounded continuation, six-stage async cross-source fixture, negative extraction/linkage cases | Local SELECT only; 100,000-fact projection bound; no universal language support |
12
12
  | 4. Governance | Canonical approved rules, dependency-cruiser/ESLint/jscpd, scoped debt/expiry, transitive inference, optional OML ADR/parity | No active OWL reasoner; live formal compilation unverified; heuristics remain advisory |
@@ -23,14 +23,15 @@ The post-release module-organization increment is described in
23
23
  public entry points remain stable, and proposed internal dependency restrictions are advisory
24
24
  pending explicit owner approval. It does not publish a replacement for npm 0.1.0.
25
25
 
26
- The following unreleased increment adds explicit Codex authentication configuration: ChatGPT
26
+ Weftlet 0.1.0 includes explicit Codex authentication configuration: ChatGPT
27
27
  login by default, API-key mode by opt-in, and presence-only API diagnostics. Validation is
28
28
  tentative and explicitly non-blocking for release. The maintainer plans follow-up after publication
29
- and adoption into Banditrade; API-key testing remains optional. No new live model results are claimed.
29
+ and adoption into a consumer project; API-key testing remains optional. No new live model results are claimed.
30
30
  See [provider configuration](PROVIDERS.md#codex-authentication) and the validation record.
31
31
 
32
32
  Native Windows archive conversion, concurrent head-replacement and MCP file-symlink fixes are
33
- implemented with regression tests; a focused Windows CI job and HDesk rerun must confirm them.
33
+ implemented with regression tests and pass focused hosted Windows CI. HDesk confirmation and
34
+ full native Windows release preparation remain separate checks.
34
35
  Next work should be separate, reviewed increments: improve CRLF checkout integrity checks;
35
36
  run bounded semantic-quality evaluations; retain the passing hosted Ubuntu CI gate; validate fresh-cloud
36
37
  restoration; resolve the cloud-specific live provider block; add browser
@@ -45,9 +46,10 @@ Validation evidence and decisions are in `VALIDATION.md` and the ADR files. Sour
45
46
  model assertion review are distinct. On 2026-10-20 the user authorized pushing the reviewed
46
47
  destination to `jchewitt/tently` for local testing. The subsequent npm request authorizes release
47
48
  preparation/publication under `@launch-echo`; the maintainer completed the 0.1.0 release from WSL. Visibility changes and
48
- TradePilot reintegration remain outside the authorized scope. See [release instructions](RELEASING.md).
49
+ source-application reintegration remain outside the authorized scope. See [release instructions](RELEASING.md).
49
50
 
50
51
  The maintainer authorized the Weftlet migration on 2026-10-21. Current source targets
51
52
  `@weftlet/core` and `@weftlet/toolkit`, with a `weftlet` CLI and a manually dispatched trusted
52
- publishing workflow. First publication, npm trust configuration and a live OIDC publish remain
53
- separate external steps; the earlier Tently packages remain available and undeprecated.
53
+ publishing workflow. Both Weftlet packages are published at 0.1.0; source prepares 0.1.1.
54
+ npm trust configuration and a live OIDC publish remain external steps; the earlier Tently
55
+ packages remain available and undeprecated.
@@ -488,3 +488,43 @@ The Windows job does not replace the full Linux release gate. Native Windows exe
488
488
  fixes remains pending; simulated Windows errors on Linux are not a native pass. CRLF checkout
489
489
  inventory checking and npm Codex executable discovery remain separate follow-ups. No live model
490
490
  call or npm publication was performed. Use WSL for the validated full release-preparation route.
491
+
492
+
493
+ ## Weftlet publication and native Windows CI — 2026-10-21
494
+
495
+ The maintainer reported successful publication. Public npm metadata independently confirms
496
+ `@weftlet/core@0.1.0` and `@weftlet/toolkit@0.1.0`, both with `latest` pointing to 0.1.0 and
497
+ repository metadata pointing to `jchewitt/weftlet`. Downloaded archives match their registry
498
+ SHA-512 integrity values. The toolkit archive contains the Windows atomic-rename helper.
499
+ This check verifies registry availability and archive integrity, not a fresh public consumer install.
500
+
501
+ [Hosted run 39656137105](https://github.com/jchewitt/weftlet/actions/runs/39656137105) succeeded
502
+ at `4cdc4e5bc8b53bde3b23ce0be550146ac6ae817c`. Both the full Ubuntu deterministic job and the
503
+ focused `windows-storage-and-startup` job passed. The Windows job completed frozen installation,
504
+ build, Git archive-byte checks, snapshot contention/failure checks and all three original MCP
505
+ startup cases. This establishes a native hosted-Windows regression pass; full Windows release
506
+ preparation, HDesk reruns, CRLF inventory checking and npm Codex discovery remain separate.
507
+
508
+ Current source prepares 0.1.1 for both packages to update public descriptions and documentation.
509
+ The project overview and core README describe Weftlet independently; original attribution,
510
+ licenses and extraction provenance remain intact. npm trusted publishing still needs package-level
511
+ configuration and a successful OIDC release. A manual publication does not validate OIDC.
512
+
513
+
514
+ For the 0.1.1 documentation/metadata patch, frozen install and the full Linux publication gate
515
+ passed again: 155 deterministic tests (one optional Docker/OML test skipped), build, architecture
516
+ with 12 advisory findings, inventory, licenses and fresh packed-consumer smoke. No runtime code
517
+ changed from 4cdc4e5. GitHub's About description was blank; an attempted metadata update returned
518
+ HTTP 403, so no GitHub description change is claimed. No npm upload was made by the agent.
519
+
520
+
521
+ ## First trusted-release preparation attempt — 2026-10-21
522
+
523
+ [Run 39660995763](https://github.com/jchewitt/weftlet/actions/runs/39660995763) on d82ebee
524
+ passed the full release gate but stopped before uploading any package. npm 11.21.1 returns
525
+ `publish --dry-run --json` results keyed by package name; the release script expected the
526
+ flat record returned by npm 11.9.0. The preparation check now supports both observed formats
527
+ and verifies name, version and archive integrity. Ambiguous/multiple records and mismatches
528
+ remain errors. Two npm-command tests pass, including negative response-shape/identity/integrity
529
+ cases, and both package archives pass real dry runs with npm 11.9.0 and 11.21.1. No live npm
530
+ publication was attempted by this failed run.
@@ -108,7 +108,7 @@
108
108
  "destinationPath": "package.json",
109
109
  "sourceSha256": "a575dbb2fed8c554b95e8e9b3e03a0c21cab1be7249860bbebc18e046b2ff78d",
110
110
  "modified": true,
111
- "destinationSha256": "96a6cf7ae18dd4c976c6ec3cfca31ce37f44229dc6c9df46f58d6eae5de0e36d"
111
+ "destinationSha256": "acc98f285f29b2b124cd863c391d575b87e8bdd51756223d76765a868e6ee805"
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": "8f2d73048bcf7e1d411e0942505af58700ef6f4715b40de5efcd73afbb062be7"
132
+ "destinationSha256": "1cb03b2eb415ac35ef7a4405d3cbb415c59717fe6d088968533e3ac51658f7fb"
133
133
  },
134
134
  {
135
135
  "sourcePath": "tools/context-graph/packages/core/THIRD_PARTY_NOTICES.md",
@@ -143,7 +143,7 @@
143
143
  "destinationPath": "packages/core/package.json",
144
144
  "sourceSha256": "2a29066eb8452f22fafcb06bb035a84dda93c5705dba32aba600a1b7e5aaf19c",
145
145
  "modified": true,
146
- "destinationSha256": "ac71f77c54b9fa92c0304705154b1a24a2b4d69da410b34d04854215c7d1ca91"
146
+ "destinationSha256": "cfa4fb46c486bf3b06a72bb90adc8521fad1afd20b5cded9c5b0d177ffce0438"
147
147
  },
148
148
  {
149
149
  "sourcePath": "tools/context-graph/packages/core/src/core.ts",
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@weftlet/toolkit",
3
- "version": "0.1.0",
4
- "description": "Reusable commit-keyed semantic, implementation, runtime, and evidence graph toolkit",
3
+ "version": "0.1.1",
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",
7
7
  "files": [
@@ -62,7 +62,7 @@
62
62
  "n3": "2.7.2",
63
63
  "rdf-validate-shacl": "0.6.5",
64
64
  "sparqljs": "3.7.4",
65
- "@weftlet/core": "^0.1.0"
65
+ "@weftlet/core": "^0.1.1"
66
66
  },
67
67
  "devDependencies": {
68
68
  "@types/n3": "1.26.1",