mirror of
https://github.com/rcourtman/Pulse.git
synced 2026-05-20 17:48:47 +00:00
Primary nav moved to platform-first (Proxmox/Docker/K8s/TrueNAS/vSphere) and the standalone Infrastructure/Workloads/Storage/Recovery/Ceph routes were no longer reachable from the UI — they only persisted as deep-link fallbacks and as cross-jump targets for command palette / shortcuts / drawer links. Code: - RuntimeHome and NotFound redirect to /proxmox/overview; kiosk-mode redirect follows the same canonical home. - App.tsx, routing/navigation.ts, routing/routePreload.ts, AppLayout.tsx drop the legacy routes, preloaders, tab IDs, and tab-title entries. - Old page wrappers (Infrastructure/Workloads/Storage/Recovery/Ceph) and the orphan CephServiceIcon and workloadsLink helper are deleted; the underlying feature surfaces (InfrastructurePageSurface, WorkloadsSurface, StorageSurface, RecoverySurface, ProxmoxCephTable) stay embedded inside platform pages. - Command palette and keyboard shortcuts now expose the five platform pages (g p/d/k/n/v) plus Patrol/Alerts/Settings; legacy g i/w/s/b are retired. - K8s Namespaces/Deployments drawer "view pods" buttons route to /kubernetes/pods (the legacy ?context= + ?namespace= filter doesn't carry forward yet — the new sub-tab doesn't consume those params). - Workload-row node-name click, host-row workloads icon, resource correlation/change drilldowns, and the PBS "Open Recovery Events" link render as plain text or are dropped — platform pages already surface the related data in adjacent sub-tabs. Governance: - Subsystem contracts updated to match: storage-recovery and performance-and-scalability drop the retired page wrappers from their Canonical Files lists; ai-runtime, cloud-paid, frontend-primitives, and unified-resources gain Current-State notes describing the platform-first redirect, palette/shortcut re-anchoring, and cross-link affordance removal so future work doesn't resurrect the retired paths. - status.json L8 (First-session & UX polish) evidence: the retired pages/Infrastructure.tsx wrapper is replaced by pages/Proxmox.tsx as the canonical post-redirect landing surface. - registry.json: 18 retired-file entries removed from owned_files, path-policy match_files, and exact_files across the route-shell-and- operations, workload-presentation, storage-recovery, and unified- resources subsystems. Surviving entries continue to cover the proof set — the embedded feature surfaces remain canonical and the retired page wrappers were thin shells with no remaining proof obligation. - canonical_completion_guard_test.py and subsystem_lookup_test.py retargeted: the recovery and storage product-surface fixtures now exercise the canonical components/* surfaces instead of the retired pages/* shells, matching the new registry shape. Tests: typecheck clean. Vitest 5820 pass / 6 pre-existing fail (PageControls.guardrails, useStoragePoolDetailModel, ApprovalSection x3, frontendResourceTypeBoundaries:1018) — all failing on HEAD before this change with clean porcelain on the offending source files. Python canonical_completion_guard_test (141) and subsystem_lookup_test (183) green. |
||
|---|---|---|
| .. | ||
| internal | ||
| agent_preflight.py | ||
| agent_preflight_test.py | ||
| ai_runtime_docs_policy_test.py | ||
| canonical_completion_guard.py | ||
| canonical_completion_guard_test.py | ||
| commercial_cancellation_reactivation_proof.py | ||
| commercial_cancellation_reactivation_rehearsal.py | ||
| contract_audit.py | ||
| contract_audit_test.py | ||
| control_plane.py | ||
| control_plane_audit.py | ||
| control_plane_audit_test.py | ||
| dev_runtime_governance_test.py | ||
| documentation_currentness_test.py | ||
| format_staged_go.py | ||
| format_staged_go_test.py | ||
| generate_platform_support_backend_module.py | ||
| generate_platform_support_frontend_module.py | ||
| governance_stage_guard.py | ||
| governance_stage_guard_test.py | ||
| mobile_relay_auth_approvals_proof.py | ||
| paid_feature_claims_proof.py | ||
| proof_entrypoints_test.py | ||
| readiness_assertion_guard.py | ||
| readiness_assertion_guard_test.py | ||
| record_rc_to_ga_blocked.py | ||
| record_rc_to_ga_rehearsal.py | ||
| registry_audit.py | ||
| registry_audit_test.py | ||
| relay_registration_reconnect_drain_proof.py | ||
| release_promotion_policy_support.py | ||
| release_promotion_policy_support_test.py | ||
| release_promotion_policy_test.py | ||
| render_release_body.py | ||
| render_release_body_test.py | ||
| repo_file_io.py | ||
| repo_file_io_test.py | ||
| resolve_release_promotion.py | ||
| resolve_release_promotion_test.py | ||
| ssh_host_key_policy_test.py | ||
| staged_commit_shape_guard.py | ||
| staged_commit_shape_guard_test.py | ||
| status_audit.py | ||
| status_audit_test.py | ||
| status_lookup.py | ||
| status_lookup_test.py | ||
| subsystem_contracts.py | ||
| subsystem_contracts_test.py | ||
| subsystem_lookup.py | ||
| subsystem_lookup_test.py | ||
| work_claim.py | ||
| work_claim_test.py | ||