|
|
@@ -1657,6 +1657,22 @@ OIDC kill-switch (`OIDC_ENABLED=false`):
|
|
|
`CapacityCalculator.php` and its tests are untouched. First fix
|
|
|
from `doc/REVIEW_02.md`.
|
|
|
|
|
|
+- [x] **`appctl prod upgrade` — pinned redeploy by release tag**
|
|
|
+ (`f87660e`). New subcommand on the `bin/appctl` wrapper that
|
|
|
+ stops the prod stack, fetches, checks out a target ref, rebuilds
|
|
|
+ images, and starts the stack again. The target defaults to the
|
|
|
+ `latest` lightweight git tag (manually pointed at the current
|
|
|
+ release; bump with `git tag -f latest vX.Y.Z`). The keyword
|
|
|
+ `test` is virtual and resolves to `origin/main` HEAD after
|
|
|
+ fetch, so bleeding-edge redeploys don't need a real branch tag.
|
|
|
+ Dirty working trees print the diff and prompt before any
|
|
|
+ destructive step; an unknown ref errors out *before* the stack
|
|
|
+ is stopped. Bash completion offers `latest`, `test`, and every
|
|
|
+ `v*` tag from `git tag` at the third word. `latest` is local-
|
|
|
+ only on the repo where this was introduced (`bcdc63a` =
|
|
|
+ `v0.26.0`) — it is not pushed to `origin` and won't appear in
|
|
|
+ fresh clones until someone runs `git push origin latest`.
|
|
|
+
|
|
|
### Upcoming
|
|
|
|
|
|
Nothing scheduled.
|
|
|
@@ -1848,6 +1864,8 @@ before acting — nothing here is load-bearing once it grows stale.
|
|
|
## 13. Git history (as of this writing)
|
|
|
|
|
|
```
|
|
|
+86baa95 Docs: SPEC §11 — add `appctl prod upgrade` row to the command table
|
|
|
+f87660e Tooling: appctl prod upgrade — pin a prod box to a release tag
|
|
|
14b1cfd Fix R02-N01: drop JS-side capacity arithmetic, server is authoritative
|
|
|
ef9b9b8 Fix R01-N16, doc R01-N17: composer-audit helper + admin-manual cadence note
|
|
|
a0b717e Fix R01-N18: trust OIDC email only when issuer hasn't marked it unverified
|