From 45b16d9a710a194bcee21f151333d9e2d2f55c87 Mon Sep 17 00:00:00 2001 From: Saravana Achu Mac Date: Tue, 5 May 2026 01:29:28 -0700 Subject: [PATCH] docs(roadmap): inventory baseline failures --- docs/PRODUCTION_READINESS_HANDOFF_ROADMAP.md | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/docs/PRODUCTION_READINESS_HANDOFF_ROADMAP.md b/docs/PRODUCTION_READINESS_HANDOFF_ROADMAP.md index 93c0a24..437182b 100644 --- a/docs/PRODUCTION_READINESS_HANDOFF_ROADMAP.md +++ b/docs/PRODUCTION_READINESS_HANDOFF_ROADMAP.md @@ -83,7 +83,20 @@ Goal: establish a trustworthy starting point and avoid implementing against stal - [x] **P0.2** Run `pnpm install --frozen-lockfile` if dependencies are not installed. Commit: `282bb8d`; Verified: repaired stale common-platform workspace path from `../learning_ai_common_plat/packages/*` to `../learning_ai/learning_ai_common_plat/packages/*`, refreshed `pnpm-lock.yaml` against the local common-platform checkout, then `GITEA_NPM_TOKEN=dummy pnpm install --frozen-lockfile` passed. Notes: pnpm reported existing peer/build-script warnings for common-platform Azure Cosmos/Expo packages; these are baseline observations for later hardening. - [x] **P0.3** Run baseline checks: `pnpm run typecheck`, `pnpm run test`, and `pnpm run build`. Commit: `5c02ce4`; Verified: all three commands were run. Result: baseline failure. `pnpm run typecheck` and `pnpm run build` fail in `@notelett/backend` TypeScript compilation; `pnpm run test` runs 30 backend files and 171 tests successfully, then fails 12 backend suites during collection. Primary failure family: NoteLett Palace/embedding/prompt code is out of sync with the local `learning_ai_common_plat` `@bytelyst/palace` and `@bytelyst/llm` package APIs. Full failure inventory is tracked in P0.5 before fixes. - [x] **P0.4** Run targeted lint checks: `pnpm --filter @notelett/backend run lint`, `pnpm --filter @notelett/web run lint`, and `pnpm --filter @notelett/mobile run lint`. Commit: `b469d16`; Verified: all three lint commands were run independently. Result: baseline failure. Backend lint fails before analysis because `backend/eslint.config.js` cannot resolve `@eslint/js`; web lint reports 16 errors and 4 warnings, mostly React compiler rules (`react-hooks/set-state-in-effect`, `react-hooks/refs`, `react-hooks/immutability`) plus unused-symbol warnings; mobile lint reports 1 error (`import/no-unresolved` for `@bytelyst/billing-client`) and 16 warnings. -- [ ] **P0.5** Record any baseline failures in this document before fixing them. Commit: +- [x] **P0.5** Record any baseline failures in this document before fixing them. Commit: `pending`; Verified: baseline failures from P0.2-P0.4 are recorded below before any production-readiness fixes were attempted. + +Baseline failure inventory from May 5, 2026: + +| Failure | Evidence | Owner task | +| --- | --- | --- | +| Dependency install depended on stale local registry behavior before repair | Initial `pnpm install --frozen-lockfile` failed with `ECONNREFUSED` for `http://localhost:3300/api/packages/bytelyst/npm/...`; P0.2 repaired the stale common-platform workspace path and refreshed the lockfile. | P2.2/P8.5 should document and automate local common-platform package resolution and registry expectations. | +| Root typecheck fails in backend | `pnpm run typecheck` stops in `@notelett/backend`; errors include missing/changed `@bytelyst/palace` entry/types, removed or changed `@bytelyst/llm` helpers (`embed`, `buildVisionMessage`, `hasVisionContent`), and NoteLett Palace domain types drifting from common-platform package types. | P2.7/P5.4 should align backend AI/Palace integration with current common-platform APIs and add regression tests. | +| Root tests fail during backend collection | `pnpm run test` passes 30 backend files and 171 tests, then fails 12 backend suites because Vite cannot resolve `@bytelyst/palace` from Palace/embedding/prompt modules. | P2.7/P5.4 should restore package entry resolution and test coverage for Palace, embeddings, prompts, MCP, and scheduler paths. | +| Root build fails in backend | `pnpm run build` fails with the same TypeScript errors as typecheck before web build runs. | P2.7/P5.4 should be complete before final P10 verification. | +| Backend lint cannot start | `pnpm --filter @notelett/backend run lint` fails because `backend/eslint.config.js` cannot resolve `@eslint/js`. | P8.1/P8.5 should normalize lint dependencies and CI lint coverage. | +| Web lint fails | `pnpm --filter @notelett/web run lint` reports 16 errors and 4 warnings, primarily React compiler lint rules around synchronous effect state updates/ref writes plus several unused symbols. | P4.3/P6.3 should fix interactive/client robustness while preserving behavior. | +| Mobile lint fails | `pnpm --filter @notelett/mobile run lint` reports 1 unresolved import error for `@bytelyst/billing-client` and 16 warnings. | P2.5/P7.4/P8.1 should align shared mobile clients and lint coverage. | +| Baseline install warnings remain | Frozen install now passes, but pnpm reports common-platform Azure Cosmos peer warnings, Expo/React Native peer warnings, and ignored build scripts for `esbuild`, `sharp`, and `unrs-resolver`. | P2.2/P8.6 should document or resolve dependency health expectations. | Acceptance criteria: - The next implementer knows exactly what passed before production-readiness edits began.