defiQUG
377369a5be
feat(gitea-phoenix): gov runtime, deploy/template parity, workflow dedupe docs
...
Deploy to Phoenix / deploy (push) Has been skipped
Deploy to Phoenix / deploy-atomic-swap-dapp (push) Has been skipped
Deploy to Phoenix / cloudflare (push) Has been skipped
Deploy to Phoenix / validate (push) Failing after 2s
- Add gov-portals-runtime.v1.json + schema; jq gate in validate-config-files
- Python: parity-deploy-targets, parity-operational-template (IP strict, hostname WARN),
parity-gov-portals-runtime; validate-vm-routing-parity.sh wrapper
- check-gov-portal-workflow-canonical-strings.sh for monorepo Pattern A
- PORTAL_WORKFLOW_PARITY.md; template headers; repos README; operator checklist secrets
- report-gitea-cd-parity runs full VM routing parity; task doc marked complete
- GOV_PORTALS_XOM_DEV + GITEA_GOV + MASTER_INDEX + matrix doc cross-links
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-12 15:55:50 -07:00
defiQUG
e00e1f9b54
feat(gitea-phoenix): non-blockchain VM routing matrix + inventory closure CI
...
Deploy to Phoenix / validate (push) Failing after 1s
Deploy to Phoenix / deploy (push) Has been skipped
Deploy to Phoenix / deploy-atomic-swap-dapp (push) Has been skipped
Deploy to Phoenix / cloudflare (push) Has been skipped
- Add besu hostname-prefix exclusions and JSON Schema for matrix rows
- Generate 94-row matrix from committed live_inventory (non-besu guests)
- Enrich VMIDs from deploy-targets descriptions (7804, 5000, 7801, …)
- Python generate/validate; shell wrapper; hook validate-config-files.sh
- Docs: task status, matrix doc links, MASTER_INDEX
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-12 15:43:39 -07:00
defiQUG
c2dd721b33
docs: scope Gitea/Phoenix routing cleanup for all non-Besu VMIDs
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-12 15:37:28 -07:00
defiQUG
4c32c0cd60
docs(gov-portals): Gitea-only forge policy; clarify GitHub as non-canonical
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-12 15:32:49 -07:00
defiQUG
bebea622fe
feat(gov-portals): Phoenix CD parity, CI templates, sha-on-branch verify
...
Deploy to Phoenix / validate (push) Failing after 0s
Deploy to Phoenix / deploy (push) Has been skipped
Deploy to Phoenix / deploy-atomic-swap-dapp (push) Has been skipped
Deploy to Phoenix / cloudflare (push) Has been skipped
- Add phoenix-deploy-gov-portal-live-from-workspace.sh (DBIS/ICCC/OMNL/XOM); DBIS script delegates to it.
- deploy-targets: Gov_Web_Portals ICCC/OMNL/XOM with xom-dev healthchecks.
- server.js: optional PHOENIX_DEPLOY_VERIFY_SHA_ON_BRANCH via Gitea commit + compare.
- Gitea workflow templates: dbis/iccc/omnl/xom portal-ci-and-live (monorepo overlay CI, deploy needs verify); concurrency groups; document deploy-only DBIS fallback.
- Docs: GITEA_GOV_PORTALS_LIVE_SOURCE_OF_TRUTH.md; matrix/checklist/AGENTS/MASTER_INDEX/Gov portals deployment cross-links.
- scripts: gitea-tag-repo-release.sh; report-gitea-cd-parity lists repos/*.yml templates.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-12 13:53:10 -07:00
defiQUG
43c972bbbf
fix(gov-portals): rebase from Gitea before sync; add pull-rebase helper
...
- sync-gov-portals-ct-7804-from-git.sh: default to pull --rebase after fetch; require
clean monorepo/submodules; add --reset-hard for old mirror-to-origin behavior
- gov-portals-git-pull-rebase.sh: operator script to integrate Gitea main + submodule
pins; optional --submodules-latest to advance portal repos before pointer commit
- Document Devin/multi-actor workflow in GOV_PORTALS_XOM_DEV_DEPLOYMENT.md; AGENTS pointer
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-12 10:04:41 -07:00
defiQUG
09e8c08023
feat(non-evm): operator binding config, planner hints, and validation
...
Deploy to Phoenix / deploy (push) Has been skipped
Deploy to Phoenix / deploy-atomic-swap-dapp (push) Has been skipped
Deploy to Phoenix / cloudflare (push) Has been skipped
Deploy to Phoenix / validate (push) Failing after 3s
- Add config/non-evm-operator-binding.json (public hints only; no secrets).
- Extend .env.master.example with XRPL/Tron/Solana/TRONGRID overrides.
- Wire solana-gru-bridge-lineup refs; refresh non-evm lane stubs from binding.
- Teach liquidity-gap planner to read binding; validate JSON in validate-config-files.sh.
- Document handoff in CWUSDC_NON_MANUAL_PROVIDER_TASKS; cross-link GRU spec.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-12 00:08:09 -07:00
defiQUG
349ac415b9
chore(cwusdc): optional DexScreener probes and Etherscan-value readiness subset
...
Deploy to Phoenix / validate (push) Failing after 1s
Deploy to Phoenix / deploy (push) Has been skipped
Deploy to Phoenix / deploy-atomic-swap-dapp (push) Has been skipped
Deploy to Phoenix / cloudflare (push) Has been skipped
- Treat DexScreener token v1 APIs as optional; document in non-manual tasks.
- Align tracker checks, handoff/dossier builders, CMC sanity, monitors, and CI
shell wrapper with ETHERSCAN_VALUE_PATH_READY_IDS and summary fields.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-12 00:00:52 -07:00
defiQUG
b36cd43b1d
docs: MetaMask design corpus and GRU transport loader specification
...
- Add GRU_TRANSPORT_LOADER_DESIGN_SPEC (API contract, phases, JSON vs tests).
- Add METAMASK_PROVIDER_DESIGN_CORPUS (frozen decisions, doc taxonomy).
- Cross-link matrix, MASTER_INDEX, EIP-747 checklist sections, cursor rules.
- Reference spec from token-mapping-loader.cjs header; bump smom-dbis-138 for jest.config note.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-12 00:00:48 -07:00
defiQUG
ee0bffb3cd
feat(cwusdc): propagation monitor hooks, CMC enrich, pnpm scripts, inventory refresh
...
Deploy to Phoenix / deploy (push) Has been skipped
Deploy to Phoenix / deploy-atomic-swap-dapp (push) Has been skipped
Deploy to Phoenix / cloudflare (push) Has been skipped
Deploy to Phoenix / validate (push) Failing after 1s
- package.json: cwusdc:provider-checks:with-monitor, value-propagation, fetch/enrich CMC chain1
- run-cwusdc-value-propagation.sh: strip pnpm-forwarded -- for monitor args
- enrich-cmc-chain1-report-with-live-pool-catalog.py: merge live pool catalog into CMC report
- Harden external-tracker / propagation / provider-check scripts and CMC sanity checker
- Docs: MetaMask matrix optional automation; CWUSDC non-manual tasks cross-links
- Refresh drift + live_inventory collected_at from latest cluster poll
- gitignore: rpc-502-diagnostics evidence dumps under verification-evidence
Validated: bash scripts/verify/run-all-validation.sh --skip-genesis
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-11 21:23:52 -07:00
defiQUG
f7e56f0a92
fix(ci): act_runner empty network for services; docs; bump the-order/dbis_core
...
Deploy to Phoenix / validate (push) Failing after 4s
Deploy to Phoenix / deploy (push) Has been skipped
Deploy to Phoenix / deploy-atomic-swap-dapp (push) Has been skipped
Deploy to Phoenix / cloudflare (push) Has been skipped
- Keep container.network empty so workflow services share per-job Docker network.
- Document Postgres hostname and P1001 troubleshooting.
- Bump the-order and dbis_core submodule pointers (DATABASE_URL uses postgres host).
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-11 21:05:41 -07:00
defiQUG
db06f6aa0f
docs(cwusdc): note GeckoTerminal 429 retries in provider and MetaMask matrix
...
Align CWUSDC non-manual tasks row with exponential backoff in external-tracker
and monitor scripts; cross-link MetaMask submission matrix to --gecko-retries.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-11 20:47:45 -07:00
defiQUG
4ebf2d7902
chore(repo): sync operator workspace (config, scripts, docs, multi-chain)
...
Deploy to Phoenix / validate (push) Failing after 1s
Deploy to Phoenix / deploy (push) Has been skipped
Deploy to Phoenix / deploy-atomic-swap-dapp (push) Has been skipped
Deploy to Phoenix / cloudflare (push) Has been skipped
Add optional Cosmos/Engine-X/act-runner templates, CWUSDC/EI-matrix tooling,
non-EVM route planner in multi-chain-execution (tests passing), token list and
extraction updates, and documentation (MetaMask matrix, GRU/CWUSDC packets).
Ignore institutional evidence tarballs/sha256 under reports/status.
Validated with: bash scripts/verify/run-all-validation.sh --skip-genesis
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-11 16:25:08 -07:00
defiQUG
1f44a50a25
feat(it-ops): cluster live inventory + QEMU ipconfig LAN IPs
...
Add scripts/it-ops export pipeline (collect_inventory_remote, compute_ipam_drift)
and proxmox_guest_lan_ips parser for ipconfig* and all net* interfaces.
Reconcile ALL_VMIDS, ip-addresses.conf, and operational template with live
VMID/IP data; Order portal env vars; DBIS node matrix; inventory helpers.
Track latest reports/status/live_inventory.json and drift.json (137 guests,
no duplicate LAN IPs). Document export in AGENTS.md.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-11 10:22:59 -07:00
defiQUG
724ba7a935
Docs: DealFlow public path, NPM ops, 2026-05-11 status
...
Deploy to Phoenix / validate (push) Successful in 1m11s
Deploy to Phoenix / deploy (push) Failing after 19s
Deploy to Phoenix / deploy-atomic-swap-dapp (push) Has been skipped
Deploy to Phoenix / cloudflare (push) Has been skipped
- E2E_ENDPOINTS_LIST, MASTER_INDEX, TODOS, NEXT_STEPS_*, OPERATOR_READY_CHECKLIST: public DealFlow 5/5, Wave 0 (41 hosts), submodules gate vs the-order, Studio/NPM token notes.
- OPERATIONAL_RUNBOOKS: HTTPS for POST /api/tokens; 2026-05-11 Wave 0 verification.
- RUNBOOKS_MASTER_INDEX: last-updated.
ALL_VMIDS_ENDPOINTS: local WIP remains uncommitted; DealFlow public-edge note is in working copy only until inventory refresh is finalized.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-10 22:13:11 -07:00
defiQUG
1f8a0d8c27
docs: sync master indices for 2026-05-10 (submodules, E2E, DealFlow)
...
- MASTER_INDEX, NEXT_STEPS_*, TODOS_CONSOLIDATED, OPERATOR_READY_CHECKLIST,
SUBMODULE_HYGIENE, REPO_LOCAL_RECOMMENDATIONS_STATUS, E2E_ENDPOINTS_LIST,
COMPLETE_REQUIRED_OPTIONAL_RECOMMENDED_INDEX, docs/README, RUNBOOKS_MASTER_INDEX,
OPTIONAL_RECOMMENDATIONS_INDEX
- Record submodule commits/pushes, submodules-clean gate, public E2E evidence,
studio HTTPS warn, DealFlow LAN vs apex DNS
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-10 13:02:20 -07:00
defiQUG
ba4e4b8e90
feat(e2e): DealFlow public verifier + umbrellash routing list (dealflow.d-bis.org).
...
Deploy to Phoenix / validate (push) Has been cancelled
Deploy to Phoenix / deploy (push) Has been cancelled
Deploy to Phoenix / deploy-atomic-swap-dapp (push) Has been cancelled
Deploy to Phoenix / cloudflare (push) Has been cancelled
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-10 12:16:23 -07:00
defiQUG
1a29a7610b
docs(defillama): record official chain X profile @DefiOracleMeta
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-10 09:09:13 -07:00
defiQUG
6074b44261
docs(defillama): sync ecosystem map TVL row with PR-prepared state
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-10 08:27:10 -07:00
defiQUG
d9a0bcae9b
docs(defillama): Chain 138 submission checklist + touchpoints refresh
...
- Expand defillama-chain138-touchpoints.json with server/dimension status and form links
- Add DEFILLAMA_CHAIN138_SUBMISSION_CHECKLIST.md (forms + PR notes + API blockers)
- Link checklist from CHAIN138_DEFILLAMA_ECOSYSTEM_MAP.md
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-10 08:19:06 -07:00
defiQUG
823fcae8f6
docs(inventory): Order of Malta DealFlow CT 10381; IP_OM_TREASURY_DEALFLOW; ignore .secrets for operator keys.
...
Deploy to Phoenix / validate (push) Failing after 11m21s
Deploy to Phoenix / deploy (push) Has been cancelled
Deploy to Phoenix / deploy-atomic-swap-dapp (push) Has been cancelled
Deploy to Phoenix / cloudflare (push) Has been cancelled
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-10 05:15:21 -07:00
defiQUG
dd02f4b59b
Enhance .env configuration with Infura support and add new RPC endpoints for various networks. Update package.json with new deployment scripts for Engine X. Improve public LP compliance documentation in runbooks and scripts, including guidance for public pair repairs and funding strategies.
Deploy to Phoenix / validate (push) Successful in 1m11s
Deploy to Phoenix / deploy (push) Successful in 43s
Deploy to Phoenix / deploy-atomic-swap-dapp (push) Successful in 1m32s
phoenix-deploy Deployed to cloudflare-sync
Deploy to Phoenix / cloudflare (push) Successful in 38s
2026-05-07 18:19:37 -07:00
defiQUG
ec6217fdc3
Clean up pre-PR validation workflow
Deploy to Phoenix / validate (push) Successful in 1m15s
Deploy to Phoenix / deploy (push) Successful in 43s
Deploy to Phoenix / deploy-atomic-swap-dapp (push) Successful in 1m33s
phoenix-deploy Deployed to cloudflare-sync
Deploy to Phoenix / cloudflare (push) Successful in 38s
2026-05-07 07:55:02 -07:00
defiQUG
ddb1f825dc
Add All Mainnet 1inch route preflight
Deploy to Phoenix / validate (push) Successful in 1m20s
Deploy to Phoenix / deploy (push) Successful in 46s
Deploy to Phoenix / deploy-atomic-swap-dapp (push) Has been cancelled
Deploy to Phoenix / cloudflare (push) Has been cancelled
phoenix-deploy Deployed to atomic-swap-dapp-live
2026-04-30 04:11:10 -07:00
defiQUG
929f08d8f4
Route public Chain 138 RPC websocket upgrades
2026-04-30 01:58:35 -07:00
defiQUG
ba8f1b9b76
Refresh cW public price exports
2026-04-29 23:53:54 -07:00
1b393f5ae2
Merge pull request 'docs(chain138): canonicalize Stack-A DODO PMM stack (live, traded)' ( #17 ) from devin/1777435956-stack-a-canonicalization into master
Deploy to Phoenix / validate (push) Has started running
Deploy to Phoenix / deploy (push) Has been cancelled
Deploy to Phoenix / deploy-atomic-swap-dapp (push) Has been cancelled
Deploy to Phoenix / cloudflare (push) Has been cancelled
2026-04-29 10:49:28 +00:00
Devin AI
9e0795dbc4
ci(phoenix): workflow_dispatch reinstall for phoenix-deploy-api on CT 5700
...
AI Code Review / claude-review (pull_request) Failing after 1m11s
Validate (PR) / run-all-validation (pull_request) Successful in 24s
Closes the gap where phoenix-deploy-api/server.js on master is the real
implementation, but the running service on CT 5700 is the older stub
that returns 'Deploy request queued (stub)' for every target.
The new workflow .gitea/workflows/bootstrap-phoenix-deploy-api.yml is
manual-only (workflow_dispatch). When triggered it:
1. Validates the repo layout (phoenix-deploy-api/server.js MUST NOT
contain the stub string).
2. Tars phoenix-deploy-api/ + config/public-sector-program-manifest.json
into a deploy bundle.
3. scp's the bundle to the PVE node that hosts CT 5700 using a
dedicated deploy SSH key (PHOENIX_PVE_SSH_KEY repo secret).
4. pct push / pct exec the bundle into the CT and runs the existing
phoenix-deploy-api/scripts/install-systemd.sh which already drops
/opt/phoenix-deploy-api/, writes the systemd unit, and restarts
the service.
5. Health-checks GET http://<dev-vm>:4001/health (with retry).
6. Posts a non-stub probe: POST /api/deploy with target __bootstrap_probe__
+ the deploy bearer token. Fails the workflow if the response body
still contains 'Deploy request queued (stub)' or any auth-rejection
signal. That gives an unambiguous post-bootstrap health signal in
CI logs without depending on a successful real deploy.
Required new secrets (documented in docs/04-configuration/DEVIN_GITEA_PROXMOX_CICD.md
section 3a):
PHOENIX_PVE_HOST, PHOENIX_PVE_USER (default root), PHOENIX_PVE_SSH_KEY,
PHOENIX_PVE_KNOWN_HOSTS (optional), PHOENIX_DEV_VM_VMID (default 5700),
PHOENIX_DEPLOY_DEV_VM_IP (default 192.168.11.59).
Triggered manually only — bootstrap is sensitive enough that we do NOT
fire on every master push. Once the running service on CT 5700 is
post-stub, the existing deploy job in deploy-to-phoenix.yml will
actually execute scripts/deployment/deploy-atomic-swap-dapp-5801.sh on
each push instead of returning a 202 stub.
Co-Authored-By: Nakamoto, S <defi@defi-oracle.io >
2026-04-28 19:05:36 +00:00
defiQUG
cd8a52ae84
docs: Gitea CD operator checklist + wire templates README; executable parity script
...
Deploy to Phoenix / validate (push) Successful in 1m29s
Deploy to Phoenix / deploy (push) Has been cancelled
Deploy to Phoenix / deploy-atomic-swap-dapp (push) Has been cancelled
Deploy to Phoenix / cloudflare (push) Has been cancelled
Made-with: Cursor
2026-04-28 04:26:39 -07:00
defiQUG
9769225299
feat(gitea): per-repo CD/CI matrix, CyberSecur Phoenix target, workflow templates
...
Deploy to Phoenix / validate (push) Failing after 26s
Deploy to Phoenix / deploy (push) Has been skipped
Deploy to Phoenix / deploy-atomic-swap-dapp (push) Has been skipped
Deploy to Phoenix / cloudflare (push) Has been skipped
- deploy-targets: Gov_Web_Portals/CyberSecur-Global → CT 7810 via phoenix-deploy-cybersecur-from-workspace.sh
- docs: GITEA_REPO_VM_CD_CI_MATRIX.md; MASTER_INDEX link; templates under config/gitea-workflow-templates/
- bump cross-chain-pmm-lps (validate-capital-efficiency workflow)
Made-with: Cursor
2026-04-28 01:24:31 -07:00
defiQUG
2b5a039931
docs: harden canonical besu inventory references
2026-04-25 12:05:53 -07:00
defiQUG
a894b1dd50
docs: add ura operational readiness and production gates
2026-04-25 11:37:05 -07:00
defiQUG
566cecd8f9
feat: add universal resource activation policy profile flow
2026-04-24 22:06:26 -07:00
defiQUG
aba8ca5700
feat: add universal resource activation manifest wiring
Deploy to Phoenix / validate (push) Failing after 28s
Deploy to Phoenix / deploy (push) Has been skipped
Deploy to Phoenix / deploy-atomic-swap-dapp (push) Has been skipped
Deploy to Phoenix / cloudflare (push) Has been skipped
2026-04-24 18:31:54 -07:00
defiQUG
83482d6d13
docs: add blocker cleanup runbook and resource activation pack
2026-04-24 12:40:35 -07:00
defiQUG
1336253f8d
docs: promote thirdweb besu sentries into canonical inventory
2026-04-24 12:27:10 -07:00
defiQUG
a1eacd3098
ops: destroy duplicate besu cts and add cluster inventory audit
2026-04-24 11:52:46 -07:00
defiQUG
91ba6f4f2f
docs: finalize besu host placement reconciliation
2026-04-24 11:45:04 -07:00
defiQUG
21ad898c6b
docs: reconcile besu rpc inventory after duplicate retirement
2026-04-24 11:30:46 -07:00
defiQUG
fc32d51ca7
docs: update operator, endpoint, and deployment references
2026-04-24 10:55:35 -07:00
defiQUG
3743d20f49
repo: prune obsolete helpers and backup artifacts
2026-04-24 10:47:01 -07:00
defiQUG
b8613905bd
chore: sync workspace — configs, docs, scripts, CI, pnpm, submodules
...
Deploy to Phoenix / validate (push) Failing after 15s
Deploy to Phoenix / deploy (push) Has been skipped
- Submodule pins: dbis_core, cross-chain-pmm-lps, mcp-proxmox (local, push may be pending), metamask-integration, smom-dbis-138
- Atomic swap + cross-chain-pmm-lops-publish, deploy-portal workflow, phoenix deploy-targets, routing/aggregator matrices
- Docs, token-lists, forge proxy, phoenix API, runbooks, verify scripts
Made-with: Cursor
2026-04-21 22:01:33 -07:00
defiQUG
4fab998e51
chore: sync workspace docs, configs, and submodules
Deploy to Phoenix / deploy (push) Successful in 9s
2026-04-18 12:07:15 -07:00
defiQUG
5618f95426
Add Gitea act runner bootstrap tooling
Deploy to Phoenix / deploy (push) Successful in 4s
2026-03-29 01:23:57 -07:00
defiQUG
4ef9ca58ef
Deploy DBIS RTGS first-slice sidecars
Deploy to Phoenix / deploy (push) Successful in 6s
2026-03-29 00:01:34 -07:00
defiQUG
6f53323eae
Finalize DBIS infra verification and runtime baselines
Deploy to Phoenix / deploy (push) Successful in 6s
2026-03-28 19:18:32 -07:00
defiQUG
7e546ec9e3
feat(e2e): add SSO, docs.d-bis, blockscout.defi-oracle to routing verifier
...
- DOMAIN_TYPES_ALL: keycloak/admin/portal/dash, docs.d-bis.org,
blockscout.defi-oracle.io (web)
- E2E_OPTIONAL_WHEN_FAIL: same set for soft failures off-LAN
- Optional Blockscout /api/v2/stats for blockscout.defi-oracle.io
- print-gitea-actions-urls.sh: browser URLs (Actions API not relied on)
- E2E_ENDPOINTS_LIST + FQDN inventory alignment updated
Made-with: Cursor
2026-03-28 17:29:50 -07:00
defiQUG
7245e3e9d4
docs(fqdn): align SSO/dash/blockscout rows with EXPECTED_WEB_CONTENT v1.5
...
- Link Deployment Status matrix; portal 7801 + sync script; admin/dash intent
- blockscout.defi-oracle.io as full table row (VMID 5000, not canonical 138)
- Tighten inventory alignment footer
Made-with: Cursor
2026-03-28 16:49:26 -07:00
defiQUG
f7c9f8a069
docs(storage): 7811 logrotate hardening; post-fstrim r630-01 %; cloudflared token note
...
Made-with: Cursor
2026-03-28 16:30:43 -07:00
defiQUG
da93f8dbb6
fix(storage-monitor): subshell-safe ALERTS, ordered node loop; doc fleet pass
...
- Replace pipe-while with process substitution so alerts accumulate.
- Iterate ml110→r630-04 in fixed order; tolerate unreachable optional nodes.
- STORAGE_GROWTH_AND_HEALTH: 2026-03-28 follow-up (7811 syslog, 10100 resize,
I/O pass, ZFS scrub, md0 healthy, table refresh for r630-01/02/ml110).
Made-with: Cursor
2026-03-28 16:15:59 -07:00