snapreq 0.0.11 → 0.0.12

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.
Files changed (2) hide show
  1. package/README.md +29 -20
  2. package/package.json +3 -2
package/README.md CHANGED
@@ -173,7 +173,10 @@ The repository includes a task-isolated Node 24 development environment for
173
173
  Hermes/Threadwire work. It mounts one exact worktree into `/workspace`; the
174
174
  dependency, npm-cache, and Codex state volumes are scoped by the required
175
175
  Compose project name. There are no support services, host ports, or fixed
176
- container names.
176
+ container names. The development-only `@kaspernj/hermes-compose` package owns
177
+ the lifecycle, provider, process and signal handling, bootstrap, proof, smoke
178
+ acceptance, and exact cleanup. SnapReq owns only `hermes.config.js` and its
179
+ checked-in Compose/Dockerfile wiring.
177
180
 
178
181
  From the outer Hermes Docker host, allocate a self-contained Git checkout
179
182
  (with its own `.git` directory) directly below
@@ -181,16 +184,16 @@ From the outer Hermes Docker host, allocate a self-contained Git checkout
181
184
  the Compose suffix:
182
185
 
183
186
  ```sh
184
- export SNAPREQ_SOURCE_PATH=/opt/hermes-dind-shared/worktrees/snapreq/10575
185
- export SNAPREQ_COMPOSE_PROJECT=snapreq-10575
186
-
187
- scripts/hermes-compose.js validate
188
- scripts/hermes-compose.js config
189
- scripts/hermes-compose.js build --pull
190
- scripts/hermes-compose.js up
191
- scripts/hermes-compose.js exec npm ci
192
- scripts/hermes-compose.js proof
193
- scripts/hermes-compose.js down
187
+ export HERMES_SOURCE_PATH=/opt/hermes-dind-shared/worktrees/snapreq/10575
188
+ export HERMES_COMPOSE_PROJECT=snapreq-10575
189
+
190
+ npm exec --yes --package=@kaspernj/hermes-compose@0.0.0 -- hermes-compose validate
191
+ npm exec --yes --package=@kaspernj/hermes-compose@0.0.0 -- hermes-compose config
192
+ npm exec --yes --package=@kaspernj/hermes-compose@0.0.0 -- hermes-compose build --pull
193
+ npm exec --yes --package=@kaspernj/hermes-compose@0.0.0 -- hermes-compose up
194
+ npm exec --yes --package=@kaspernj/hermes-compose@0.0.0 -- hermes-compose exec npm ci
195
+ npm exec --yes --package=@kaspernj/hermes-compose@0.0.0 -- hermes-compose proof
196
+ npm exec --yes --package=@kaspernj/hermes-compose@0.0.0 -- hermes-compose down
194
197
  ```
195
198
 
196
199
  Codex authentication is initialized into the task-owned volume from one
@@ -199,22 +202,28 @@ volume must contain `/auth.json`; it is mounted read-only only for the one-off
199
202
  initializer and never attached to the long-running service:
200
203
 
201
204
  ```sh
202
- export SNAPREQ_CODEX_AUTH_VOLUME=<existing-auth-volume>
203
- scripts/hermes-compose.js init-codex
205
+ export HERMES_CODEX_AUTH_VOLUME=<existing-auth-volume>
206
+ npm exec --yes --package=@kaspernj/hermes-compose@0.0.0 -- hermes-compose init-codex
204
207
  ```
205
208
 
206
- Threadwire remains on the outer host. The lifecycle wrapper launches it with
207
- the checked-in provider adapter, which runs Codex in the `dev` service at
208
- `/workspace`:
209
+ Threadwire remains on the outer host. The package launches it through its
210
+ provider, which runs Codex in the `dev` service at `/workspace`:
209
211
 
210
212
  ```sh
211
213
  export THREADWIRE_TARGET=telegram:-1001234567890:42
212
- scripts/hermes-compose.js threadwire --prompt 'Inspect the project.'
214
+ npm exec --yes --package=@kaspernj/hermes-compose@0.0.0 -- hermes-compose threadwire --prompt 'Inspect the project.'
213
215
  ```
214
216
 
215
- Use `scripts/hermes-compose.js down` for ordinary teardown; it preserves task
216
- state. Volume/image deletion requires the separate, exact confirmation
217
- `SNAPREQ_PURGE_PROJECT="$SNAPREQ_COMPOSE_PROJECT" scripts/hermes-compose.js purge`.
217
+ Use the pinned `npm exec` `down` command above for ordinary teardown; it
218
+ preserves task state. Volume/image deletion requires the separate, exact
219
+ confirmation:
220
+
221
+ ```sh
222
+ HERMES_PURGE_PROJECT="$HERMES_COMPOSE_PROJECT" npm exec --yes --package=@kaspernj/hermes-compose@0.0.0 -- hermes-compose purge
223
+ ```
224
+
225
+ The two-stack acceptance entry point is
226
+ `npm exec --yes --package=@kaspernj/hermes-compose@0.0.0 -- hermes-compose smoke`.
218
227
  See [AGENTS.md](AGENTS.md) for the authoritative boundary, parallel-allocation,
219
228
  verification, smoke-test, and non-Hermes workflow rules.
220
229
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "snapreq",
3
- "version": "0.0.11",
3
+ "version": "0.0.12",
4
4
  "description": "Cross-platform HTTP and WebSocket client with one API across Node, web, Expo and React Native",
5
5
  "type": "module",
6
6
  "main": "./build/snap-req.js",
@@ -28,7 +28,7 @@
28
28
  "release:patch": "release-patch",
29
29
  "test": "npm run build && node --test \"spec/**/*-spec.js\"",
30
30
  "typecheck": "tsc --noEmit",
31
- "eslint": "eslint src spec scripts"
31
+ "eslint": "eslint src spec"
32
32
  },
33
33
  "keywords": [
34
34
  "http",
@@ -46,6 +46,7 @@
46
46
  },
47
47
  "devDependencies": {
48
48
  "@eslint/js": "^10.0.1",
49
+ "@kaspernj/hermes-compose": "0.0.0",
49
50
  "@types/node": "^26.0.1",
50
51
  "@types/ws": "^8.18.1",
51
52
  "eslint": "^10.3.0",