@mutmutco/codex-plugin 4.3.27 → 4.3.29

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.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mmi",
3
- "version": "4.3.27",
3
+ "version": "4.3.29",
4
4
  "mmiCompat": "4.x",
5
5
  "description": "MMI workflow skills and org gates delivery.",
6
6
  "author": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mutmutco/codex-plugin",
3
- "version": "4.3.27",
3
+ "version": "4.3.29",
4
4
  "description": "MMI workflow skills and org gates delivery.",
5
5
  "author": {
6
6
  "name": "MMI Future",
@@ -29,9 +29,20 @@ facts all live in the Hub registry — no repo-local control-plane file.
29
29
  **Secrets are vault-native — no `.env` on disk (#2655).** The org forbids *using* `.env` files, not just
30
30
  committing them. A repo **without** `.env.example` stages vault-native: `mmi-cli stage --apply` resolves the
31
31
  declared dev runtime secrets (registry `requiredRuntimeSecrets[dev]`) from the vault and injects them straight
32
- into the compose **process environment** the compose file reads them via `environment:` passthrough, and no
33
- secret ever touches disk. A repo that still ships `.env.example` keeps the legacy `.env` bootstrap for
34
- back-compat until its compose migrates to passthrough; new repos should ship **no** `.env.example`.
32
+ into the compose **process environment**, which Compose interpolates the file with no secret ever touches
33
+ disk. A repo that still ships `.env.example` keeps the legacy `.env` bootstrap for back-compat until its
34
+ compose migrates to passthrough; new repos should ship **no** `.env.example`.
35
+
36
+ **Runtime env reaches the container through the generated passthrough (#6345).** Interpolation is not
37
+ delivery: a container receives only what its own `environment:` declares. So `/stage` mirrors the box deploy —
38
+ it generates `tmp/stage/runtime-env.override.yml` (gitignored, **key names only**, values stay in the process
39
+ env) passing every runtime key through to each service the compose marks `labels: {"mmi.runtime-env": "true"}`,
40
+ and loads it beside `docker-compose.yml` for the whole stage. Mark the app service with that label; a repo
41
+ that hand-declares its variables needs nothing. Unmarked sidecars (db, cache) keep getting only what they
42
+ interpolate themselves. Never wrap an individual `docker compose` call in `mmi-cli vault secrets use` to work
43
+ around a missing value (#6344) — that value is scoped to the one child process it wraps, so the next `docker
44
+ compose logs`/`down` fails the same `required variable … is missing a value`. Declare the key in registry
45
+ `requiredRuntimeSecrets[dev]` and let `/stage` carry it across the whole lifecycle.
35
46
 
36
47
  **Build-time secrets (#5381).** When META declares `requiredBuildSecrets` (e.g. Katip's
37
48
  `NODE_AUTH_TOKEN=@github-packages-token` for `@mutmutco/fofu-ds` on GitHub Packages), `/stage` injects those
@@ -108,7 +119,9 @@ Stop the stage when the work is done, before switching context, or before replac
108
119
  If the user clearly wants the preview to stay up, leave it running and report that. The next `/stage` also
109
120
  stops the previous recorded stage before starting, so a stale server does not linger between runs. For the
110
121
  registry-derived Docker Compose default, stop also runs the recorded compose teardown (`docker compose down`)
111
- from the original stage working directory.
122
+ from the original stage working directory. Stop re-fetches the declared dev runtime secrets so that `down`
123
+ can interpolate the same file (`${POSTGRES_PASSWORD:?}`, `${PORT:?}`) — secrets never come from the state
124
+ file (#6351). A vault-native repo with no `.env` gets `PORT` defaulted to the bound stage port.
112
125
 
113
126
  ## /stage --live — personal cloud dev stage
114
127