You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Anchor: phi^2 + phi^-2 = 3.
Adds the 4th disaster-recovery trigger path to docs/DISASTER_RECOVERY.md
in anticipation of the railway_dr_snapshot / railway_dr_restore MCP
tools landing in openai#17. The contract is frozen up-front so the doc and
the implementation can ship in parallel.
What landed:
docs/DISASTER_RECOVERY.md
- 'Trigger paths' intro flips three -> four, ordered chat -> web ->
CI -> shell ('increasing operator friction').
- New section 'D. MCP chat' explains the two tools, gives natural-
language usage, lists five safety invariants enforced server-side
(confirm == 'PHI', acc1 forbidden, TRIOS_REPO_PAT required, 600s
hard timeout, R7 triplet seal on success), and a 'Why path D is
path D' rationale clarifying that the ordering reflects agency,
not speed.
- TL;DR adds a one-sentence chat alternative ('vosstanovi flot na
acc3, podtverzhdayu PHI').
README.md
- DR list flips three -> four with the same MCP-chat option.
No code changes, no workflow changes. The tool names, signatures, and
safety invariants are documented exactly as spec'd in the openai#17 plan;
they will land in src/tools/railway_dr_*.rs as commits c1..c4.
Refs openai#17, refs trios#143.
Co-authored-by: Perplexity Computer <computer@perplexity.ai>
Copy file name to clipboardExpand all lines: README.md
+1Lines changed: 1 addition & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,6 +11,7 @@ repo. **Three trigger paths**, all documented in
11
11
1.**Web button (above)** — published from [`railway-template.json`](railway-template.json). Provisions all 6 control-plane services (1 MCP + 3 champion seeds + dwagent + Neon backup-to-R2 sidecar).
12
12
2.**GitHub Actions** — `Actions → DR Deploy from template → account_alias=accN, confirm=PHI`. Workflow: [`deploy-from-template.yml`](.github/workflows/deploy-from-template.yml).
13
13
3.**CLI** — `tri-railway service deploy …` for each service in [`disaster-recovery/fleet-snapshot.json`](disaster-recovery/fleet-snapshot.json) (refreshed hourly by [`fleet-snapshot.yml`](.github/workflows/fleet-snapshot.yml)).
14
+
4.**MCP chat** — say “восстанови флот на acc3, подтверждаю PHI” to any client connected to the `trios-railway-mcp` server. Tools: `railway_dr_snapshot`, `railway_dr_restore` (issue [#17](https://github.com/gHashTag/trios-railway/issues/17)).
14
15
15
16
Fleet shape, audit ledger, and champion BPB rows survive any single-account ban
16
17
— see the survives-table in [`docs/DISASTER_RECOVERY.md`](docs/DISASTER_RECOVERY.md).
|`railway_dr_snapshot`| Triggers `fleet-snapshot.yml`, polls until completion, returns the diff of `disaster-recovery/fleet-snapshot.json` between two SHAs. |
106
+
|`railway_dr_restore`| Triggers `deploy-from-template.yml` with the chosen `target_account` and `confirm: "PHI"`. Streams workflow logs back through MCP. |
107
+
108
+
In natural-language form (any MCP-aware client, e.g. the
0 commit comments