From 1857fe7f4f6aa228d5467411a421c5038eaa3d1a Mon Sep 17 00:00:00 2001 From: tegwick Date: Fri, 25 Sep 2026 02:06:02 +0200 Subject: [PATCH] Record the isolated vergabe_demo_company restore and app restart. Assistant: grok Assistant-Session: 01a0d25d-d358-7e13-b84a-d007fbb7e34f --- ...2026-09-25-vergabe-demo-company-restore.md | 43 +++++++++++++++++++ .../RAPPS-WP-0014-vergabe-invited-pilot.md | 17 ++++++-- 2 files changed, 57 insertions(+), 3 deletions(-) create mode 100644 docs/evidence/2026-09-25-vergabe-demo-company-restore.md diff --git a/docs/evidence/2026-09-25-vergabe-demo-company-restore.md b/docs/evidence/2026-09-25-vergabe-demo-company-restore.md new file mode 100644 index 0000000..97ffa5c --- /dev/null +++ b/docs/evidence/2026-09-25-vergabe-demo-company-restore.md @@ -0,0 +1,43 @@ +# vergabe_demo_company restore proof — 2026-09-25 + +Founder request: rehearse recovery of the invited-company database without +touching the live database. Authority for the app restart: +`ADMINISTER @ realm:kubernetes/railiance01`, `activation=APPROVED`. + +## PostgreSQL + +| Item | Value | +|---|---| +| Cluster | `databases/apps-pg`, primary `apps-pg-1` | +| Source | `vergabe_demo_company` | +| Artifact | `apps-pg-vergabe_demo_company-20260925T000349Z.dump.age` (160K plain dump, age-encrypted) | +| Upload | not run; the OpenBao offsite lane was not logged in | +| Scratch database | `vergabe_demo_restore_20260925`, created and dropped | +| Restore time | 2 seconds | +| Tables | 39 live, 39 restored | +| Rows | 212 live, 212 restored | +| Checksum of `schema.table:count` | `32ead8ffca3b2f917c7d163bb6948b243b2106690ad39612b68408f5601a6048` | +| Gate | pass | +| Left in place | `vergabe_demo_company` and historical `vergabe_db` | + +No row contents were written into this record. The drill used +`tools/apps-pg-backup-dry-run.sh` at railiance-apps `03105b5` and `pg_restore` +into the scratch database. Backup owner remains `railiance-platform`; the +documented cadence is the daily 02:30 UTC Option A logical dump. This artifact +is a manual workstation copy, not that upload. + +## Files + +`/app/media` and `/app/.issue-facade` are mounted from the local-path claims +`vergabe-teilnahme-media` (5Gi) and `vergabe-teilnahme-app-state` (1Gi). Both +contained zero files. An in-pod copy of those trees matched the empty checksum +`e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855`, and the +scratch copy was removed. These claims are not an off-host backup and do not +survive loss of the node. + +## App restart + +`vergabe-teilnahme` was recreated at 00:04:38 UTC and Ready at 00:04:57 UTC. +`https://vergabe-teilnahme.coulomb.social/demo-company/health/` returned 503 +during the recreate and then 200 five times. Login, a second user, and a +document workflow were not part of this rehearsal. diff --git a/workplans/RAPPS-WP-0014-vergabe-invited-pilot.md b/workplans/RAPPS-WP-0014-vergabe-invited-pilot.md index f797cf6..06e16d2 100644 --- a/workplans/RAPPS-WP-0014-vergabe-invited-pilot.md +++ b/workplans/RAPPS-WP-0014-vergabe-invited-pilot.md @@ -9,7 +9,7 @@ flavor: implementation owner: the-custodian topic_slug: railiance created: "2026-09-11" -updated: "2026-09-12" +updated: "2026-09-25" related: [VERGABE-WP-0019, VERGABE-WP-0018, HFACT-WP-0001, CUST-WP-0071] state_hub_workstream_id: "c7fdaa7e-cab8-5d1d-86c2-f1aad7927c57" --- @@ -185,11 +185,11 @@ Evidence: railiance-apps/docs/evidence/2026-09-12-demo-company-sso-live.md. ```task id: RAPPS-WP-0014-T03 -status: wait +status: progress priority: high assignee: the-custodian depends_on: [RAPPS-WP-0014-T02] -blocking_reason: "Placement and data binding are live; verify product account onboarding and run the coherent restart/restore rehearsal before pilot admission." +blocking_reason: "Database restore and app restart are proved. Two-user collaboration and a document round-trip are still open." state_hub_task_id: "dd069c6d-fcc1-5bac-b233-976f2f0d5cd1" ``` @@ -207,3 +207,14 @@ single-writer Recreate release has a short service interruption; do not promise HA. Return evidence to VERGABE-WP-0019-T03/T04 before customer invitations. Native factory-produced delivery remains VERGABE-WP-0018/HFACT-WP-0001's separate claim. Pricing and shared-app tenancy are outside this invited-pilot milestone. + +2026-09-25 restore rehearsal. `vergabe_demo_company` was dumped, restored into +scratch database `vergabe_demo_restore_20260925` in 2 seconds, and matched on +39 tables and 212 rows (checksum +`32ead8ffca3b2f917c7d163bb6948b243b2106690ad39612b68408f5601a6048`). The scratch +database was dropped. `vergabe_db` was not restored over. Media and issue-facade +claims are mounted and empty; they are local-path and not an off-host backup. +The app pod was recreated and `/demo-company/health/` returned 200. The age +file stayed on the workstation; the Nextcloud upload was not run. Two-user +collaboration and a document round-trip remain. Evidence: +`docs/evidence/2026-09-25-vergabe-demo-company-restore.md`.