feat: persistent ops trail + upgrade guidance for railway postgres - #1055
Merged
Conversation
Every railway postgres invocation now appends to a local audit trail (~/.railway/postgres-ops.jsonl, 90-day retention, RAILWAY_POSTGRES_OPS_LOG override) with the resolved project/environment/service, argv, and outcome -- readable via the new `railway postgres history`. PITR/HA/PgBouncer compose, and reconstructing WHICH sequence of operations produced a misconfigured Postgres needs more than server-side command counters. Also translates schema-mismatch and "update your CLI" errors from the backend into `railway upgrade` guidance instead of a raw GraphQL dump -- these commands drive API operations the backend reserves the right to evolve. Part 7/9 of the railway postgres pitr/ha/pgbouncer stack.
paulocsanz
force-pushed
the
pcs/pg-mgmt-06b-ops-trail
branch
from
August 8, 2026 00:20
d51861a to
0f52297
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Part 7/9 of the railway postgres pitr/ha/pgbouncer stack (split out of #1032 for reviewability — see that PR for the full context, live-prod e2e evidence, and the test-postgres-cli harness). Each PR is based on the previous one and is independently green (cargo test/clippy/fmt).
Every
railway postgresinvocation now appends to a local audit trail(
~/.railway/postgres-ops.jsonl, 90-day retention,RAILWAY_POSTGRES_OPS_LOGoverride) with the resolved project/environment/service, argv, and outcome —
readable via the new
railway postgres history. PITR/HA/PgBouncer compose,and reconstructing WHICH sequence of operations produced a misconfigured
Postgres needs more than server-side command counters.
Also translates schema-mismatch and "update your CLI" errors from the
backend into
railway upgradeguidance instead of a raw GraphQL dump —these commands drive API operations the backend reserves the right to
evolve.
Part 7/9 of the railway postgres pitr/ha/pgbouncer stack.