app-safe-upgrade
REQUIRED path for upgrading any installed EdgeVector app (kanban, brain, situations, last-stack, search, …).
Skill by EdgeVector
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/edgevector-app-safe-upgrade
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/app-safe-upgrade
What's inside
- Skill name
app-safe-upgrade- Description
- REQUIRED path for upgrading any installed EdgeVector app (kanban, brain, situations, last-stack, search, …). Never flip ~/.local/bin or host-track current onto a new version first. Probe the candidate tree, then activate only on GREEN. LastDB Mini is the one exception: use lastdb-safe-upgrade. Use when asked to "upgrade kanban", "upgrade brain", "refresh host-track", "safe upgrade this app", "install the new version", or whenever an agent would otherwise host-track refresh / brew upgrade / relink PATH blindly.
- License
- MIT
- Instructions
- 89 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# app-safe-upgrade — canary soak; never make live the first test The live install is what agents and Tom run. A one-shot `--help` (or even one `kanban list`) is not enough — LastDB's 0.23.1 latency and the 2026-08-05 write-path regression both passed a single correctness probe. **The safe upgrade is a canary soak:** park the candidate, keep PATH on last-known-good, re-run the app's probes over a window, promote only if it stays GREEN. LastDB Mini stays on `lastdb-safe-upgrade` (24h soak + CoW). Everything else goes through Host Track. ## Do this ```bash # Park the new tree as canary (PATH unchanged after GREEN probe) host-track refresh <app> # Same clock as the 20-minute LaunchAgent (refresh --all also soak-watches) host-track soak-watch <app> host-track soak-watch --all # Tom wants it on PATH now (still requires GREEN probe) host-track refresh --activate <app> # Roll back last activation host-track rollback <app> ``` `host-track refresh` now: 1. Materializes the candidate under `versions/<digest>` (current unchanged) 2. Runs `post_install` on that tree when the app needs it 3. Runs `safe_upgrade.probes` from the **new** tree 4. Optionally times the last probe vs current (brain / kanban / situations) 5. **Parks `canary`** when `soak_hours > 0` and a live current exists 6. `soak-watch` re-probes; RED leaves current; GREEN + elapsed → flip PATH 7. last-stack sets `soak_hours: 0` (it is the soak runner; probe-then-activate) ## Which command is which | What Tom said | App name | Command | |---|---|---| | new kanban / fkanban | `kanban` | `host-track refresh kanban` then `soak-watch` | | new brain CLI | `brain` | `host-track refresh brain` then `soak-watch` | | new last-stack / skills | `last-stack` | `host-track refresh last-stack` (no soak) | | new situations / routines / search / … | that registry name | `host-track refresh` then `soak-watch` | | new LastDB Mini / lastdbd | — | **`lastdb-safe-upgrade` only** | `host-track refresh lastdb` is disabled on purpose. ## Reading the verdict | Output | Meaning | Action | |---|---|---| | `probe GREEN` then `canary parked` | Candidate is soaking; PATH still old | Wait for soak-watch, or `--activate` | | `soak pending` | Still inside the window and still GREEN | Leave it | | `soak GREEN` then `activating` | Window passed; live flipped | Done | | `probe GREEN` then `installed …` | First install, last-stack, or `--activate` | Done | | `soak RED` + `filed P0 soak-red-…` | Candidate failed; live copy unchanged; one fix card | Pickup drives the card | | `probe RED; refusing cutover` | Candidate failed a declared probe | **Do not** skip-probe; file a release-blocker | | `already current` | Live matches the channel | Nothing to do | | `deployment-only` | LastDB Mini | Use `lastdb-safe-upgrade` | ## Never - `host-track refresh` with `HOST_TRACK_PROBE_SKIP=1` unless Tom said to - Relink `~/.local/bin/<cmd>` onto a worktree or a staged version by hand - `brew upgrade` an app that Host Track owns - Treat `kanban --help` / `brain --help` as enough proof for those two — the registry probes a live `kanban list` / `brain get` - Upgrade LastDB Mini through this skill ## Rollback ```bash host-track rollback kanban host-track rollback brain kanban list --column todo brain get sop-edgevector-portals ``` ## Adding an app An artifact app without `safe_upgrade.probes` fails `host-track validate-registry`. Declare at least one argv relative to the version tree (`bin/…` or `dist/…`). Use `post_install_phase: after-cutover` only when the hook rewrites live links (last-stack `setup`). Default is `before-probe`.
From EdgeVector/last-stack, MIT.
More from EdgeVector/last-stack
- 0.565score
kanban-metrics-dashboard
EdgeVector
Build or refresh an ad-hoc metrics/benchmark view over kanban or LastDB ops data — velocity, throughput, write-timeout benchmarks, board-column funnels…
SkillAFreshness: AClaude Code +9 - 0.565score
board-closeout
EdgeVector
Drain stuck kanban doing cards — merged PRs/CRs to done, true zombies to todo — via the zero-LLM last-stack-board-closeout-sweep.
SkillAFreshness: AClaude Code +9 - 0.565score
factory-health
EdgeVector
Hourly Kanban Factory health check — ship rate, todo depth, doing age vs baselines; ra notify Tom when out of band.
SkillAFreshness: AClaude Code +9 - 0.565score
kanban
EdgeVector
Manage the kanban board — a kanban over LastDB.
SkillAFreshness: AClaude Code +9 - 0.560score
diagram
EdgeVector
Draw a diagram in Tom's preferred style — technical black-and-white line drawings (thin uniform geometric strokes, hatch for solid/stored things, dimension…
SkillAFreshness: AClaude Code +9 - 0.560score
app-identity-dogfood
EdgeVector
Run the App Identity app-creation flow end-to-end against the DEV environment, autonomously.
SkillAFreshness: AClaude Code +9 - 0.560score
brain-doctor
EdgeVector
Read-only triage of the LastDB brain (Tom's primary brain/kanban daily-driver node — the desktop fold-app process or Mini daemon, reached over the Unix socket…
SkillAFreshness: AClaude Code +9 - 0.560score
fix-it
EdgeVector
Find and land the permanent fix for a defect, papercut, failing signal, or leftover temporary repair.
SkillAFreshness: AClaude Code +9 - 0.551score
close-out
EdgeVector
Run the full close-out loop after finishing a substantive change — worktree PR + auto-merge, file session papercuts, write a full brain report of what was…
SkillAFreshness: AClaude Code +9 - 0.551score
kanban-agent
EdgeVector
Drive a single kanban card all the way to a MERGED PR — a card only reaches `done` when its code is actually in the repo and its outcome is proven.
SkillAFreshness: AClaude Code +9 - 0.524score
kanban-grooming
EdgeVector
Use when auditing or grooming Kanban board health: dependency-stub reconciliation, stale generated blockers, malformed Repo/Base/Kind headers, stale…
SkillBFreshness: BClaude Code +9 - 0.524score
last-stack-machine-leak-scan
EdgeVector
Scan Last Stack for host-machine identity leaks (usernames, home paths, emails, private IPs) that must not ship in the public installable product.
SkillBFreshness: BClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Aug 17, 2026 (2 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/EdgeVector/last-stack
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from EdgeVector
- 0.565score
kanban-metrics-dashboard
EdgeVector
Build or refresh an ad-hoc metrics/benchmark view over kanban or LastDB ops data — velocity, throughput, write-timeout benchmarks, board-column funnels…
SkillAFreshness: AClaude Code +9 - 0.565score
factory-health
EdgeVector
Hourly Kanban Factory health check — ship rate, todo depth, doing age vs baselines; ra notify Tom when out of band.
SkillAFreshness: AClaude Code +9 - 0.565score
kanban
EdgeVector
Manage the kanban board — a kanban over LastDB.
SkillAFreshness: AClaude Code +9 - 0.565score
board-closeout
EdgeVector
Drain stuck kanban doing cards — merged PRs/CRs to done, true zombies to todo — via the zero-LLM last-stack-board-closeout-sweep.
SkillAFreshness: AClaude Code +9 - 0.560score
fix-it
EdgeVector
Find and land the permanent fix for a defect, papercut, failing signal, or leftover temporary repair.
SkillAFreshness: AClaude Code +9 - 0.560score
app-identity-dogfood
EdgeVector
Run the App Identity app-creation flow end-to-end against the DEV environment, autonomously.
SkillAFreshness: AClaude Code +9
Cite this page
app-safe-upgrade skill. Agent Mart. https://agentmart.dev/skills/edgevector-app-safe-upgrade (last updated 2026-10-24)