@devrouter/cli 0.6.3 → 0.6.5

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.6.3",
3
+ "version": "0.6.5",
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",
@@ -0,0 +1,67 @@
1
+ # Upgrade to devrouter 0.6.4
2
+
3
+ This release adds explicit stopped-primary replacement through
4
+ `ensure <checkout> --replace-app` and preserves newer-writer classification in
5
+ journal enumeration and capacity diagnostics. Replacement discards the primary
6
+ container's writable layer while retaining proved dependencies and named/bind
7
+ storage. It does not apply changed Compose overlays, replace data services,
8
+ reset data or qualify retained maintenance.
9
+
10
+ ## Task
11
+
12
+ After publication and installation are separately approved, select the exact
13
+ published CLI through the consumer's existing package-manager convention.
14
+ Verify the executable/version, update `devrouter.version` in `.devrouter.yml`
15
+ and refresh existing agent guidance through `devrouter repo agents` within
16
+ consumer adaptation authority. No configuration schema migration is needed.
17
+ Do not start a consumer environment merely to verify the version change.
18
+
19
+ Before this release writes lifecycle state, coordinate the same qualified
20
+ release across participating agents, harnesses, controllers and source/package
21
+ invocations sharing those journals. Check every PATH-visible executable and
22
+ known wrapper/pin; obtain each participating owner's actual identity rather
23
+ than treating PATH inventory as a complete fleet inventory. Unknown or competing
24
+ writers hold activation. Changing a running controller/worker or global tool
25
+ selection still needs its own authority. No global registry is required.
26
+
27
+ A real 0.6.4 writer makes released 0.6.3 refuse direct journal reads/updates,
28
+ global enumeration, ensure/exec/stop and controller recovery admission. This is
29
+ expected fail-closed behavior, including after synthetic canonical-stop proof.
30
+ The release qualification uses checksum-verified package bytes and isolated
31
+ state; worker IPC and live consumer recovery remain separately unproved.
32
+ An older CLI is not a supported rollback after newer writes. Preserve all
33
+ journal bytes, writer stamps and replacement receipts. Recovery uses a qualified
34
+ compatible CLI and exact ownership proof under the owner's runtime authority;
35
+ never edit state or clear a receipt to bypass refusal.
36
+
37
+ For an already-authorized preservation test, follow the full current
38
+ `docs/DEVCONTAINER.md` replacement contract. Initial support is manual managed
39
+ Compose on Devsy 1.24.0, canonical stopped-generation proof, unchanged committed
40
+ managed source, qualified preserving hooks, retained non-primary dependencies
41
+ and named storage. Allocated networks, capacity enrollment, anonymous mounts
42
+ and namespace consumers refuse. Provider setup, builds/pulls and writable-layer
43
+ loss are not inferred approvals.
44
+
45
+ The durable replacement attempt is consumed before dispatch. Failure,
46
+ cancellation, uncertainty, stop, registration changes, journal rollover and
47
+ new request IDs never rearm it. Repeated replacement in the same checkout is
48
+ unsupported. Use only supported ownership-proven stop/stop --repair for a
49
+ blocked attempt; never retry with raw provider recreation. Keep the original
50
+ application outcome distinct from infrastructure proof.
51
+
52
+ ## Validation
53
+
54
+ 1. Run static consumer checks for the actual version/guidance edits and report
55
+ every participating executable/harness identity and remaining unknowns.
56
+ 2. Under the receiving owner's separate runtime/data authority, perform only
57
+ its bounded supported preservation journey, proving actual retained data,
58
+ required application work, dependency/storage identity and readiness.
59
+ 3. End with canonical stop and exact stopped/route/worker proof unless the user
60
+ explicitly retains that environment. Missing proof remains unknown.
61
+
62
+ ## Report
63
+
64
+ Report source/package integrity, exact selected executable and provider identities,
65
+ participating adoption/downgrade limits, producing verification runs, retained
66
+ receipt/data evidence, unresolved prerequisites and final runtime state. Published
67
+ or installed compatibility alone does not establish consumer recovery.
@@ -0,0 +1,45 @@
1
+ # Upgrade to devrouter 0.6.5
2
+
3
+ Status and doctor now recommend `devrouter ensure <checkout>` for managed
4
+ repositories, including profiles with no routed apps. The command quotes the
5
+ exact checkout path. Legacy app guidance and existing unwound-mount diagnostics
6
+ remain. No configuration schema or provider/lifecycle contract changes.
7
+
8
+ ## Task
9
+
10
+ Within approved installation/adaptation scope, select the verified exact package,
11
+ update `devrouter.version` in `.devrouter.yml` and refresh existing agent guidance
12
+ with `devrouter repo agents`. Check every PATH-visible executable and known
13
+ wrapper, package/source invocation and harness/controller pin. Obtain participating
14
+ owners' actual executable/package identities; PATH inventory is not fleet proof.
15
+ Do not start a consumer to validate metadata or installation.
16
+
17
+ Before the first 0.6.5 lifecycle write, coordinate compatible qualified clients
18
+ sharing those journals, including readers and controllers. Older 0.6.4 refuses
19
+ newer-writer state, including direct reads, updates and global enumeration.
20
+ Unknown or competing client identities hold activation. Each receiving host
21
+ and consumer retains its own runtime/data authority and consumed attempt limits.
22
+ Installation and a release notice do not authorize activation.
23
+
24
+ Preserve journal bytes, writer stamps and durable initialization/replacement
25
+ receipts. Downgrading an older reader is not a recovery route after newer writes.
26
+ Use a compatible qualified CLI with fresh ownership proof for authorized recovery;
27
+ never erase or edit state to bypass refusal or rearm an attempt.
28
+
29
+ ## Validation
30
+
31
+ 1. Verify selected package integrity, executable bytes/version and existing local
32
+ guidance. Run native checks for the actual consumer edits.
33
+ 2. Use canonical exact-checkout ensure only under the receiving owner's separate
34
+ runtime authority. Diagnostic startup guidance is advice, not approval or proof
35
+ that all startup preconditions hold. Retain known refusals and unknown outcomes.
36
+ 3. Any separately authorized runtime work ends with canonical stop and exact
37
+ provider/container/route/worker proof, unless explicitly retained by the user.
38
+
39
+ ## Report
40
+
41
+ Report the exact selected package and executable identities, participating-client
42
+ adoption and remaining unknowns, relevant checks and any actual runtime terminal.
43
+ Keep release/package proof distinct from consumer recovery. This patch's
44
+ qualification does not add provider combinations, maintenance/reset support,
45
+ consumer data acceptance or permission for another runtime attempt.