- Create 07-00-SUMMARY.md with deviation documentation and self-check - Update STATE.md: advance progress, add decisions, record session - Update ROADMAP.md: phase 7 marked In Progress (1/3 summaries) - Update REQUIREMENTS.md: VALID-01 and UX-01 marked complete
95 lines
6.0 KiB
Markdown
95 lines
6.0 KiB
Markdown
# Roadmap: Ready2Blob
|
||
|
||
## Milestones
|
||
|
||
- ✅ **v1.0 MVP** — Phases 1–4 (shipped 2026-03-27)
|
||
- 🚧 **v1.1 Backlog & Tech Debt** — Phases 5–7 (in progress)
|
||
|
||
## Phases
|
||
|
||
<details>
|
||
<summary>✅ v1.0 MVP (Phases 1–4) — SHIPPED 2026-03-27</summary>
|
||
|
||
- [x] Phase 1: Foundation (4/4 plans) — completed 2026-03-26
|
||
- [x] Phase 2: Generators (4/4 plans) — completed 2026-03-26
|
||
- [x] Phase 3: Wizard UI (5/5 plans) — completed 2026-03-27
|
||
- [x] Phase 4: Review, Download & Security (5/5 plans) — completed 2026-03-27
|
||
|
||
Full phase details: [.planning/milestones/v1.0-ROADMAP.md](milestones/v1.0-ROADMAP.md)
|
||
|
||
</details>
|
||
|
||
### 🚧 v1.1 Backlog & Tech Debt (In Progress)
|
||
|
||
**Milestone Goal:** Ship all deferred tech debt and backlog features from v1.0 — scriptTargets filtering, UX consistency fixes, registry-driven backend list, 4 new backends, field validation, and contextual tooltips.
|
||
|
||
- [x] **Phase 5: Tech Debt** - Fix all deferred v1.0 issues (scriptTargets filtering, Back button, registry-driven UI, dead export, test warnings) (completed 2026-03-30)
|
||
- [x] **Phase 6: New Backends** - Add OneDrive, SFTP, Google Cloud Storage, and Backblaze B2 to the backend registry and wizard (completed 2026-03-31)
|
||
- [ ] **Phase 7: Validation & UX Polish** - Add field-level format validation and contextual tooltips across all backends
|
||
|
||
## Phase Details
|
||
|
||
### Phase 5: Tech Debt
|
||
**Goal**: The wizard behaves consistently and the codebase is clean — no visual noise from deselected script targets, ReviewStep has a Back button, BackendSelectionStep is driven by the registry, and dead code is removed
|
||
**Depends on**: Phase 4 (v1.0 complete)
|
||
**Requirements**: TECH-01, TECH-02, TECH-03, TECH-04, TECH-05
|
||
**Success Criteria** (what must be TRUE):
|
||
1. User who deselected RMM in DeploymentStep sees only the Intune output block in ReviewStep (and vice versa)
|
||
2. User can click a Back button on ReviewStep to return to DeploymentStep without losing any form data
|
||
3. Adding a new entry to BACKEND_REGISTRY automatically surfaces that backend in the BackendSelectionStep UI with no other code changes
|
||
4. BackendSelectionStep test suite runs with zero `act()` warnings in the Vitest output
|
||
5. `BackendFormValues<T>` export is absent from `src/schemas/index.ts` and no TypeScript errors arise
|
||
**Plans**: 4 plans
|
||
|
||
Plans:
|
||
- [ ] 05-00-PLAN.md — Wave 0 TDD stubs: ReviewStep filtering + Back button failing tests, registry.test.ts .fields prep
|
||
- [ ] 05-01-PLAN.md — Registry enrichment (TECH-03) + consumers update + dead export removal (TECH-04)
|
||
- [ ] 05-02-PLAN.md — ReviewStep scriptTargets filtering + Back button (TECH-01, TECH-02)
|
||
- [ ] 05-03-PLAN.md — act() warnings fix: userEvent migration + vi.useFakeTimers (TECH-05)
|
||
|
||
### Phase 6: New Backends
|
||
**Goal**: IT pros can configure OneDrive, SFTP, Google Cloud Storage, and Backblaze B2 remotes through the same wizard flow, with appropriate guidance for OAuth-based and key-based auth methods
|
||
**Depends on**: Phase 5
|
||
**Requirements**: BACK-01, BACK-02, BACK-03, BACK-04
|
||
**Success Criteria** (what must be TRUE):
|
||
1. User can select OneDrive as a backend, paste a pre-obtained rclone OAuth token, and generate a valid rclone.conf containing `[type = onedrive]` with the token field
|
||
2. User can select SFTP as a backend, choose between password and private-key authentication, fill the appropriate fields, and generate a valid rclone.conf
|
||
3. User can select Google Cloud Storage as a backend, fill in the required fields, and generate a valid rclone.conf containing `[type = google cloud storage]`
|
||
4. User can select Backblaze B2 as a backend, enter their application key credentials, and generate a valid rclone.conf containing `[type = b2]`
|
||
5. All four new backends appear in the BackendSelectionStep list and each produces a downloadable config+scripts bundle
|
||
**Plans**: 4 plans
|
||
|
||
Plans:
|
||
- [ ] 06-00-PLAN.md — Wave 0 TDD stubs: failing tests for all four new backends across registry, rclone-conf, and RemoteConfigStep
|
||
- [ ] 06-01-PLAN.md — Registry + schema + RCLONE_TYPE_MAP for OneDrive, GCS, Backblaze B2
|
||
- [ ] 06-02-PLAN.md — Registry + schema + RCLONE_TYPE_MAP for SFTP + SftpAuthToggle component
|
||
- [ ] 06-03-PLAN.md — Wire all four backends into RemoteConfigStep + human verification
|
||
|
||
### Phase 7: Validation & UX Polish
|
||
**Goal**: Users receive immediate inline feedback when they enter incorrectly formatted values, and can access plain-language explanations on confusing credential fields without leaving the wizard
|
||
**Depends on**: Phase 6
|
||
**Requirements**: VALID-01, UX-01
|
||
**Success Criteria** (what must be TRUE):
|
||
1. User who enters an Azure storage account name shorter than 3 characters or containing uppercase letters sees an inline error message before they can advance
|
||
2. User who enters an S3 region in an invalid format (e.g., spaces or uppercase) sees an inline error message
|
||
3. User can hover or click a tooltip icon on sensitive fields (SAS token, access key, SFTP auth method, OneDrive token) and read a plain-language explanation without navigating away
|
||
4. Tooltip content accurately distinguishes SAS token from storage account key in the Azure backend form
|
||
**Plans**: 3 plans
|
||
|
||
Plans:
|
||
- [ ] 07-00-PLAN.md — Wave 0 TDD stubs: failing tests for VALID-01 regex rejection/acceptance and UX-01 tooltip toggle
|
||
- [ ] 07-01-PLAN.md — VALID-01: FieldDef validate extension + buildZodSchema regex chaining for 3 fields
|
||
- [ ] 07-02-PLAN.md — UX-01: tooltipText in registry + FieldRenderer/PasswordField ⓘ toggle + AzureAuthToggle/SftpAuthToggle wiring + human verification
|
||
|
||
## Progress
|
||
|
||
| Phase | Milestone | Plans Complete | Status | Completed |
|
||
|-------|-----------|----------------|--------|-----------|
|
||
| 1. Foundation | v1.0 | 4/4 | Complete | 2026-03-26 |
|
||
| 2. Generators | v1.0 | 4/4 | Complete | 2026-03-26 |
|
||
| 3. Wizard UI | v1.0 | 5/5 | Complete | 2026-03-27 |
|
||
| 4. Review, Download & Security | v1.0 | 5/5 | Complete | 2026-03-27 |
|
||
| 5. Tech Debt | 4/4 | Complete | 2026-03-30 | - |
|
||
| 6. New Backends | 4/4 | Complete | 2026-03-31 | - |
|
||
| 7. Validation & UX Polish | 1/3 | In Progress| | - |
|