@afokapu/atdd-bun 0.3.0 → 0.3.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
@@ -5,8 +5,8 @@ that keep their plan, acceptance evidence, tests, and implementation in the
5
5
  same Git history. It gives developers and coding agents fast local feedback,
6
6
  then runs the same checks in GitHub Actions.
7
7
 
8
- It does not require Python, the `atdd` executable, an ATdd state store, a
9
- global installation, or network access while enforcing a repository.
8
+ It runs entirely on Bun from the repository's own `node_modules`: no global
9
+ installation and no network access while enforcing a repository.
10
10
 
11
11
  ## What it protects
12
12
 
@@ -42,13 +42,25 @@ not the only thing standing between an invalid branch and `main`.
42
42
 
43
43
  ## Install and first use
44
44
 
45
- When the package is published to the configured package registry, add it as a
46
- development dependency:
45
+ Add the package from npm as a development dependency, then bootstrap the
46
+ repository once:
47
47
 
48
48
  ```sh
49
49
  bun add -d @afokapu/atdd-bun
50
+ bun run atdd-bun init
50
51
  ```
51
52
 
53
+ `init` installs the local surfaces described below: Git
54
+ [hooks](#hooks-fast-feedback-not-merge-authority), the
55
+ [CI workflow](#ci-the-merge-gate), the
56
+ [agent skill](#agent-skill-the-lifecycle-in-the-agents-context), and the
57
+ [integrity test](#integrity-files-agents-must-not-change). Commit what it
58
+ generates (`.githooks/`, `.github/workflows/atdd-bun.yml`, `.agents/`, `.claude/`,
59
+ `AGENTS.md`, `atdd-bun.integrity.test.ts`) so every clone and every agent session
60
+ gets them. To keep the
61
+ package and the skill current automatically, see
62
+ [Staying up to date](#staying-up-to-date).
63
+
52
64
  Run the complete installed policy from the repository root:
53
65
 
54
66
  ```sh
@@ -163,8 +175,9 @@ bun run atdd-bun init
163
175
  It creates `.githooks/` dispatchers, sets a worktree-local `core.hooksPath`,
164
176
  generates `.github/workflows/atdd-bun.yml`, and installs the coding-agent skill
165
177
  when they are absent. It never overwrites another hook path, an existing
166
- generated workflow, or an existing skill unless you explicitly pass `--replace`. Installing the dependency alone deliberately does
167
- neither: package installation must not mutate a repository through postinstall.
178
+ generated workflow, or an existing skill unless you explicitly pass `--replace`.
179
+ The package itself has no install script: adding the dependency never changes
180
+ the repository until you run `init`.
168
181
 
169
182
  Use `hooks install`, `ci init`, `agent init`, or `integrity init` when only one surface is wanted:
170
183
 
@@ -228,8 +241,9 @@ The skill names the lifecycle PLAN → RED → GREEN → SMOKE → REFACTOR →
228
241
  conventions each stage follows, and the `atdd-bun` profile that gates it. It
229
242
  points at the conventions shipped in this package instead of restating them, so
230
243
  it stays correct as they change; after upgrading, refresh it with
231
- `bun run atdd-bun agent init --replace`. The skill steers the agent; the
232
- profiles, hooks, and CI remain the enforcement.
244
+ `bun run atdd-bun agent init --replace`, or let the repository's own
245
+ `postinstall` do it (see [Staying up to date](#staying-up-to-date)). The skill
246
+ steers the agent; the profiles, hooks, and CI remain the enforcement.
233
247
 
234
248
  ## Integrity: files agents must not change
235
249
 
@@ -274,6 +288,47 @@ After generating it, configure the GitHub branch ruleset to require the workflow
274
288
  job before merging. `merge_group` is included so the same protection works with
275
289
  GitHub Merge Queue.
276
290
 
291
+ ## Staying up to date
292
+
293
+ Every change merged into this package's `main` is published to npm
294
+ automatically as the next patch version, with provenance, and tagged `vX.Y.Z`.
295
+
296
+ The hooks and the CI workflow run the package installed in `node_modules`, so
297
+ conventions, validators, and hook policy change as soon as a repository
298
+ upgrades the dependency; nothing needs reinstalling. The generated files are
299
+ copies: when an upgrade changes them, the integrity check reports them until you
300
+ run `bun run atdd-bun init --replace` and commit the result. The agent skill is
301
+ the one refreshed automatically. To refresh it on every install, add a script to the
302
+ repository's own `package.json` (Bun runs a project's own lifecycle scripts, not
303
+ a dependency's):
304
+
305
+ ```json
306
+ "scripts": {
307
+ "postinstall": "atdd-bun agent init --replace"
308
+ }
309
+ ```
310
+
311
+ To receive each release as a pull request, add `.github/dependabot.yml` on the
312
+ default branch:
313
+
314
+ ```yaml
315
+ version: 2
316
+ updates:
317
+ - package-ecosystem: "bun"
318
+ directory: "/"
319
+ schedule:
320
+ interval: "daily"
321
+ allow:
322
+ - dependency-name: "@afokapu/atdd-bun"
323
+ ```
324
+
325
+ Merging that pull request installs the new version and, through `postinstall`,
326
+ rewrites the skill. Without Dependabot, upgrade with
327
+ `bun update @afokapu/atdd-bun`. The lockfile pins the installed version, so
328
+ nothing changes until one of these runs. While the package is `0.x`, a `^0.1.x`
329
+ range accepts only `0.1.*`; move to a new minor with
330
+ `bun add -d @afokapu/atdd-bun@latest`.
331
+
277
332
  ## Linked worktrees for agent work
278
333
 
279
334
  An optional policy reserves one primary checkout for `main` and requires feature
@@ -340,12 +395,6 @@ publish using its own credentials and registry configuration.
340
395
 
341
396
  `bun test` runs the package’s real-Git fixtures and detector clean/dirty corpora.
342
397
  The suite proves that every declared convention output has a matching convention
343
- and a deliberate failing case; it also covers hook isolation, CI generation,
344
- planner scope, release validation, and linked-worktree policy.
345
-
346
- ## Boundaries
347
-
348
- This package intentionally excludes ATdd’s Python runtime orchestration,
349
- registry/state reconciliation, GitHub API integration, cluster access, and
350
- deployment execution. Those capabilities may be configured around the package,
351
- but repository enforcement remains deterministic and locally runnable.
398
+ and a deliberate failing case; it also covers hook isolation, the declarative
399
+ registry policy, CI generation, agent-skill installation, planner scope, release
400
+ validation, and linked-worktree policy.
package/integrity.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
- "version": "0.3.0",
2
+ "version": "0.3.1",
3
3
  "files": {
4
4
  "HOOK_AUDIT.md": "5329d840db37671b1918f688ead26865473b87db73dbc75f7c8b2a8bbe8d6d43",
5
5
  "PLANNER_PORT.md": "54ba452eb39cb5afb7c225363fddfd1bf9272ca1c12e7cbf6815a1dd464ff2b3",
6
- "README.md": "39042ef1463e6b82cb987793330ed51a99f489db0ff59dbdb964f62dab12609f",
6
+ "README.md": "506272551a4ad748537a2ade2a66219429eebba6e38fcd74c88e602bd94e0dbd",
7
7
  "bunfig.toml": "b9fc65eca9014c5179380259d70e76385a6a80788fa9a2df5fb3eaa5554fd2fe",
8
8
  "conventions/coder.bun/coder.bun.boundaries-http-client.convention.yaml": "b846bb6ced2c4c967466520d52b00ff1ca802dafcdbb2ec2adbd0ce19e752a28",
9
9
  "conventions/coder.bun/coder.bun.commons-application-no-integration.convention.yaml": "f63e7f6442bcdf5cf79f58a091547a1a990d0ee7c006b797fd5187d6f8bf8712",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@afokapu/atdd-bun",
3
- "version": "0.3.0",
3
+ "version": "0.3.1",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/afokapu/atdd-bun.git"