saravanakumardb1
81609e9358
fix: remove stale port references from monitoring, docs, and AI.dev skills
2026-02-14 21:48:21 -08:00
saravanakumardb1
d436f77be4
refactor: update CI matrix and docker-compose for consolidated services
2026-02-14 21:42:24 -08:00
saravanakumardb1
ea54437c1c
refactor: remove growth/billing/tracker from common-plat docker-compose, update Traefik labels
2026-02-14 21:40:09 -08:00
saravanakumardb1
1ba8d6950a
docs: mark Phase 3 complete in consolidation roadmap
2026-02-14 21:34:58 -08:00
saravanakumardb1
29fc8124e4
refactor: merge tracker-service into platform-service
...
Phase 3 of service consolidation (5→2 services).
Moved modules:
- items (16 tests)
- comments (6 tests)
- votes (5 tests)
- public (16 tests) — rate-limited, no auth required
Changes:
- Copied 4 modules from tracker-service
- Added DEFAULT_PRODUCT_ID alias in product-config.ts (Gap 1)
- Created src/lib/auth.ts re-exporting extractAuth from @bytelyst/auth (Gap 2)
- Added @bytelyst/auth and @fastify/rate-limit to package.json (Gap 2)
- Registered itemRoutes, commentRoutes, voteRoutes, publicRoutes in server.ts
- Public routes at top level (no auth scope)
- Removed tracker-service directory
Tests: 158 passing (115 + 43 from tracker = 158) ✅
Build: clean ✅
Service consolidation Phases 1-3 complete:
- growth-service: merged ✅
- billing-service: merged ✅
- tracker-service: merged ✅
Remaining: 2 services (platform-service + extraction-service)
2026-02-14 21:34:21 -08:00
saravanakumardb1
0933e931d4
docs: mark Phase 2 complete in consolidation roadmap
2026-02-14 21:31:49 -08:00
saravanakumardb1
f13c676139
refactor: merge billing-service into platform-service
...
Phase 2 of service consolidation (5→2 services).
Moved modules:
- subscriptions (9 tests)
- usage (7 tests)
- plans (9 tests)
- licenses (7 tests)
- stripe (0 tests — webhook signature verified at runtime)
Changes:
- Copied 5 modules + stripe.ts lib from billing-service
- Added billing env vars to config schema (Stripe, internal key, etc.)
- Scoped billing routes with internal key auth guard (Gap 3)
- When BILLING_INTERNAL_KEY is set, billing routes require x-internal-key header
- When unset, billing routes are open (dev mode)
- Stripe routes always outside scope (own webhook signature check)
- Removed billing-service directory
Tests: 115 passing (83 + 32 from billing = 115) ✅
Build: clean ✅
2026-02-14 21:31:04 -08:00
saravanakumardb1
a862c692ec
docs: mark Phase 1 complete in consolidation roadmap
2026-02-14 21:28:24 -08:00
saravanakumardb1
05008ee04f
refactor: merge growth-service into platform-service
...
Phase 1 of service consolidation (5→2 services).
Moved modules:
- invitations (12 tests)
- referrals (9 tests)
- promos (7 tests)
Changes:
- Copied 3 modules + webhooks.ts lib from growth-service
- Added stripe dep to platform-service package.json
- Added webhook env vars to config schema
- Registered invitationRoutes, referralRoutes, promoRoutes in server.ts
- Removed growth-service directory
Tests: 83 passing (was 55 + 28 from growth = 83) ✅
Build: clean ✅
2026-02-14 21:27:44 -08:00
saravanakumardb1
a710340163
docs: second review pass — 5 additional gaps found (13-17), total 17 gaps
...
- Gap 13: Growth tsconfig path alias (unused, safe)
- Gap 14: Docker Compose depends_on for tracker-dashboard
- Gap 15: Admin dashboard docs.ts service directory list
- Gap 16: MindLyst docs reference old services
- Gap 17: Old Dockerfiles need deletion
- Confirmed safe: Cosmos pattern, vitest, extraction-service, MindLyst web, pnpm-workspace
- Phase 4 expanded with new task items (4.8.3, 4.8.6, 4.12, 4.13, 4.15.6)
2026-02-14 21:22:42 -08:00
saravanakumardb1
9f6c12043c
docs: thorough review of service consolidation roadmap — 12 critical gaps identified
...
- Gap 1: Product ID naming inconsistency (tracker uses DEFAULT_PRODUCT_ID)
- Gap 2: Missing deps in platform-service (stripe, @bytelyst/auth, @fastify/rate-limit)
- Gap 3: Billing internal key auth must be scoped (not global hook)
- Gap 4-5: Growth webhooks lib + Stripe key config
- Gap 6: 17+ consumer files need URL updates across LysnrAI repo
- Gap 7: Ops status health check route references old ports
- Gap 8: Stripe webhook test hardcodes port 4002
- Gap 9-10: Load tests + Stripe docs reference old ports
- Gap 11: LysnrAI services/ env stubs need cleanup
- Gap 12: Mobile apps — no changes needed (confirmed)
- Route collision check: verified no conflicts
- Added Python client updates, Phase 0 baseline steps, pnpm install verification
2026-02-14 21:22:42 -08:00
saravanakumardb1
e4b55a0424
docs: add service consolidation roadmap, archive auth service design
...
- SERVICE_CONSOLIDATION_ROADMAP.md: plan to merge billing+growth+tracker into platform-service (5→2 services)
- AUTH_SERVICE_DESIGN.md: renamed with OUTDATED_CANCELED suffix, auth handled by platform-service
2026-02-14 21:22:42 -08:00
90041b6e7f
docs(workstreams): log docker prune
2026-02-14 21:04:08 -08:00
95b45a9fd3
fix(cosmos): init containers on startup for local compose
2026-02-14 20:57:17 -08:00
saravanakumardb1
db9b21c36d
chore: remove accidental :wq file
2026-02-14 20:51:54 -08:00
saravanakumardb1
b205049475
fix: remove push-to-main from backup script, remove push from commit-workspace
...
- backup-main.sh: no longer pushes unpushed main commits, removed Main Push column
- commit-workspace.sh: removed push_repo function, local commits only
- repo_commit-workspace.md: updated docs to reflect no-push behavior
2026-02-14 20:51:36 -08:00
saravanakumardb1
9b9f5ba0fd
chore: update project files
2026-02-14 20:48:39 -08:00
saravanakumardb1
fde10be75b
chore: add extraction-service to AGENTS.md, CI matrix, token pre-commit hook (7.9)
...
- AGENTS.md: extraction-service in layout, file ownership, deps, test table (211+ tests)
- ci.yml.disabled: extraction package + extraction-service added to matrix
- package.json: lint-staged rule to auto-generate tokens on bytelyst.tokens.json change
- ROADMAP.md: 252/278 (~91%), 7.9 done
2026-02-14 20:48:07 -08:00
8cd5f51389
docs: auth-service playbook
2026-02-14 20:39:37 -08:00
b044d3ee39
docs: note mindlyst ios memory store
2026-02-14 20:39:37 -08:00
3ac6de0595
ci(workflows): add reusable pnpm workflow
2026-02-14 19:50:44 -08:00
fd79131067
chore(release): add changesets
2026-02-14 19:49:08 -08:00
1e850bf232
docs(workstreams): update prereqs; mark extraction build
2026-02-14 19:47:13 -08:00
0240e7cbe0
Keep non-mobile checklist scoped; drop KMP item
2026-02-14 19:20:58 -08:00
9f96cdff2e
docs: link MindLyst iOS XcodeGen/TestFlight readiness commit
2026-02-14 18:59:39 -08:00
16bc06d84a
Add local health-check script; mark health verification
2026-02-14 18:59:01 -08:00
bbf91da48a
Fix compose up on clean Docker; update checklist
2026-02-14 18:53:55 -08:00
607fcbf3d7
fix(docker): make pnpm deploy work under pnpm v10
2026-02-14 18:30:00 -08:00
35b58f4cb1
docs: link MindLyst iOS Share Extension scaffold commit
2026-02-14 18:05:26 -08:00
ad5fda4144
docs: link MindLyst iOS Azure Speech scaffold commit
2026-02-14 18:04:18 -08:00
cf4cf16630
docs: link LysnrAI iOS sound feedback commit
2026-02-14 18:02:18 -08:00
9c64c983a5
docs: link MindLyst iOS deep link + widget scaffold commits
2026-02-14 17:56:51 -08:00
2d098610cf
docs: mark MindLyst iOS KMP compile verification
2026-02-14 17:54:42 -08:00
dc93d6cf83
docs: track iOS progress + link MindLyst voice capture commit
2026-02-14 17:31:35 -08:00
32f8f7ccf5
chore(docker): include new workspace packages in builds
2026-02-14 16:48:09 -08:00
e9b33fb518
feat(monitoring): add @bytelyst/monitoring package
2026-02-14 15:57:41 -08:00
125eb03745
feat(blob): add @bytelyst/blob shared package
2026-02-14 15:53:33 -08:00
dcfb774313
chore(tokens): auto-generate design tokens on commit
2026-02-14 15:46:20 -08:00
02eb686a8f
chore(deps): add Dependabot config
2026-02-14 15:45:37 -08:00
c4611d1ff5
docs(workstreams): add prereqs and execution order
2026-02-14 15:44:31 -08:00
5113b569a1
docs(workstreams): add remaining tasklists
2026-02-14 15:33:56 -08:00
saravanakumardb1
c5b7029348
chore(ci): add cross-repo CI trigger + update roadmap (5.18-5.23, 4.23)
...
- trigger-consumers.yml.disabled: dispatches common-platform-updated event
- Dashboard CI workflows now in LysnrAI repo (5.22)
- Service CI already in common-plat ci.yml.disabled (5.18-5.21 N/A)
- Roadmap updated: 251/278 items (~90%)
2026-02-14 14:25:43 -08:00
saravanakumardb1
ac17e99aca
docs(extraction): add completion status + deferred items table + verification summary
...
All 68 items checked. 5 deferred sub-tasks listed with action needed:
- 4.3: Docker build not yet run
- 4.11: CI disabled (billing)
- 5.4: Cosmos usage persistence (Phase 7)
- 6.2: Blob storage for visualizations
- 6.4: Webhook callback for async jobs
2026-02-14 14:12:00 -08:00
saravanakumardb1
7d2795165e
docs(extraction): update roadmap — all 68 items complete across Phases 0-6
...
All checkboxes marked with commit links across 3 repos:
- common_plat: c292bb5 , 0a87d19 , 6a49823 , bdd9bb1 , c9d5c0c , 37343ae , 0d0165e , 9c8a316 , b8c0a73 , 5c1744d
- voice_ai_agent: 944609a, f65e318, a36b956, 87822d5, 00a3617
- multimodal_memory_agents: b545244, da04d4e
2026-02-14 14:09:57 -08:00
saravanakumardb1
5c1744d3a4
feat(extraction): Phase 6 advanced features (6.1-6.8)
...
- 6.1-6.2: Entity visualization components (bar chart, pie chart, timeline) [in LysnrAI repo]
- 6.3-6.4: Async job queue — POST /extract/jobs, GET /extract/jobs/:id, GET /extract/jobs
- 6.5-6.6: Model registry with tier (standard/premium/free/mock) + GET /extract/models
- 6.7-6.8: Multi-language detection (es/fr/de/pt/ja/zh/ko/ar) + prompt enrichment
- ExtractMetadata.language field added to Python models
- 46 TS tests passing, build clean
2026-02-14 14:08:02 -08:00
saravanakumardb1
b8c0a73e89
feat(extraction): Phase 5 observability + error handling (5.7-5.12)
...
- 5.7: Enhanced structured logging with userId, productId, cacheHit, tokenCount
- 5.8: Metrics module (counters + histograms) + /extract/metrics endpoint
- 5.9: Grafana dashboard config for extraction-service (Loki queries)
- 5.10: Error mapping — sidecar errors → proper HTTP status codes (408, 429, 502, 503)
- 5.11: Circuit breaker for Python sidecar (5 failures → 30s OPEN)
- 5.12: Graceful degradation — circuit open returns 503, cached results still served
- 46 TS tests passing
2026-02-14 14:04:59 -08:00
saravanakumardb1
9c8a3169dc
feat(extraction): Phase 5 caching + cost controls (5.1-5.6)
...
- 5.1: Python sidecar LRU cache (cache.py) with configurable TTL + max size
- 5.2: Fastify-level cache with X-Extraction-Cache HIT/MISS header + /extract/cache-stats
- 5.3-5.5: Per-user daily quota (free=10, pro=100, enterprise=unlimited) with 429 response
- 5.6: GET /extract/usage endpoint for admin usage reporting
- Both Python + TS caches use sha256(taskId:modelId:text) keys
- 46 TS tests + 29 Python tests still passing
2026-02-14 14:02:21 -08:00
saravanakumardb1
0d0165e950
ci(extraction): add CI workflow for extraction-service (TS + Python)
...
- TypeScript job: pnpm build, vitest, tsc --noEmit
- Python job: ruff lint, pytest
- Triggers on services/extraction-service/** and packages/extraction/**
2026-02-14 13:59:29 -08:00
saravanakumardb1
37343ae57b
feat(extraction): add Dockerfile + supervisord for extraction-service
...
- Multi-stage: Node.js build + Python sidecar + supervisord runtime
- Stage 1: pnpm workspace build for Fastify TS service
- Stage 2: pip install langextract + FastAPI deps
- Stage 3: node:22-alpine + python3 + supervisord
- supervisord manages both Fastify (4005) and uvicorn (4006)
2026-02-14 13:57:41 -08:00
saravanakumardb1
c2d626c7b5
chore(extraction): add Python .gitignore, remove cached .pyc files
2026-02-14 13:49:39 -08:00