docs(architecture): tighten review and roadmap consistency

This commit is contained in:
saravanakumardb1 2026-03-10 11:33:58 -07:00
parent 9ddb826338
commit 1b81489ecd
6 changed files with 113 additions and 37 deletions

View File

@ -37,6 +37,17 @@ When making implementation decisions, prefer this ordering:
- **DRY discipline:** Partial - **DRY discipline:** Partial
- **Readiness for multi-agent parallel work:** Moderate, but currently too dependent on scaffolds - **Readiness for multi-agent parallel work:** Moderate, but currently too dependent on scaffolds
# 0.2 What This Document Does Not Claim
This document does **not** claim that:
- web and mobile are already fully integrated with the product backend
- shared services are already production-verified for this repo
- DTO contracts are already unified across all surfaces
- the current roadmap set is a substitute for implementation verification
It is a corrective architecture review and execution guide, not a claim of completion.
# 1. Executive Summary # 1. Executive Summary
This repo is on the right architectural path, but it is not yet fully aligned with the original plan or the ByteLyst workspace best practices. This repo is on the right architectural path, but it is not yet fully aligned with the original plan or the ByteLyst workspace best practices.
@ -557,6 +568,15 @@ The phases below should be executed in order because later cleanup depends on ea
- Phase E can run in parallel with late Phase C / Phase D once contracts stabilize - Phase E can run in parallel with late Phase C / Phase D once contracts stabilize
- Phase F should harden the final architecture rather than leading it - Phase F should harden the final architecture rather than leading it
## Cross-Workstream Dependency Rule
To avoid duplicate work or rework:
- backend contract decisions should precede broad web/mobile contract cleanup
- identity/config cleanup should precede auth, telemetry, diagnostics, and storage work
- shared-service wiring decisions should precede large UI polish efforts that depend on those services
- any proposal to move code into `learning_ai_common_plat` should include evidence that at least one other product repo can reuse it
## Phase A — Identity and Config Consolidation ## Phase A — Identity and Config Consolidation
### Goal ### Goal

View File

@ -21,6 +21,19 @@ This roadmap tracks the execution work required to bring `learning_ai_notes` int
- [ ] platform concerns come from shared `@bytelyst/*` packages or shared services where appropriate - [ ] platform concerns come from shared `@bytelyst/*` packages or shared services where appropriate
- [ ] product-specific notes logic remains local to this repo - [ ] product-specific notes logic remains local to this repo
# Baseline Already Confirmed
- [x] Repo shape follows the expected product-repo layout (`backend/`, `web/`, `mobile/`, `docs/`, `shared/`)
- [x] Product-specific backend modules are local to this repo rather than pushed into `platform-service`
- [x] The repo already consumes multiple `@bytelyst/*` packages across surfaces
# Dependency Notes
- [ ] Complete R0 before broad auth/storage/telemetry changes
- [ ] Complete R1 before calling web/mobile runtime alignment complete
- [ ] Use backend contract decisions as the source of truth for R2 contract cleanup
- [ ] Use the platform/shared-services roadmap for cross-cutting service wiring decisions
# Phase R0 — Identity and Boundary Lock # Phase R0 — Identity and Boundary Lock
- [ ] Confirm `shared/product.json` is the canonical product identity source - [ ] Confirm `shared/product.json` is the canonical product identity source
@ -71,6 +84,7 @@ This roadmap tracks the execution work required to bring `learning_ai_notes` int
- [ ] route-level mock data sources - [ ] route-level mock data sources
- [ ] DTO contract definitions - [ ] DTO contract definitions
- [ ] platform integration wiring - [ ] platform integration wiring
- [ ] roadmap truth-alignment versus implementation reality
# Done When # Done When

View File

@ -10,23 +10,29 @@ Keep the backend strongly product-specific for notes domain logic while maximizi
# Preserve As Product-Local # Preserve As Product-Local
- [ ] `notes` module remains local - [x] `notes` module remains local
- [ ] `workspaces` module remains local - [x] `workspaces` module remains local
- [ ] `note-relationships` module remains local - [x] `note-relationships` module remains local
- [ ] `note-tasks` module remains local - [x] `note-tasks` module remains local
- [ ] `note-artifacts` module remains local - [x] `note-artifacts` module remains local
- [ ] `note-agent-actions` module remains local - [x] `note-agent-actions` module remains local
# Shared Package Alignment # Shared Package Alignment
- [ ] Continue using `@bytelyst/auth` - [x] Continue using `@bytelyst/auth`
- [ ] Continue using `@bytelyst/config` - [x] Continue using `@bytelyst/config`
- [ ] Continue using `@bytelyst/cosmos` - [x] Continue using `@bytelyst/cosmos`
- [ ] Continue using `@bytelyst/datastore` - [x] Continue using `@bytelyst/datastore`
- [ ] Continue using `@bytelyst/errors` - [x] Continue using `@bytelyst/errors`
- [ ] Continue using `@bytelyst/fastify-core` - [x] Continue using `@bytelyst/fastify-core`
- [ ] Continue using `@bytelyst/logger` - [x] Continue using `@bytelyst/logger`
- [ ] Continue using `@bytelyst/testing` - [x] Continue using `@bytelyst/testing`
# Dependency Notes
- [ ] Finalize backend contract decisions before broad web/mobile DTO cleanup
- [ ] Use this roadmap to define what must stay local before proposing any common-plat extraction
- [ ] Coordinate blob/extraction/MCP decisions with the platform/shared-services roadmap
# Phase B0 — Identity and Config Alignment # Phase B0 — Identity and Config Alignment
@ -58,11 +64,11 @@ Keep the backend strongly product-specific for notes domain logic while maximizi
- [ ] Review request tracing and error behavior against workspace standards - [ ] Review request tracing and error behavior against workspace standards
- [ ] Replace raw stdout/stderr startup output with shared logger patterns if practical - [ ] Replace raw stdout/stderr startup output with shared logger patterns if practical
# Non-Goals # Guardrails
- [ ] Do not move notes-specific modules into `platform-service` - Do not move notes-specific modules into `platform-service`
- [ ] Do not create shared abstractions that only benefit this one product - Do not create shared abstractions that only benefit this one product
- [ ] Do not over-generalize the notes domain into common platform prematurely - Do not over-generalize the notes domain into common platform prematurely
# Done When # Done When

View File

@ -8,6 +8,12 @@ Scope: `web/`
Make the web app the strongest notes authoring/operator surface while ensuring that shared platform concerns come from common ByteLyst packages and services rather than repo-local duplication or long-term scaffold behavior. Make the web app the strongest notes authoring/operator surface while ensuring that shared platform concerns come from common ByteLyst packages and services rather than repo-local duplication or long-term scaffold behavior.
# Baseline Already Confirmed
- [x] `web/` follows the intended web-app direction for this product repo
- [x] `web/package.json` already consumes several shared `@bytelyst/*` packages
- [x] shared design-token usage is already part of the current web architecture
# Phase W0 — Identity and Config Alignment # Phase W0 — Identity and Config Alignment
- [ ] Align `web/src/lib/product-config.ts` with `shared/product.json` - [ ] Align `web/src/lib/product-config.ts` with `shared/product.json`
@ -18,12 +24,18 @@ Make the web app the strongest notes authoring/operator surface while ensuring t
# Phase W1 — Auth and Platform Reuse # Phase W1 — Auth and Platform Reuse
- [ ] Keep `@bytelyst/react-auth` as the auth provider foundation - [x] Keep `@bytelyst/react-auth` as the auth provider foundation
- [ ] Keep `@bytelyst/platform-client` as the platform-service client foundation - [x] Keep `@bytelyst/platform-client` as the platform-service client foundation
- [ ] Keep `@bytelyst/telemetry-client` as telemetry foundation - [x] Keep `@bytelyst/telemetry-client` as telemetry foundation
- [ ] Keep `@bytelyst/diagnostics-client` as diagnostics foundation - [x] Keep `@bytelyst/diagnostics-client` as diagnostics foundation
- [ ] Remove demo-first auth behavior once real auth integration is stable - [ ] Remove demo-first auth behavior once real auth integration is stable
# Dependency Notes
- [ ] Complete W0 before removing demo-first auth behavior
- [ ] Use backend route contracts as the source of truth for W2 and W4
- [ ] Coordinate shared component reuse decisions with the platform/shared-services roadmap
# Phase W2 — Replace Runtime Mock Paths # Phase W2 — Replace Runtime Mock Paths
- [ ] Replace dashboard runtime mock data with backend-backed data - [ ] Replace dashboard runtime mock data with backend-backed data

View File

@ -8,6 +8,12 @@ Scope: `mobile/`
Make the React Native / Expo MVP follow the ByteLyst reuse-first path more strictly by removing temporary local wrapper code and relying on shared clients and shared platform capabilities wherever available. Make the React Native / Expo MVP follow the ByteLyst reuse-first path more strictly by removing temporary local wrapper code and relying on shared clients and shared platform capabilities wherever available.
# Baseline Already Confirmed
- [x] mobile follows the intended Expo / React Native MVP path
- [x] `mobile/package.json` already consumes multiple shared `@bytelyst/*` packages
- [x] `@bytelyst/offline-queue` is already part of the current mobile direction
# Phase M0 — Identity and Config Alignment # Phase M0 — Identity and Config Alignment
- [ ] Align mobile config with `shared/product.json` - [ ] Align mobile config with `shared/product.json`
@ -17,12 +23,19 @@ Make the React Native / Expo MVP follow the ByteLyst reuse-first path more stric
# Phase M1 — Shared Client and SDK Alignment # Phase M1 — Shared Client and SDK Alignment
- [ ] Keep `@bytelyst/auth-client` as auth foundation - [x] Keep `@bytelyst/auth-client` as auth foundation
- [ ] Keep `@bytelyst/api-client` as product-backend client foundation - [x] Keep `@bytelyst/api-client` as product-backend client foundation
- [ ] Keep `@bytelyst/platform-client` as platform-service client foundation - [x] Keep `@bytelyst/platform-client` as platform-service client foundation
- [ ] Keep `@bytelyst/offline-queue` as queue foundation - [x] Keep `@bytelyst/offline-queue` as queue foundation
- [ ] Evaluate actual runtime adoption path for `@bytelyst/react-native-platform-sdk` - [ ] Evaluate actual runtime adoption path for `@bytelyst/react-native-platform-sdk`
# Dependency Notes
- [ ] Complete M0 before broad auth/storage cleanup
- [ ] Complete M2 before declaring mobile reuse alignment healthy
- [ ] Use backend contract decisions to drive M3 data-shape cleanup
- [ ] Coordinate telemetry/diagnostics/blob/extraction choices with the platform/shared-services roadmap
# Phase M2 — Remove Placeholder Local Wrappers # Phase M2 — Remove Placeholder Local Wrappers
- [ ] Delete or replace `mobile/src/lib/platform.ts` - [ ] Delete or replace `mobile/src/lib/platform.ts`

View File

@ -10,19 +10,30 @@ Ensure `learning_ai_notes` uses shared ByteLyst platform packages and shared ser
# Core Shared Inputs # Core Shared Inputs
- [ ] `platform-service` - [x] `platform-service`
- [ ] `extraction-service` - [x] `extraction-service`
- [ ] `mcp-server` - [x] `mcp-server`
- [ ] `@bytelyst/auth` - [x] `@bytelyst/auth`
- [ ] `@bytelyst/api-client` - [x] `@bytelyst/api-client`
- [ ] `@bytelyst/platform-client` - [x] `@bytelyst/platform-client`
- [ ] `@bytelyst/react-auth` - [x] `@bytelyst/react-auth`
- [ ] `@bytelyst/telemetry-client` - [x] `@bytelyst/telemetry-client`
- [ ] `@bytelyst/diagnostics-client` - [x] `@bytelyst/diagnostics-client`
- [ ] `@bytelyst/offline-queue` - [x] `@bytelyst/offline-queue`
- [ ] `@bytelyst/design-tokens` - [x] `@bytelyst/design-tokens`
- [ ] `@bytelyst/dashboard-components` - [ ] `@bytelyst/dashboard-components`
# Baseline Interpretation
- [x] Checked items above mean the dependency/service is already part of the intended architecture or current dependency graph
- [ ] Unchecked items above mean the dependency is expected but not yet confirmed as adopted in this repo
# Dependency Notes
- [ ] Identity alignment must precede telemetry/diagnostics/header verification
- [ ] Platform-service and extraction-service decisions should precede broad UI claims of readiness
- [ ] Shared package adoption should not be described as complete until runtime wiring is verified
# Phase P0 — Identity and Package Alignment # Phase P0 — Identity and Package Alignment
- [ ] Verify product identity is consistent across all shared-client usage - [ ] Verify product identity is consistent across all shared-client usage