Added comprehensive documentation and planning artifacts for the platform productization readiness and roadmap reconciliation. Co-authored-by: Ahmed Darrazi <ahmed.darrazi@live.de> Reviewed-on: #417
246 lines
13 KiB
Markdown
246 lines
13 KiB
Markdown
# Implementation Plan: Spec 345 - Platform Productization Readiness & Roadmap Reconciliation Gate
|
|
|
|
**Branch**: `345-platform-productization-readiness-roadmap-reconciliation-gate` | **Date**: 2026-06-02 | **Spec**: `specs/345-platform-productization-readiness-roadmap-reconciliation-gate/spec.md`
|
|
**Input**: Feature specification from `specs/345-platform-productization-readiness-roadmap-reconciliation-gate/spec.md`
|
|
|
|
## Summary
|
|
|
|
Spec 345 is a docs-only readiness gate. The implementation is a single repo-truth reconciliation pass across product docs, active spec packages, UI audits, current Filament surfaces, and existing tests/browser artifacts. No runtime code is changed. The deliverable is a completed decision package: readiness report, candidate reconciliation, roadmap reconciliation, app-boundary map, and next-spec recommendation.
|
|
|
|
## Technical Context
|
|
|
|
**Language/Version**: Markdown documentation, shell inspection, Laravel 12.52 / Filament 5.2.1 / Livewire 4.1.4 as audited runtime context
|
|
**Primary Dependencies**: existing spec packages, `docs/product/*`, `docs/ui-ux-enterprise-audit/*`, Laravel Boost read-only inspection tools
|
|
**Storage**: N/A - no runtime storage change
|
|
**Testing**: none for runtime behavior; docs integrity checks only
|
|
**Validation Lanes**: N/A / docs-only
|
|
**Target Platform**: repository docs under `specs/345-platform-productization-readiness-roadmap-reconciliation-gate/`
|
|
**Project Type**: single Laravel/Filament product audit package
|
|
**Performance Goals**: complete one bounded reconciliation pass without spawning new implementation scope
|
|
**Constraints**: no runtime changes, no route/model/service/test edits, no candidate deletion without reason, no customer portal implementation
|
|
**Scale/Scope**: current product docs, recent spec packages, key UI audit reports, and read-only inspection of current `apps/platform` surfaces
|
|
|
|
## UI / Surface Guardrail Plan
|
|
|
|
- **Guardrail scope**: no operator-facing surface change
|
|
- **Affected routes/pages/actions/states/navigation/panel/provider surfaces**: N/A - inspection only
|
|
- **No-impact class, if applicable**: docs-only
|
|
- **Native vs custom classification summary**: N/A
|
|
- **Shared-family relevance**: review-only across existing shared families
|
|
- **State layers in scope**: none changed; shell/page/detail/URL-query are audited only
|
|
- **Audience modes in scope**: operator-MSP, support-platform, customer-safe output as audit targets only
|
|
- **Decision/diagnostic/raw hierarchy plan**: evaluate current hierarchy, but do not change it
|
|
- **Raw/support gating plan**: audit current behavior only
|
|
- **One-primary-action / duplicate-truth control**: assess current surfaces and reflect remaining gaps in reports
|
|
- **Handling modes by drift class or surface**: report-only
|
|
- **Repository-signal treatment**: review-mandatory for stale roadmap/candidate claims, report-only for runtime findings outside scope
|
|
- **Special surface test profiles**: N/A
|
|
- **Required tests or manual smoke**: none required for this spec; existing browser/test evidence may be cited
|
|
- **Exception path and spread control**: none
|
|
- **Active feature PR close-out entry**: N/A
|
|
- **UI/Productization coverage decision**: No UI surface impact
|
|
- **Coverage artifacts to update**: none by default
|
|
- **No-impact rationale**: this package audits current surfaces without changing rendered UI
|
|
- **Navigation / Filament provider-panel handling**: read-only audit only
|
|
- **Screenshot or page-report need**: no new screenshots required unless a future follow-up spec reruns browser audit work
|
|
|
|
## Shared Pattern & System Fit
|
|
|
|
- **Cross-cutting feature marker**: yes
|
|
- **Systems touched**: `docs/product/spec-candidates.md`, `docs/product/roadmap.md`, `docs/product/implementation-ledger.md`, `docs/ui-ux-enterprise-audit/*`, recent spec repo-truth maps, recent implementation reports
|
|
- **Shared abstractions reused**: repo-truth maps, readiness language, UI audit page reports, implementation-ledger maturity terms
|
|
- **New abstraction introduced? why?**: none
|
|
- **Why the existing abstraction was sufficient or insufficient**: sufficient as evidence sources, insufficient as a single current reconciliation answer after recent platform work
|
|
- **Bounded deviation / spread control**: none; no new runtime or process framework is introduced
|
|
|
|
## OperationRun UX Impact
|
|
|
|
- **Touches OperationRun start/completion/link UX?**: no
|
|
- **Central contract reused**: N/A
|
|
- **Delegated UX behaviors**: N/A
|
|
- **Surface-owned behavior kept local**: audit only
|
|
- **Queued DB-notification policy**: N/A
|
|
- **Terminal notification path**: N/A
|
|
- **Exception path**: none
|
|
|
|
## Provider Boundary & Portability Fit
|
|
|
|
- **Shared provider/platform boundary touched?**: no runtime change
|
|
- **Provider-owned seams**: audited only (`ProviderConnectionResource`, onboarding/readiness surfaces)
|
|
- **Platform-core seams**: audited only (`WorkspaceContext`, workspace/environment shell, governance/evidence/review surfaces)
|
|
- **Neutral platform terms / contracts preserved**: workspace, managed environment, provider connection, evidence, review pack, governance decision, customer-safe output
|
|
- **Retained provider-specific semantics and why**: existing Microsoft-shaped runtime seams remain unchanged; the audit only flags where future work still risks spreading them further
|
|
- **Bounded extraction or follow-up path**: future follow-up spec if readiness review shows provider-boundary work is still blocking productization
|
|
|
|
## Constitution Check
|
|
|
|
Spec 345 is a docs-only gate and does not create runtime behaviors. Constitution-sensitive implications are therefore audit-only:
|
|
|
|
- Inventory-first, read/write separation, RBAC, OperationRun, audit, and provider-boundary rules are checked as current repo truth, not changed.
|
|
- No new persistence, abstraction, status family, or UI framework is introduced, so proportionality and anti-bloat rules pass by staying read-only.
|
|
- No destructive actions, Graph calls, Filament panel changes, or global search changes are introduced.
|
|
|
|
## Implementation Scope Gate
|
|
|
|
The implementation is limited to:
|
|
|
|
- `specs/345-platform-productization-readiness-roadmap-reconciliation-gate/spec.md`
|
|
- `specs/345-platform-productization-readiness-roadmap-reconciliation-gate/plan.md`
|
|
- `specs/345-platform-productization-readiness-roadmap-reconciliation-gate/tasks.md`
|
|
- `specs/345-platform-productization-readiness-roadmap-reconciliation-gate/repo-truth-map.md`
|
|
- `specs/345-platform-productization-readiness-roadmap-reconciliation-gate/platform-readiness-report.md`
|
|
- `specs/345-platform-productization-readiness-roadmap-reconciliation-gate/candidate-reconciliation.md`
|
|
- `specs/345-platform-productization-readiness-roadmap-reconciliation-gate/roadmap-reconciliation.md`
|
|
- `specs/345-platform-productization-readiness-roadmap-reconciliation-gate/app-boundary-map.md`
|
|
- `specs/345-platform-productization-readiness-roadmap-reconciliation-gate/next-spec-recommendation.md`
|
|
- `specs/345-platform-productization-readiness-roadmap-reconciliation-gate/checklists/requirements.md`
|
|
|
|
No other files are in scope unless the user explicitly asks for bounded candidate-doc updates later.
|
|
|
|
## Repo Sources To Reconcile
|
|
|
|
### Product docs
|
|
|
|
- `docs/product/spec-candidates.md`
|
|
- `docs/product/roadmap.md`
|
|
- `docs/product/implementation-ledger.md`
|
|
- `docs/product/discoveries.md`
|
|
|
|
### UI audit inputs
|
|
|
|
- `docs/ui-ux-enterprise-audit/route-inventory.md`
|
|
- `docs/ui-ux-enterprise-audit/design-coverage-matrix.md`
|
|
- `docs/ui-ux-enterprise-audit/strategic-surfaces.md`
|
|
- `docs/ui-ux-enterprise-audit/grouped-follow-up-candidates.md`
|
|
- `docs/ui-ux-enterprise-audit/follow-up-specs/325-strategic-target-image-implementation-candidates.md`
|
|
- key page reports for workspace overview, environment dashboard, operations, governance inbox, decision register, customer review workspace, audit log, provider connections, reviews, and finding exceptions queue
|
|
|
|
### Recent spec truth
|
|
|
|
- `specs/326-customer-review-workspace-v1-productization/`
|
|
- `specs/327-governance-inbox-decision-first-workbench-productization/`
|
|
- `specs/328-operations-hub-decision-first-workbench-productization/`
|
|
- `specs/329-evidence-audit-log-disclosure-productization/`
|
|
- `specs/337-evidence-review-pack-product-process-flow-alignment/`
|
|
- `specs/338-workspace-environment-resource-scope-contract/`
|
|
- `specs/339-provider-connection-scope-hardening/`
|
|
- `specs/340-post-scope-contract-browser-verification-gate/`
|
|
- `specs/341-canonical-link-query-cleanup/`
|
|
- `specs/342-customer-review-workspace-final-consumption-productization/`
|
|
- `specs/343-customer-review-attestation-accepted-risk-lifecycle/`
|
|
- `specs/344-customer-review-workspace-density-audience-polish/`
|
|
|
|
### Runtime inspection surfaces (read-only)
|
|
|
|
- `apps/platform/app/Filament/Pages/`
|
|
- `apps/platform/app/Filament/Resources/`
|
|
- `apps/platform/resources/views/filament/pages/`
|
|
- `apps/platform/tests/Feature/`
|
|
- `apps/platform/tests/Browser/`
|
|
|
|
## Technical Approach
|
|
|
|
### Phase 1 - Baseline and source discovery
|
|
|
|
Record current branch/worktree state, list candidate and roadmap sources, and explicitly separate active queue sources from historical or audit-only sources.
|
|
|
|
### Phase 2 - Candidate reconciliation
|
|
|
|
Classify each discovered candidate lane into A-G, collapsing duplicate historical entries where the repo already shows a later spec or a superseding runtime slice. Do not silently delete history; instead, mark covered items as covered and active items as still open.
|
|
|
|
### Phase 3 - Roadmap reconciliation
|
|
|
|
Map roadmap themes to current repo truth. Distinguish themes that are already repo-real from those that are still productization gaps, spec-only, or roadmap-only.
|
|
|
|
### Phase 4 - Platform readiness audit
|
|
|
|
Use current code paths, recent spec close-outs, UI audit reports, and existing test/browser artifacts to score each major platform area. Report blockers and confidence level without pretending that unrun tests were re-validated in this spec.
|
|
|
|
### Phase 5 - Boundary map and next-spec sequence
|
|
|
|
Separate platform work from customer portal, website, and system work. Use the readiness and candidate maps to pick one primary next spec and an ordered follow-up sequence.
|
|
|
|
## Domain / Model Implications
|
|
|
|
No domain model or schema changes. The plan only references existing domain truth such as:
|
|
|
|
- `Workspace`
|
|
- `ManagedEnvironment`
|
|
- `EnvironmentReview`
|
|
- `EnvironmentReviewAcknowledgement`
|
|
- `EvidenceSnapshot`
|
|
- `ReviewPack`
|
|
- `StoredReport`
|
|
- `Finding`
|
|
- `FindingException`
|
|
- `OperationRun`
|
|
- `ProviderConnection`
|
|
|
|
These models are evidence for readiness, not modification targets.
|
|
|
|
## UI / Filament Implications
|
|
|
|
No Filament runtime code changes are planned. The plan audits current surfaces only. Filament v5 on Livewire v4 remains the runtime posture; provider registration remains in `apps/platform/bootstrap/providers.php`.
|
|
|
|
## Livewire Implications
|
|
|
|
No Livewire runtime changes. Existing Livewire/Filament page behavior is assessed through repo truth only.
|
|
|
|
## RBAC / Policy Implications
|
|
|
|
No authorization behavior changes. The reports must preserve and describe:
|
|
|
|
- workspace membership as the first isolation boundary,
|
|
- managed-environment or record-level entitlement as the second boundary where applicable,
|
|
- `404` for out-of-scope/non-member access,
|
|
- `403` for in-scope actors missing capability,
|
|
- customer-safe output vs operator/support diagnostics separation.
|
|
|
|
## Audit / Evidence / Operation Implications
|
|
|
|
No new audit events, evidence flows, or OperationRun behaviors are introduced. The plan only evaluates whether existing proof, evidence, review, and audit surfaces are productized enough.
|
|
|
|
## Data / Migration Implications
|
|
|
|
None. No migrations, data backfills, schema changes, or compatibility work are allowed in Spec 345.
|
|
|
|
## Test Strategy
|
|
|
|
Because Spec 345 is docs-only:
|
|
|
|
- Do not run the full application test suite by default.
|
|
- Reuse existing test and browser evidence from recent spec packages as repo truth.
|
|
- Validate only documentation integrity and worktree safety:
|
|
- `git status --short --branch`
|
|
- `git diff --stat`
|
|
- `git diff --check`
|
|
|
|
If the user later requests additional confidence, targeted runtime test commands can be proposed as a separate follow-up step, not assumed inside this spec.
|
|
|
|
## Rollout Considerations
|
|
|
|
- **Runtime rollout**: none
|
|
- **Deployment impact**: none
|
|
- **Migration impact**: none
|
|
- **Queue / scheduler impact**: none
|
|
- **Storage / asset impact**: none
|
|
- **Filament assets**: unchanged; existing `filament:assets` deployment posture remains untouched
|
|
|
|
## Risk Controls
|
|
|
|
- Keep edits inside the Spec 345 package only.
|
|
- Treat completed or implementation-closed specs as read-only historical evidence.
|
|
- Do not reopen or normalize earlier spec history.
|
|
- Mark uncertain themes as `candidate only`, `roadmap only`, or `deferred` instead of guessing implementation maturity.
|
|
- Do not use the audit to justify unrequested runtime fixes.
|
|
|
|
## Implementation Phases
|
|
|
|
1. Baseline repo state and source discovery
|
|
2. Candidate inventory and A-G classification
|
|
3. Roadmap theme reconciliation
|
|
4. Platform readiness scoring and blocker inventory
|
|
5. App-boundary mapping
|
|
6. Next-spec recommendation
|
|
7. Docs-only validation and checklist close-out
|