@devrouter/cli 0.1.0 → 0.1.2

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@devrouter/cli",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "description": "Local dev routing CLI with shared Traefik reverse proxy",
5
5
  "author": "Roland Schlaefli",
6
6
  "homepage": "https://github.com/rschlaefli/devrouter#readme",
@@ -54,6 +54,8 @@
54
54
  "qualify:harness-journey": "./scripts/qualify-harness-journey.sh",
55
55
  "qualify:codex-journey": "DR_JOURNEY_HARNESS=codex ./scripts/qualify-harness-journey.sh",
56
56
  "qualify:non-node": "./scripts/qualify-non-node-consumer.sh",
57
+ "qualify:slow-dependency": "./scripts/qualify-slow-dependency-recovery.sh",
58
+ "qualify:killed-runtime": "./scripts/qualify-killed-runtime-recovery.sh",
57
59
  "test:process": "bash scripts/test-devrouter-process.sh",
58
60
  "check": "biome check .",
59
61
  "check:fix": "biome check --write .",
@@ -0,0 +1,48 @@
1
+ # Upgrade to devrouter 0.1.1
2
+
3
+ This is a patch release on top of 0.1.0. It closes one way a managed environment
4
+ could sit blocked without saying so: a start that admission refused on a fixed
5
+ published host-port claim left the journal recording the intent as `running`
6
+ while no runtime existed, so `devrouter status` reported a stable, drifting-free
7
+ environment that could not progress.
8
+
9
+ ## What changed for a consumer
10
+
11
+ - A managed `ensure` refused because a running container already holds a fixed
12
+ published host port now stays visible after the command exits. `devrouter
13
+ status` reports a `start-refused` attention reason with two recovery
14
+ commands: the read-only `devrouter doctor <repo>` check that names the
15
+ conflicting consumer binding and its holder, and the consumer-side fix
16
+ followed by `devrouter ensure <repo>`.
17
+ - An explicit `devrouter stop <repo>` releases that intent and the reason, and a
18
+ later admitted ensure clears it. Nothing else about the refusal changed: the
19
+ start is still refused before any provider mutation, and live-worker,
20
+ unknown-ownership and surviving-resource checks still refuse fail-closed.
21
+ - The release also carries `pnpm qualify:slow-dependency`, the developer
22
+ qualifier behind the Q06 dependency-recovery evidence. It is a repository
23
+ script and has no consumer-facing effect.
24
+
25
+ ## Task
26
+
27
+ Use the published 0.1.1 CLI. Update the repository `devrouter.version` metadata
28
+ only when consumer source changes are authorized, and refresh generated agent
29
+ guidance only with its owner's authority. No schema, command, flag, environment
30
+ or journal migration is needed, and the upgrade rewrites no runtime state.
31
+
32
+ ## Validation
33
+
34
+ Verify the resolved executable and installed version, then run `devrouter
35
+ doctor` for the checkout and confirm `global.cli-path` reports one
36
+ authoritative install. Run `devrouter status` and confirm the reported intent,
37
+ phase and attention reason agree with the runtime you observe. When the reported
38
+ reason is `start-refused`, resolve the named binding as the owner of that
39
+ port — the shared router is never the side to stop — and keep each lifecycle
40
+ operation's own terminal evidence separate from a status block or progress line.
41
+
42
+ ## Report
43
+
44
+ Report the release revision, the executable and installed version, the status
45
+ block for any affected checkout, and the terminal result of any authorized
46
+ lifecycle operation. Keep source and package validation separate from consumer
47
+ readiness or recovery, and record unknown ownership or surviving resources as
48
+ unresolved rather than as recovered.
@@ -0,0 +1,57 @@
1
+ # Upgrade to devrouter 0.1.2
2
+
3
+ This is a patch release on top of 0.1.1. It carries the post-release reliability
4
+ review corrections: truthful recovery guidance, a harness gate that honors its
5
+ full wait budget and recognizes its own lifecycle commands in every supported
6
+ invocation form, evidence-accurate hook wording, bounded cause-and-location
7
+ diagnostics for unprovable capacity history, and a content-digest fence on
8
+ capacity snapshot replacement.
9
+
10
+ ## What changed for a consumer
11
+
12
+ - The recovery line a refused managed start prints now reads `devrouter doctor
13
+ --repo <checkout>` (single-quoted when the path needs it) instead of a
14
+ positional path that `doctor` never accepted. Stored guidance that quotes the
15
+ old form should be refreshed.
16
+ - The harness gate (`devrouter harness gate`, wired as a PreToolUse hook) now
17
+ recognizes `devrouter` lifecycle commands as direct executables and through
18
+ the `npx`, `pnpm exec`, `npm exec` and `yarn` launchers, including
19
+ `env` and assignment prefixes. During a transition, `devrouter status`,
20
+ `stop` and `ensure` reach their own bounded checks instead of being deferred
21
+ or refused as unrelated calls. Unrelated calls still defer or refuse as
22
+ before.
23
+ - A gated call under a budget now waits the whole budget: the gate observes once
24
+ more at the deadline instead of refusing early when the next poll interval
25
+ would overrun it.
26
+ - Hook output no longer reports "environment settled" for passthrough,
27
+ unmanaged, invalid-payload or unavailable evidence; each decision says what it
28
+ actually observed.
29
+ - `devrouter doctor` names the bounded cause and the exact journal entry when
30
+ capacity history is unprovable, and the network-capacity check names the
31
+ missing evidence inputs, so the operator can act without guessing.
32
+
33
+ ## Task
34
+
35
+ Use the published 0.1.2 CLI. Refresh consumer-side guidance that quotes the old
36
+ positional recovery command, and update the repository `devrouter.version`
37
+ metadata only when consumer source changes are authorized. No schema, command,
38
+ flag, environment or journal migration is needed, and the upgrade rewrites no
39
+ runtime state.
40
+
41
+ ## Validation
42
+
43
+ Verify the resolved executable and installed version with `devrouter -V`, then
44
+ run `devrouter doctor --repo <checkout>` and confirm `global.cli-path`
45
+ reports one authoritative install. For an environment whose harness hook uses
46
+ `devrouter harness gate`, run one gated lifecycle command during a transition
47
+ and confirm it reaches its own check. When `doctor` reports unprovable capacity
48
+ history, follow the named cause-keyed recovery instead of deleting journal
49
+ state.
50
+
51
+ ## Report
52
+
53
+ Report the release revision, the executable and installed version, the doctor
54
+ block for any affected checkout, and the terminal result of any authorized
55
+ lifecycle operation. Keep source and package validation separate from consumer
56
+ readiness or recovery, and record unknown ownership or surviving resources as
57
+ unresolved rather than as recovered.