diff --git a/ProxmoxVE b/ProxmoxVE index 35b5957..53d837b 160000 --- a/ProxmoxVE +++ b/ProxmoxVE @@ -1 +1 @@ -Subproject commit 35b5957ad1582da26b83166d0a28b7c23a9ba3fd +Subproject commit 53d837b48fb99ba46a38598c6ff8b4feee40b842 diff --git a/mission-control/README.md b/mission-control/README.md index d2db16b..6f970c4 100644 --- a/mission-control/README.md +++ b/mission-control/README.md @@ -38,6 +38,10 @@ pnpm --filter mission-control run generate:runbooks | `NEXT_PUBLIC_TESTNET_2138_RUNBOOK_URL` | Meta testnet 2138 runbook (Gitea markdown). | | `NEXT_PUBLIC_ROUTE_MATRIX_URL` | Aggregator route matrix JSON in repo. | | `NEXT_PUBLIC_DOCS_MASTER_URL` / `NEXT_PUBLIC_OPERATIONAL_RUNBOOKS_URL` | Override doc deep links on the launchpad. | +| `NEXT_PUBLIC_E2E_ENDPOINTS_DOC_URL` | Gitea markdown for `docs/04-configuration/E2E_ENDPOINTS_LIST.md` (routing verifier inventory). | +| `NEXT_PUBLIC_DOCS_SITE_URL` | Launchpad link for public docs site (default `https://docs.d-bis.org`). | +| `NEXT_PUBLIC_GITEA_URL` | Launchpad link for Gitea (default `https://gitea.d-bis.org`). | +| `NEXT_PUBLIC_CHAIN138_DAPP_URL` | Launchpad link for Chain 138 dapp (default `https://dapp.d-bis.org`). | ## Test diff --git a/mission-control/runbooks/doc-manifest.json b/mission-control/runbooks/doc-manifest.json index 8446ff0..7940dc3 100644 --- a/mission-control/runbooks/doc-manifest.json +++ b/mission-control/runbooks/doc-manifest.json @@ -1,5 +1,5 @@ { - "generatedAt": "2026-03-29T02:12:54.013Z", + "generatedAt": "2026-04-07T08:21:34.546Z", "runbooks": [ { "id": "doc-00-meta-deploy-confirm-and-full-e2e-runbook-39d840a5", @@ -458,6 +458,71 @@ "complianceFramework": "DBIS-MC-DOC-RUNBOOK-1", "executionNote": "Automated steps are the scripts explicitly referenced in this runbook. Review the documentation for prerequisites (SSH, VPN, secrets) before running in production." }, + { + "id": "doc-03-deployment-dbis-phase3-e2e-production-simulation-runbook-f47895fb", + "title": "DBIS Phase 3 — End-to-end production simulation", + "summary": "**Last updated:** 2026-03-28", + "whyItMatters": "This links documentation to executable automation in the monorepo. Operators get repeatable runs and an audit trail.", + "audienceHelp": "Use Practice mode when a script supports it. Set Proxmox host and RPC override when your environment differs from defaults.", + "docPath": "docs/03-deployment/DBIS_PHASE3_E2E_PRODUCTION_SIMULATION_RUNBOOK.md", + "prerequisites": [ + "Read the linked markdown runbook for safety and ordering.", + "Bash (Linux, macOS, WSL, or Git Bash on Windows) for .sh steps; Node for .mjs.", + "Network, SSH, or API access as required by the underlying scripts." + ], + "steps": [ + { + "title": "Documentation", + "plainText": "Open and follow: docs/03-deployment/DBIS_PHASE3_E2E_PRODUCTION_SIMULATION_RUNBOOK.md", + "technicalNote": "Automated steps below are derived from script paths mentioned in that file." + } + ], + "inputs": [ + { + "name": "proxmoxHost", + "label": "Proxmox host", + "type": "string", + "help": "Used as PROXMOX_HOST in the environment for scripts that read it (e.g. 192.168.11.10).", + "example": "192.168.11.10", + "default": "192.168.11.10" + }, + { + "name": "rpcUrlOverride", + "label": "RPC URL override (optional)", + "type": "string", + "help": "If non-empty, set as RPC_URL_138 for scripts that use Chain 138 RPC.", + "example": "http://192.168.11.211:8545", + "default": "" + }, + { + "name": "practiceMode", + "label": "Practice mode (--dry-run where supported)", + "type": "boolean", + "help": "When enabled, each step whose script advertises --dry-run receives that flag.", + "default": false + } + ], + "execution": { + "steps": [ + { + "interpreter": "bash", + "scriptRelative": "scripts/verify/run-dbis-phase3-e2e-simulation.sh", + "args": [], + "supportsDryRun": false + } + ] + }, + "touchpoints": [ + { + "id": "pipeline_exit", + "label": "All automated steps completed", + "description": "Aggregate exit status of the script chain.", + "passCondition": "exit_zero" + } + ], + "complianceFramework": "DBIS-MC-DOC-RUNBOOK-1", + "executionNote": "Automated steps are the scripts explicitly referenced in this runbook. Review the documentation for prerequisites (SSH, VPN, secrets) before running in production." + }, { "id": "doc-03-deployment-deployer-gas-auto-route-runbook-3ce18284", "title": "Deployer Gas Auto-Route Runbook", @@ -866,6 +931,89 @@ "complianceFramework": "DBIS-MC-DOC-RUNBOOK-1", "executionNote": "No shell/Node script paths were detected in this markdown. Mission Control runs repository config validation so you still get an automated check; follow the documentation for the full manual procedure." }, + { + "id": "doc-03-deployment-phase1-discovery-runbook-8d0690dd", + "title": "Phase 1 — Reality mapping runbook", + "summary": "**Last updated:** 2026-03-28", + "whyItMatters": "This links documentation to executable automation in the monorepo. Operators get repeatable runs and an audit trail.", + "audienceHelp": "Use Practice mode when a script supports it. Set Proxmox host and RPC override when your environment differs from defaults.", + "docPath": "docs/03-deployment/PHASE1_DISCOVERY_RUNBOOK.md", + "prerequisites": [ + "Read the linked markdown runbook for safety and ordering.", + "Bash (Linux, macOS, WSL, or Git Bash on Windows) for .sh steps; Node for .mjs.", + "Network, SSH, or API access as required by the underlying scripts." + ], + "steps": [ + { + "title": "Documentation", + "plainText": "Open and follow: docs/03-deployment/PHASE1_DISCOVERY_RUNBOOK.md", + "technicalNote": "Automated steps below are derived from script paths mentioned in that file." + } + ], + "inputs": [ + { + "name": "proxmoxHost", + "label": "Proxmox host", + "type": "string", + "help": "Used as PROXMOX_HOST in the environment for scripts that read it (e.g. 192.168.11.10).", + "example": "192.168.11.10", + "default": "192.168.11.10" + }, + { + "name": "rpcUrlOverride", + "label": "RPC URL override (optional)", + "type": "string", + "help": "If non-empty, set as RPC_URL_138 for scripts that use Chain 138 RPC.", + "example": "http://192.168.11.211:8545", + "default": "" + }, + { + "name": "practiceMode", + "label": "Practice mode (--dry-run where supported)", + "type": "boolean", + "help": "When enabled, each step whose script advertises --dry-run receives that flag.", + "default": false + } + ], + "execution": { + "steps": [ + { + "interpreter": "bash", + "scriptRelative": "scripts/verify/run-phase1-discovery.sh", + "args": [], + "supportsDryRun": false + }, + { + "interpreter": "bash", + "scriptRelative": "scripts/verify/audit-proxmox-operational-template.sh", + "args": [], + "supportsDryRun": false + }, + { + "interpreter": "bash", + "scriptRelative": "scripts/audit-besu-configs.sh", + "args": [], + "supportsDryRun": false + }, + { + "interpreter": "bash", + "scriptRelative": "scripts/audit-all-vm-ips.sh", + "args": [], + "supportsDryRun": false + } + ] + }, + "touchpoints": [ + { + "id": "pipeline_exit", + "label": "All automated steps completed", + "description": "Aggregate exit status of the script chain.", + "passCondition": "exit_zero" + } + ], + "complianceFramework": "DBIS-MC-DOC-RUNBOOK-1", + "executionNote": "Automated steps are the scripts explicitly referenced in this runbook. Review the documentation for prerequisites (SSH, VPN, secrets) before running in production." + }, { "id": "doc-03-deployment-phoenix-deployment-runbook-bddc2350", "title": "Phoenix Deployment Runbook", diff --git a/mission-control/src/lib/launchpad.ts b/mission-control/src/lib/launchpad.ts index 69362a3..e5aff22 100644 --- a/mission-control/src/lib/launchpad.ts +++ b/mission-control/src/lib/launchpad.ts @@ -73,5 +73,37 @@ export function getLaunchDestinations(): LaunchDestination[] { ), kind: 'docs', }, + { + id: 'e2e-endpoints-doc', + title: 'E2E endpoint inventory', + description: + 'Canonical list of public web, API, and RPC endpoints used by verify-end-to-end-routing.sh (profiles, evidence, Gitea Actions pointers).', + href: envUrl( + 'NEXT_PUBLIC_E2E_ENDPOINTS_DOC_URL', + 'https://gitea.d-bis.org/d-bis/proxmox/src/branch/main/docs/04-configuration/E2E_ENDPOINTS_LIST.md', + ), + kind: 'docs', + }, + { + id: 'public-docs-site', + title: 'Public docs (docs.d-bis.org)', + description: 'Hosted documentation when routed via NPM (E2E verifier target).', + href: envUrl('NEXT_PUBLIC_DOCS_SITE_URL', 'https://docs.d-bis.org'), + kind: 'external', + }, + { + id: 'gitea', + title: 'Gitea', + description: 'Git hosting and Actions; pair with scripts/verify/print-gitea-actions-urls.sh for job URLs.', + href: envUrl('NEXT_PUBLIC_GITEA_URL', 'https://gitea.d-bis.org'), + kind: 'external', + }, + { + id: 'chain138-dapp', + title: 'Chain 138 DApp', + description: 'Bridge / dapp frontend (dapp.d-bis.org) when deployed.', + href: envUrl('NEXT_PUBLIC_CHAIN138_DAPP_URL', 'https://dapp.d-bis.org'), + kind: 'external', + }, ]; }