ptbk 0.115.0-3 → 0.115.0-4
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 +3 -3
- package/changelog/_current-preversion.md +4 -0
- package/docs/coder.md +4 -2
- package/docs/compatibility.md +2 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -6,11 +6,11 @@ Requires Node.js 22.13+ in the Node 22 line, or Node 24+, npm 10+, and Git. macO
|
|
|
6
6
|
|
|
7
7
|
```bash
|
|
8
8
|
# Global installation
|
|
9
|
-
npm install --global ptbk
|
|
9
|
+
npm install --global ptbk
|
|
10
10
|
ptbk coder init --path ./my-project
|
|
11
11
|
|
|
12
12
|
# Or install into a project
|
|
13
|
-
npm install --save-dev ptbk
|
|
13
|
+
npm install --save-dev ptbk
|
|
14
14
|
npx ptbk coder init
|
|
15
15
|
npx ptbk coder add "Fix CSV quoting and add a regression test"
|
|
16
16
|
npx ptbk coder list
|
|
@@ -26,4 +26,4 @@ New work is stored as task Books under `tasks/`. Existing top-level Markdown tas
|
|
|
26
26
|
|
|
27
27
|
See [the coder guide](docs/coder.md), [compatibility and verification](docs/compatibility.md), `ptbk coder --help`, and [the specification](https://github.com/webgptorg/promptbook/blob/main/specs/coder.md). Run `npm run check` to verify the build, deterministic fixtures, and installation of the actual npm tarball in an external project.
|
|
28
28
|
|
|
29
|
-
This prerelease replaces the old collection of npm packages. Publishing runs only in GitHub Actions when a `vVERSION` tag is pushed. From a clean, committed tree on a named branch, `npm run release:preminor` or `npm run release:prerelease` checks the release, creates npm's version commit/tag, and atomically pushes the branch and exact tag.
|
|
29
|
+
This prerelease replaces the old collection of npm packages. Publishing runs only in GitHub Actions when a `vVERSION` tag is pushed. From a clean, committed tree on a named branch, `npm run release:preminor` or `npm run release:prerelease` checks the release, creates npm's version commit/tag, and atomically pushes the branch and exact tag. Normal releases, including numeric prereleases, use `latest` so the default install gets the current CLI. See [release and push-retry instructions](docs/coder.md#releasing).
|
|
@@ -15,6 +15,10 @@
|
|
|
15
15
|
- Wait for npm registry propagation after a successful upload instead of failing on the
|
|
16
16
|
first temporary missing-version response. Keep verification bounded and reject invalid
|
|
17
17
|
artifact metadata and authentication failures immediately.
|
|
18
|
+
- Restore `latest` as the npm channel for normal `ptbk` releases, including numeric
|
|
19
|
+
prereleases, so default local/global installs receive the current coder CLI instead
|
|
20
|
+
of the legacy package. Verify unversioned installs against the released version and
|
|
21
|
+
clarify npm's selected-version publication date versus package-wide last publication.
|
|
18
22
|
- Implemented the coder task engine with legacy Markdown and task Books, strict scheduling,
|
|
19
23
|
recurrence, deterministic migration, project initialization and authoring, safe Git/check
|
|
20
24
|
phase persistence, recovery journals, harness adapters, agent context and TEAM tools,
|
package/docs/coder.md
CHANGED
|
@@ -144,9 +144,11 @@ The push uses the branch's configured upstream remote and destination branch, or
|
|
|
144
144
|
|
|
145
145
|
If `postversion` fails, the version commit and tag remain local. Resolve the push problem, then run `npm run postversion` to retry the same branch and tag. A failed push does not require another version increment. The atomic push publishes both refs together or neither; it does not push unrelated tags.
|
|
146
146
|
|
|
147
|
-
CI validates the pushed tag against the package manifest and lockfile, runs the full checks through `prepublishOnly`, and publishes the package.
|
|
147
|
+
CI validates the pushed tag against the package manifest and lockfile, runs the full checks through `prepublishOnly`, and publishes the package. Normal version releases use `latest`, including numeric prereleases, preserving this repository's historical default-install policy. `npm install ptbk` and `npm install --global ptbk` therefore select the current coder CLI. The prerelease suffix still records the version's development status. `release:publish` requires GitHub Actions, the official `webgptorg/promptbook` repository and a matching `RELEASE_TAG` before calling npm. Registry credentials and trusted-publisher setup belong to CI rather than the local version command.
|
|
148
148
|
|
|
149
|
-
A successful upload can take a few minutes to become publicly available. Verification waits up to ten minutes for registry propagation, retrying temporary missing-version and network responses and an out-of-date dist-tag. Invalid version, tarball or integrity metadata and authentication failures stop verification immediately. Once available, it verifies the exact registry version, dist-tag and artifact integrity, installs
|
|
149
|
+
A successful upload can take a few minutes to become publicly available. Verification waits up to ten minutes for registry propagation, retrying temporary missing-version and network responses and an out-of-date dist-tag. Invalid version, tarball or integrity metadata and authentication failures stop verification immediately. Once available, it verifies the exact registry version, dist-tag and artifact integrity, installs unversioned `ptbk` locally and globally into temporary directories, and checks that both default-installed executable versions match the release. `npm run release:verify` is also available locally for registry verification; it reads registry metadata and performs temporary installs without publishing. If the upload succeeded but verification failed, use that command instead of attempting to overwrite the published version.
|
|
150
|
+
|
|
151
|
+
The npm page at `/package/ptbk` selects the `latest` version. A version-specific URL such as `/package/ptbk/v/0.114.0-50` keeps showing that older version and its original publication date. The sidebar's “Last publish” describes the package's most recent publication across versions, so it can be newer than the selected version's date. Use the default package page or `npm view ptbk version` to check the release selected by a default install.
|
|
150
152
|
|
|
151
153
|
Configure npm trusted publishing for owner `webgptorg`, repository `promptbook` and workflow filename `publish.yml`. Enable its direct `npm publish` permission; a newly created publisher defaults to staged publishing. Complete its first successful publication within two days or recreate the expired connection. The workflow uses a hosted Node 24 runner, disables release caches, grants OIDC permission and requests provenance. See [npm’s trusted publisher setup](https://docs.npmjs.com/trusted-publishers/).
|
|
152
154
|
|
package/docs/compatibility.md
CHANGED
|
@@ -23,7 +23,7 @@ This record maps the implementation to [the coder specification](https://github.
|
|
|
23
23
|
| Planning | Codex planning requires advertised read-only controls and exposes host-mediated reads. Task saves require exact preview and explicit approval; other providers reject planning without equivalent capability. | Planning read-boundary, unsupported-capability and approved-save fixtures; U09. The installed provider may reject setup before inference if required controls are absent. |
|
|
24
24
|
| Persistent server | Loopback HTTP supervision uses the shared engine. Host, session token, origin, source revision, body limits and mutation lease protect its API. Source changes can make work eligible without idle inference. | `test/server.test.mjs`: real HTTP guards, duplicate IDs, symlinks, pause/resume and one shared-engine execution; U11. Browser rendering and prolonged server operation are not end-to-end stress-tested. |
|
|
25
25
|
| Output and secrets | Failed outcomes remain visible; known project/env secrets are redacted across split stream chunks and in durable traces. Legacy trace filenames coexist with immutable occurrence history; a journal supplies authoritative finalization outcomes. Interactive controls and bounded buffers are implemented. | Harness/engine secret, cancellation, legacy single/multisection/latest/user-edit trace and durable metadata fixtures; terminal split-JSON, controls, active-wait skipping, scroll/resize, truncation and non-TTY fixtures; U10, U14, E17. Full interactive navigation has not been manually verified. |
|
|
26
|
-
| CLI and release configuration | Unknown/command-inapplicable flags fail; historical test flags point to check flags. Read-only commands do not initialize a project. Local npm version hooks check a named branch and clean tracked/untracked tree and atomically push the version commit's branch and exact tag. GitHub Actions validates the single manifest/lockfile against that tag and publishes
|
|
26
|
+
| CLI and release configuration | Unknown/command-inapplicable flags fail; historical test flags point to check flags. Read-only commands do not initialize a project. Local npm version hooks check a named branch and clean tracked/untracked tree and atomically push the version commit's branch and exact tag. GitHub Actions validates the single manifest/lockfile against that tag and publishes normal releases, including numeric prereleases, to `latest`. After publication, registry version/tag/integrity and the unversioned local/global installs' executable versions are verified against the release. | `test/cli.test.mjs`, `test/release.test.mjs`, `test/version.test.mjs`, `test/published.test.mjs` and package smoke; U02–U03, U13. Documentation task examples are parsed by the runtime adapters. GitHub Actions uploaded `ptbk@0.115.0-2`; its immediate verification hit registry propagation delay. Later public-registry metadata and actual local/global installations verified that release. |
|
|
27
27
|
|
|
28
28
|
## Deliberate changes and limits
|
|
29
29
|
|
|
@@ -47,6 +47,6 @@ The workflow defines macOS/Linux checks on Node 22 and 24. The `v0.115.0-2` publ
|
|
|
47
47
|
|
|
48
48
|
Control-only native startup probes, without user prompts or paid model turns, verified tool discovery with Codex `0.162.0`, Claude Code `2.1.289` and Copilot `1.0.95` (matching published SDK `1.0.19`). Cline `3.0.70` also discovered an idle MCP server under a real TTY, but its tool permissions do not establish safe advisor capability. Gemini/Qwen ACP and OpenCode discovery controls were reviewed against primary sources and tested with executable doubles; they were not live provider-inference tests.
|
|
49
49
|
|
|
50
|
-
An earlier local `npm run release:publish` attempt prepared `ptbk@0.115.0-0` but failed with `ENEEDAUTH` and uploaded nothing. Publication now runs only in GitHub Actions, triggered by the version commit/tag that local `npm version` atomically pushes. The [first tagged publish job](https://github.com/webgptorg/promptbook/actions/runs/38018816282/job/114115037379) successfully uploaded `ptbk@0.115.0-2` with provenance, but the immediate registry query returned E404 while npm processed the artifact. A later `npm run release:verify` passed: the public version, `next` tag, SHA-512 metadata and
|
|
50
|
+
An earlier local `npm run release:publish` attempt prepared `ptbk@0.115.0-0` but failed with `ENEEDAUTH` and uploaded nothing. Publication now runs only in GitHub Actions, triggered by the version commit/tag that local `npm version` atomically pushes. The [first tagged publish job](https://github.com/webgptorg/promptbook/actions/runs/38018816282/job/114115037379) successfully uploaded `ptbk@0.115.0-2` with provenance, but the immediate registry query returned E404 while npm processed the artifact. A later `npm run release:verify` passed: the public version, its historical `next` tag, SHA-512 metadata and exact-version local/global installs all matched. The [following publish job](https://github.com/webgptorg/promptbook/actions/runs/38021247222) successfully published `ptbk@0.115.0-3` to `next` with bounded propagation verification. Those releases left the default `latest` tag pointing to the legacy `0.114.0-50` package. The release policy now restores `latest` for normal version releases and verifies unversioned local/global installs to detect this default-install mismatch. Verification still waits for bounded registry propagation instead of failing on the first temporary response. A failed postversion push can be retried with `npm run postversion`; after an accepted upload, use `npm run release:verify` without attempting to overwrite the npm version.
|
|
51
51
|
|
|
52
52
|
For usage and release setup, see [the coder guide](coder.md). Fixture evidence is maintained in the repository's `test/` directory; the npm package ships the runtime and user documentation rather than the test suite.
|
package/package.json
CHANGED