From c75ed3dc25e4c7ddca05680e1e1f50ea729a35f0 Mon Sep 17 00:00:00 2001 From: saravanakumardb1 Date: Fri, 22 May 2026 15:08:42 -0700 Subject: [PATCH] docs(sprint-a): record build restoration and refreshed sprint plan - Commit previously untracked docs/NEXT_SPRINT_ROADMAP.md with refreshed May 22 status; mark Sprint 1 (backend build) and Sprint 2 (lint) as resolved by Sprint A workspace-path fix - Add post-Sprint-A re-verification section to docs/PRODUCTION_READINESS_HANDOFF_ROADMAP.md documenting the workspace-path regression and the re-verified gates - Update README quick-start to reference the canonical common-platform checkout path with BYTELYST_COMMON_PLAT_ROOT override note --- README.md | 2 +- docs/NEXT_SPRINT_ROADMAP.md | 209 +++++++++++++++++++ docs/PRODUCTION_READINESS_HANDOFF_ROADMAP.md | 11 + 3 files changed, 221 insertions(+), 1 deletion(-) create mode 100644 docs/NEXT_SPRINT_ROADMAP.md diff --git a/README.md b/README.md index 6da10a6..c576e65 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ Structured notes platform for humans and AI agents — part of the ByteLyst ecos Prerequisites: - pnpm 10.6.5 -- sibling common-platform checkout at `../learning_ai/learning_ai_common_plat` +- sibling common-platform checkout at `../learning_ai_common_plat` (override with `BYTELYST_COMMON_PLAT_ROOT` if your layout differs) - optional local ByteLyst services from common platform: - `platform-service` on port 4003 for auth, flags, telemetry, diagnostics, billing, and blob - `extraction-service` on port 4005 for URL/task extraction diff --git a/docs/NEXT_SPRINT_ROADMAP.md b/docs/NEXT_SPRINT_ROADMAP.md new file mode 100644 index 0000000..3f91b3c --- /dev/null +++ b/docs/NEXT_SPRINT_ROADMAP.md @@ -0,0 +1,209 @@ +# NoteLett — Next Sprint Roadmap + +> **Date:** May 22, 2026 (refreshed) +> **Last verified commit:** Sprint A workspace-path fix (pending) — `pnpm run verify` passes end-to-end (backend 373/373, web 96/96, mobile 97/97). +> **Context:** Core product (Phases 0–4) is complete. UI/UX migration (UI0–UI4) is done. Sprint A restored the green build after the May 12 Docker/UI regression. Remaining work is UI5–UI8 migration plus production-hardening. + +--- + +## Current State + +### Product Phases + +| Phase | Status | Summary | +|-------|--------|---------| +| **Phase 0** | ✅ Complete | Foundations, identity, repo structure | +| **Phase 1** | ✅ Complete | Core skeleton — web, backend, mobile auth + CRUD | +| **Phase 2** | ✅ Complete | Notes MVP — relationships, tasks, artifacts, agent actions | +| **Phase 3** | ✅ Complete | Agentic layer — 8 MCP tools, approval/audit, extraction | +| **Phase 4** | ✅ Complete | Search + knowledge — saved views, Palace, RAG scoping | +| **Phase 5** | ✅ Re-verified | Production readiness — `pnpm run verify` green after Sprint A workspace-path repair | + +### UI/UX Migration + +| Phase | Status | Summary | +|-------|--------|---------| +| **UI0** | ✅ Complete | Baseline audit + rules | +| **UI1** | ✅ Complete | Common-platform core UI hardened | +| **UI2** | ✅ Complete | NoteLett UI adapter expanded | +| **UI3** | ✅ Complete | Review UX migrated to platform primitives | +| **UI4** | ✅ Complete | App shell + navigation migrated | +| **UI5** | ❌ Not started | Forms, modals, settings | +| **UI6** | ❌ Not started | Search, workspaces, dashboard | +| **UI7** | ❌ Not started | Notes, Smart Actions, Palace | +| **UI8** | ❌ Not started | Remove legacy globals | + +### Production Readiness (refreshed May 22, 2026 after Sprint A) + +| Check | Status | +|-------|--------| +| Backend typecheck | ✅ Pass | +| Backend build | ✅ Pass | +| Backend tests | ✅ 373/373 pass (54 files) | +| Backend lint | ✅ 0 errors, 14 warnings | +| Web typecheck | ✅ Pass | +| Web build | ✅ Pass | +| Web tests | ✅ 96/96 pass (22 files) | +| Web lint | ✅ 0 errors, 23 warnings (React-compiler advisories) | +| Mobile typecheck | ✅ Pass | +| Mobile tests | ✅ 97/97 pass (25 files) | +| Mobile lint | ✅ 0 errors, 30 warnings | +| Release-guard audit | ✅ Secret scan + color/token audit pass | +| Docker compose smoke | ⏸ Deferred — no Docker runtime on this host | +| Shared-service live smoke | ⏸ Deferred — needs running platform-service/extraction-service/mcp-server + Cosmos creds | + +### Sprint A (May 22, 2026) — Build Restoration + +Sprint A resolved the May 12 regression. Root cause: `pnpm-workspace.yaml` referenced a sibling path (`../learning_ai/learning_ai_common_plat/...`) that did not exist on dev/CI hosts. `.pnpmfile.cjs` fell back to `../learning_ai_common_plat` for some packages but missed others, so `@bytelyst/ui` came from a stale Gitea 0.1.0 tarball with no exports (breaking web typecheck + 26 tests) and `@bytelyst/monitoring` failed to install entirely (breaking backend typecheck + 2 test suites). + +Fix: +- `pnpm-workspace.yaml` now references `../learning_ai_common_plat/packages/*` directly. +- `.pnpmfile.cjs` swaps `DEFAULT_COMMON_PLAT_ROOT` and `LEGACY_COMMON_PLAT_ROOT` so the canonical path is the default and the older nested path is the fallback. +- Clean reinstall regenerated `pnpm-lock.yaml` with `@bytelyst/ui@0.1.9` and `@bytelyst/monitoring@0.1.5` linked to the local checkout. + +Verification: `pnpm run verify` end-to-end, plus backend/web/mobile lint and `pnpm run audit:release-guards`. + +--- + +## Sprint 1 — Fix Backend Build ✅ Resolved by Sprint A + +Original failure was misattributed to Palace/LLM API drift. Actual cause was workspace-path drift causing `@bytelyst/monitoring` to be missing from `backend/node_modules`. Once the workspace path was corrected, backend typecheck, build, lint, and all 373 tests pass without code changes to the Palace/LLM modules. + +--- + +## Sprint 2 — Fix Web + Mobile Lint ✅ Resolved by Sprint A + +Web lint now exits 0 (23 advisory warnings retained). Mobile lint exits 0 (30 advisory warnings retained). `@bytelyst/billing-client` resolves correctly once the workspace path is canonical. Driving remaining advisory warnings to zero is tracked under Sprint 6 / Q1 tech-debt. + +--- + +## Sprint 3 — UI5: Forms, Modals, Settings (~2 days) + +> **Why next:** Highest-value remaining UI migration. Auth/settings flows are user-facing and currently use raw HTML elements. + +### 3.1 — Auth Forms + +- [ ] Migrate login/register/forgot-password to common `Input`, `Label`, `Button`, `Card` +- [ ] Ensure accessibility labels on all form elements + +### 3.2 — Settings Forms + +- [ ] Migrate settings forms to `Field`, `Input`, `Textarea`, `Select`, `Switch`, `ConfirmDialog` +- [ ] Use common-platform form primitives from `@bytelyst/ui` + +### 3.3 — Create/Link/Share Modals + +- [ ] Migrate `CreateNoteModal`, `LinkNoteModal`, `ShareDialog` to common `Modal` + form primitives +- [ ] Action bars and button groups via platform components + +### Exit Criteria + +- [ ] All auth/settings/modal screens use platform UI primitives +- [ ] No raw `