@chrok/braid 0.2.0 → 0.2.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/CHANGELOG.md +19 -0
- package/CONTRIBUTING.md +9 -0
- package/README.md +2 -2
- package/SECURITY.md +26 -0
- package/docs/compatibility.md +3 -3
- package/package.json +2 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,25 @@
|
|
|
2
2
|
|
|
3
3
|
## Unreleased
|
|
4
4
|
|
|
5
|
+
## 0.2.1 — 2026-10-04
|
|
6
|
+
|
|
7
|
+
### Maintenance
|
|
8
|
+
|
|
9
|
+
- Upgrade the Pi validation target to 1.0.1 and refresh the workspace lockfile
|
|
10
|
+
so Pi's minimatch resolves the patched brace-expansion 5.0.12. Add a separate
|
|
11
|
+
dependency-security check covering development dependencies and reporting
|
|
12
|
+
scanner failures explicitly
|
|
13
|
+
([#38](https://github.com/Epsirom/braid/pull/38)) — @Epsirom.
|
|
14
|
+
|
|
15
|
+
No Braid API or runtime behavior changes. Pi 1.0.1 is the tested host version;
|
|
16
|
+
updating Braid does not upgrade a separately installed Pi host.
|
|
17
|
+
|
|
18
|
+
### New Contributors
|
|
19
|
+
|
|
20
|
+
No first-time human contributors in this release.
|
|
21
|
+
|
|
22
|
+
[Full comparison](https://github.com/Epsirom/braid/compare/v0.2.0...v0.2.1).
|
|
23
|
+
|
|
5
24
|
## 0.2.0 — 2026-10-02
|
|
6
25
|
|
|
7
26
|
### Features and breaking changes
|
package/CONTRIBUTING.md
CHANGED
|
@@ -34,6 +34,15 @@ checkout. That last check needs registry access for Pi dependencies but never
|
|
|
34
34
|
calls a model. `npm test` is the fast core-only loop; `npm run test:pi` tests Pi.
|
|
35
35
|
`npm run bench` measures the scheduler without a provider.
|
|
36
36
|
|
|
37
|
+
Run `npm run audit:dependencies` after `npm ci` to scan the complete dependency
|
|
38
|
+
tree, including development dependencies. The separate Dependency security
|
|
39
|
+
workflow runs this on pull requests, pushes to main, and weekly. The command
|
|
40
|
+
exits 1 for vulnerabilities and 2 for scanner failures or incomplete reports;
|
|
41
|
+
both fail the workflow, with details in its log and a separate result summary.
|
|
42
|
+
This registry-backed check is separate from `verify` so deterministic tests do
|
|
43
|
+
not depend on audit service availability. See [dependency security](SECURITY.md#dependency-security)
|
|
44
|
+
for the known Pi shrinkwrap issue and the required upgrade verification.
|
|
45
|
+
|
|
37
46
|
## Changes and reviews
|
|
38
47
|
|
|
39
48
|
Submit changes to `main` through a pull request, including maintainer changes.
|
package/README.md
CHANGED
|
@@ -102,7 +102,7 @@ before running a custom adapter against a repository.
|
|
|
102
102
|
|
|
103
103
|
## Install in Pi
|
|
104
104
|
|
|
105
|
-
With Pi 0.
|
|
105
|
+
With Pi 1.0.1 and Node.js 22.19+:
|
|
106
106
|
|
|
107
107
|
```sh
|
|
108
108
|
pi install npm:@chrok/pi-braid
|
|
@@ -110,7 +110,7 @@ pi install npm:@chrok/pi-braid
|
|
|
110
110
|
|
|
111
111
|
Run `/reload`, ask Pi to analyze a task with Braid, and open `/braid` to inspect
|
|
112
112
|
the job. npm installs the exact matching core dependency; no checkout is needed
|
|
113
|
-
for published versions. To try
|
|
113
|
+
for published versions. To try the current source checkout, follow the
|
|
114
114
|
[local Pi installation guide](integrations/pi/README.md#install-this-local-checkout-in-pi).
|
|
115
115
|
|
|
116
116
|

|
package/SECURITY.md
CHANGED
|
@@ -13,6 +13,32 @@ advisory where appropriate. There is no response-time guarantee or bounty progra
|
|
|
13
13
|
Only the latest released 0.x minor series receives fixes; older series should
|
|
14
14
|
upgrade. Before the first release, report issues against the current main branch.
|
|
15
15
|
|
|
16
|
+
## Dependency security
|
|
17
|
+
|
|
18
|
+
Audit the development tree as well as runtime dependencies with
|
|
19
|
+
`npm ci` followed by `npm run audit:dependencies`. Scanner errors are incomplete
|
|
20
|
+
results and fail the check; they must not be treated as zero vulnerabilities.
|
|
21
|
+
|
|
22
|
+
The Pi development dependencies are pinned together to 1.0.1. Its
|
|
23
|
+
[published npm tarball](https://registry.npmjs.org/@earendil-works/pi-coding-agent/-/pi-coding-agent-1.0.1.tgz)
|
|
24
|
+
removes `npm-shrinkwrap.json` and directly pins `brace-expansion` 5.0.12, fixing
|
|
25
|
+
[GHSA-q2hr-2g5m-vwhr](https://github.com/advisories/GHSA-q2hr-2g5m-vwhr) and related
|
|
26
|
+
advisories tracked in [issue #37](https://github.com/Epsirom/braid/issues/37).
|
|
27
|
+
The regenerated Braid lockfile resolves Pi's `minimatch 10.2.6` to
|
|
28
|
+
`brace-expansion 5.0.12` after a clean `npm ci`, verified on 2026-10-03.
|
|
29
|
+
|
|
30
|
+
An upstream release does not update an existing Braid lockfile or installation.
|
|
31
|
+
When upgrading Pi, inspect the published package (including any shrinkwrap),
|
|
32
|
+
update the Pi development dependencies together, regenerate the root lockfile,
|
|
33
|
+
and inspect `npm ls brace-expansion --all` after a clean `npm ci`. Confirm the
|
|
34
|
+
version resolved by Pi's installed minimatch, run `npm run verify`, and review
|
|
35
|
+
`npm run audit:dependencies` before declaring a dependency issue fixed.
|
|
36
|
+
|
|
37
|
+
These Braid lockfile entries are development dependencies. This does not
|
|
38
|
+
establish exposure in a separately installed Pi host; inspect that host's actual
|
|
39
|
+
dependency tree independently. A production-only audit of this repository cannot
|
|
40
|
+
answer that question.
|
|
41
|
+
|
|
16
42
|
## Trust boundaries
|
|
17
43
|
|
|
18
44
|
- Braid isolates invocation context; it is not a process or filesystem sandbox.
|
package/docs/compatibility.md
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
| Surface | Supported / tested contract |
|
|
4
4
|
| --- | --- |
|
|
5
5
|
| Core runtime | Node.js 22+, ESM imports, TypeScript declarations, no runtime dependencies |
|
|
6
|
-
| Pi package | Node.js 22.19+, Pi 0.
|
|
6
|
+
| Pi package | Node.js 22.19+, Pi 1.0.1 is the pinned validation target |
|
|
7
7
|
| CI | Core minimum Node 22.0; both packages on Node 22.19 and 24 on Linux, macOS, Windows |
|
|
8
8
|
| OpenAI-compatible runner | Chat Completions text and function-tool calls; decisions and merge/integrate nodes require tool calling |
|
|
9
9
|
| Browsers / CommonJS | No supported browser build or CommonJS entry point in 0.2 |
|
|
@@ -14,7 +14,7 @@ that every provider advertising OpenAI compatibility supports its tool schema.
|
|
|
14
14
|
Run a small opt-in live test with your chosen provider before relying on it.
|
|
15
15
|
|
|
16
16
|
Pi's upstream packaging guide requires `*` peer dependencies for packages the
|
|
17
|
-
host provides. Braid follows that convention and pins dev dependencies to 0.
|
|
17
|
+
host provides. Braid follows that convention and pins dev dependencies to 1.0.1.
|
|
18
18
|
The wildcard is a loader/distribution convention, **not a claim that every Pi
|
|
19
19
|
version works**. Test the whole Pi suite before updating the supported target.
|
|
20
20
|
The offline host compatibility test loads the extension into a real Pi session
|
|
@@ -23,7 +23,7 @@ exactly one automatic continuation per node/job reminder delivered during
|
|
|
23
23
|
`agent_settled`, including retrieval of a node output while its job still runs.
|
|
24
24
|
This covers the Pi 0.86/0.87 transcript and settling changes without provider
|
|
25
25
|
credentials or network model calls. Version 0.1.0 was originally validated with
|
|
26
|
-
Pi 0.85.1; the current checkout's pinned validation target is 0.
|
|
26
|
+
Pi 0.85.1; the current checkout's pinned validation target is 1.0.1.
|
|
27
27
|
The Pi npm package declares an exact dependency on the matching `@chrok/braid`
|
|
28
28
|
release. npm installs the core automatically; Pi does not bundle another copy of
|
|
29
29
|
its runtime and does not need a source checkout.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@chrok/braid",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.1",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "TypeScript runtime for LLM agent graphs with bounded loops, live updates, and isolated Git worktrees",
|
|
6
6
|
"type": "module",
|
|
@@ -33,6 +33,7 @@
|
|
|
33
33
|
"build": "node scripts/build.mjs",
|
|
34
34
|
"check": "tsc --noEmit",
|
|
35
35
|
"test": "tsx --test test/*.test.ts test/*.test.mjs",
|
|
36
|
+
"audit:dependencies": "node scripts/audit-dependencies.mjs",
|
|
36
37
|
"demo": "tsx examples/basic.ts",
|
|
37
38
|
"check:pi": "npm run build && npm run check --workspace @chrok/pi-braid",
|
|
38
39
|
"test:pi": "npm run build && npm test --workspace @chrok/pi-braid",
|