saravanakumardb1
6fdb01e281
docs: principal review — master gap table, fix §4.5 count, add Productivity Web, font/CI/a11y gaps
2026-03-27 15:31:04 -07:00
saravanakumardb1
8b51ae5b54
docs: principal review — design system maturity model, best practices, architecture blueprint, remediation plan
2026-03-27 15:14:15 -07:00
saravanakumardb1
8cc4118633
docs: add comprehensive design system & UI/UX audit report
2026-03-27 14:57:59 -07:00
saravanakumardb1
91afa48d29
docs(platform): mark all P2+P3 components as BUILT (25/25 complete)
2026-03-27 11:39:39 -07:00
saravanakumardb1
c1543e24fe
docs(audits): mobile app readiness audit + companion targets implementation prompt
2026-03-27 08:19:32 -07:00
saravanakumardb1
fc12a8eaa2
feat(devops): add Local LLM Lab to ecosystem deployment
...
- docker-compose.ecosystem.yml: add llmlab-dashboard service (port 3075)
- setup.sh: add learning_ai_local_llms as 12th repo
- README.md: update to 31 services, 11 products, add Docker vs K8s recommendation
- docker/README.md: update port map, phase descriptions
- prompt.md: update repo list and service counts
2026-03-27 00:10:40 -07:00
saravanakumardb1
70fdc6b279
feat(devops): add Gitea CI (act_runner) to Azure VM setup
...
- Phase 2: install act_runner binary, register with Gitea, create systemd service
- Phase 3: push all 11 repos to VM Gitea after cloning from GitHub
- Expanded Gitea API token scopes (write:repository, write:user)
- Runner config: host mode, capacity 2, GITEA_NPM_TOKEN injected
- Enables CI on the VM for NETWORK!=corp usage
2026-03-26 23:19:37 -07:00
saravanakumardb1
aa139d5021
feat(ci): add auto-publish job for @bytelyst/* packages + update migration doc
...
- Add publish-packages job to CI workflow (runs after build-and-test)
- Publish 13 remaining packages to Gitea (56 total, up from 43)
- Update act_runner token to read+write scope
- Fix package counts throughout migration doc (43 → 56)
- Update CI status: all 10/10 repos now have CI workflows
- Add package inventory section (§15.1)
2026-03-26 23:18:05 -07:00
saravanakumardb1
5ba9518722
docs: update Gitea registry docs for NETWORK-aware GITEA_NPM_HOST
...
- GITEA_NPM_REGISTRY_MIGRATION.md: update .npmrc examples, add home
row to network topology table, note switch-network.sh sets the host
- SINGLE_VM_DEPLOYMENT.md: consolidate .npmrc example to show unified
${GITEA_NPM_HOST}:3300 pattern (host-side + Docker-side)
- GITEA_LOCAL_CI.md: add NPM registry host note to Key Settings
2026-03-24 15:57:20 -07:00
saravanakumardb1
32522b218a
fix(k8s): setup-k8s.sh — fail phase 3 on build errors, fix non-root crash
...
- Phase 3 now exits with error if any image builds fail, preventing
mark_phase_done from running. Previously it just warned and continued,
which could lead to phase 5 deploying with missing images.
- Moved mkdir from top-level scope into mark_phase_done(). The old
top-level mkdir -p /opt/bytelyst/.setup-state-k8s crashed non-root
invocations (--status, --help) due to set -e + permission denied.
- Fixed header comment: 'containerd' → 'Docker runtime' (we use --docker).
- Added --resume to header usage block (was supported but undocumented).
2026-03-24 14:52:53 -07:00
saravanakumardb1
a25d6f7847
fix(k8s): remove YAML anchors that break across document separators
...
YAML anchors (&name/*name) are scoped per document. In multi-document
files (separated by ---), anchors defined in one document cannot be
referenced from another. This caused all backends/webs after the first
to fail kubectl apply with unknown alias errors.
Fixed by inlining envFrom, resources, and labels in every Deployment.
2026-03-24 14:51:48 -07:00
saravanakumardb1
8a568932b4
feat(infra): add production-grade k3s Kubernetes setup for single VM
...
Complete K8s deployment alternative to Docker Compose, targeting
~50 beta users on a Standard_D8s_v5 Azure VM (8 vCPU, 32 GB RAM).
setup-k8s.sh (6 phases):
1. Pre-flight: verify docker phases 1-5 ran, disk/RAM checks
2. Install k3s: Docker runtime, NodePort range 1024-32767
3. Build images: docker compose build + tag as bytelyst/<svc>
4. Config: namespaces, ConfigMap (3 copies), Secrets (JWT + blob keys), Ollama
5. Deploy: infra -> platform -> dashboards -> products (ordered)
6. Health check: 32 endpoints + kubectl pod status
K8s manifests (18 files):
- 4 namespaces (infra, platform, dashboards, products)
- 6 infra (cosmos StatefulSet+PVC, azurite StatefulSet+PVC,
mailpit, loki StatefulSet+PVC, grafana+PVC, ollama external)
- 3 platform (Deployment+Service+NodePort each)
- 2 dashboards (Deployment+Service+NodePort each)
- 10 backends + 9 webs (all with readiness+liveness probes,
resource limits, product-specific NEXT_PUBLIC_* env vars)
Design decisions:
- k3s --docker: reuses existing Docker images, no containerd import
- Same ports as Docker Compose (NodePort with extended range)
- ConfigMap replaces .env.ecosystem, copied to 3 app namespaces
- Blob storage keys injected at deploy time via Secret (not in YAML)
- Cross-namespace DNS: <svc>.<ns>.svc for service discovery
- Ollama as Endpoints+Service pointing to host node IP
- Resource limits: ~19 Gi total, fits in 32 GB with 13 GB headroom
- Teardown: --teardown flag deletes namespaces, keeps k3s
2026-03-24 14:47:17 -07:00
saravanakumardb1
7d0c469858
refactor(infra): reorganize single_azure_vm into docker/ and k8s/ subfolders
...
- Move setup.sh, README.md, prompt.md into docker/ subfolder
- Create top-level README.md comparing both approaches
- Create k8s/README.md with full design doc: k3s architecture,
namespace strategy, manifest structure, ConfigMap/Secret design,
Cosmos emulator StatefulSet, Ollama host service, resource limits,
5-phase implementation plan, and kubectl cheat sheet
2026-03-24 14:11:50 -07:00
saravanakumardb1
40731e06f4
docs(infra): update prompt.md with 15 new bug fixes and stale corrections
...
- Added 15 recent fixes to the Bugs Already Fixed table
- Fixed line count (~940 → ~990)
- Fixed stale lysnrai-web → lysnrai-dashboard in architecture diagram
- Fixed test plan service count (27+ → 30+)
- Updated constraint: compose/Dockerfile changes allowed with verification
2026-03-24 13:49:17 -07:00
saravanakumardb1
d64ea4fba7
fix(infra): add cd path to banner compose logs command
...
The banner showed bare COMPOSE_FILE filename without the directory,
making the command unusable via copy-paste. Now shows the cd first.
2026-03-24 13:48:05 -07:00
saravanakumardb1
e928ec6025
fix(infra): audit round 2 — token guard, frozen-lockfile, build cache, docs
...
- Add require_gitea_token() guard — fail early with actionable message
if GITEA_NPM_TOKEN is empty after restore (prevents silent failures
in Phase 4/5/7)
- Wire require_gitea_token() into phase4_build and setup_compose_env
- Remove --frozen-lockfile from admin-web + tracker-web Dockerfiles
(Docker context is missing services/ and scripts/ workspace members;
Phase 4 reconciles lockfile so --frozen-lockfile is unnecessary)
- Add docker builder prune after Phase 7 builds (reclaim 20-40 GB)
- Update README: pre-flight thresholds, Ollama stop/restart behavior,
Loki + Azurite in port map, updated memory pressure note
2026-03-24 13:37:21 -07:00
saravanakumardb1
1a8697d8ed
fix(infra): fix last stale service count comment (27→30) in setup.sh
2026-03-24 13:18:12 -07:00
saravanakumardb1
f78d382d62
fix(infra): add Azurite + Loki to health check script
...
- Azurite blob storage (:10000) was missing from check-health.sh
- Loki log aggregation (:3100/ready) was missing from check-health.sh
- Now covers all 30 compose services + Gitea + Ollama = 32 endpoints
2026-03-24 13:08:12 -07:00
saravanakumardb1
1a1f7dd55c
fix(infra): harden setup.sh — pre-flight checks, pipefail safety, RAM management
...
- Add pre-flight disk space + memory checks after root validation
- Add --batch --yes to gpg dearmor calls (idempotent on re-run)
- Fix jq abort on malformed Gitea token response (|| echo guard)
- Wrap pnpm install/build in if-blocks with explicit fail() messages
- Stop Ollama during Phase 7 Docker builds to free ~3 GB RAM
- Restart Ollama after Phase 7 builds complete (before Phase 8 health check)
2026-03-24 13:06:05 -07:00
saravanakumardb1
c2ca7f53b4
fix(infra): harden setup.sh from independent audit findings
...
- Replace deprecated NodeSource curl|bash with modern GPG key + apt source
- Add build-essential + python3 to apt deps (native addons: better-sqlite3)
- Add --if-present to pnpm -r build (defensive: skip workspace members without build script)
- Fix README: remove stale proxy stripping reference from Phase 3
- Add Known Limitations section: remote browser access, ARM VM, memory pressure
- Remove AUDIT_PROMPT.md (served its purpose)
2026-03-24 12:56:43 -07:00
saravanakumardb1
35021b67b9
docs(infra): fix stale service count (27→30), update prompt.md + README.md for Codex agent readiness
...
- prompt.md: mark tasks 1-3 as DONE, add 'Current State' section listing
all implemented features, update bugs-fixed table (16 items), fix service
count in architecture diagram, add CLI reference, remove stale --frozen-lockfile
- README.md: add Resume & Retry section with examples, add CLI Flags table,
fix service count in title/phases, update build failure troubleshooting
with build log paths and retry command
- setup.sh: fix '27 services' → '30 services' in header comment and banner
2026-03-24 12:35:59 -07:00
saravanakumardb1
acbab75aaa
docs(infra): add complete CLI reference, examples, and phase docs to setup.sh + ECOSYSTEM_DEPLOYMENT.md
...
setup.sh header now includes:
- All 6 CLI flags (--resume, --resume-from, --phase, --reset, --status, --help)
- Phase descriptions (1-8)
- 6 usage examples (fresh install, retry, resume, jump, status, reset)
- Resume/retry explanation with state dir and build log paths
ECOSYSTEM_DEPLOYMENT.md now includes:
- Single-VM Bootstrap section with quick start
- Resume & Retry examples
- Phase table
- Per-service build & fallback explanation
- Health check script reference
2026-03-24 12:24:16 -07:00
saravanakumardb1
b634708da8
fix(infra): make ollama model pull non-fatal in setup.sh
...
ollama pull piped through tail with set -euo pipefail would abort the
entire 8-phase setup on a slow network or wrong model name. Only
LocalMemGPT needs the model — the other 9 products are unaffected.
2026-03-24 12:20:13 -07:00
saravanakumardb1
a3f4c6facf
fix(infra): fix sequential phase gap + add phase 7 guards
...
1. last_completed_phase now stops at first gap — prevents --resume from
skipping phases when --phase=N created non-sequential markers
2. Phase 7 fails early if .env.ecosystem is missing (points to --phase=6)
3. Warns if compose config JSON cache fails — graceful degradation
2026-03-24 12:17:45 -07:00
saravanakumardb1
a9414218ba
fix(infra): fix 5 bugs in setup.sh per-service build + resume logic
...
1. set -e + pipefail: docker compose up piped through tail would abort
script on partial startup failure before printing summary — add || true
2. Phase 7 marked done even with build failures, so --resume would skip
it — now only marks done when all builds succeed
3. --phase=7 printed 'Phase 7 complete' even with failures — now exits
with code 1 and points to build logs
4. docker compose config --format json called 30 times in build loop —
now cached once (saves ~3s)
5. Build logs now saved per-service to STATE_DIR/builds/<svc>.log for
post-failure debugging
2026-03-24 12:13:14 -07:00
saravanakumardb1
8ff9e42817
feat(infra): add resume/retry, per-service build, and fallback to setup.sh
...
- --resume: auto-detect last completed phase and continue from there
- --resume-from=N: resume from a specific phase
- --phase=N: run only one phase (e.g. --phase=7 to retry deploy)
- --reset: clear phase markers and start fresh
- --status: show completed phases
- Phase 7 now builds each of 27 services individually with progress
- Failed builds are skipped; remaining services still start
- Phase completion markers stored in /opt/bytelyst/.setup-state/
- GITEA_NPM_TOKEN auto-restored from saved state on resume
2026-03-24 12:03:55 -07:00
saravanakumardb1
c0bc13e10a
fix(infra): improve setup.sh publish error handling — distinguish real failures from 409 conflicts
2026-03-24 11:56:26 -07:00
saravanakumardb1
52b424937a
refactor(infra): remove proxy-stripping sed from setup.sh — Dockerfiles are clean at source
2026-03-24 11:17:02 -07:00
saravanakumardb1
c8a196de58
docs(infra): add bugs-already-fixed section to Codex handoff prompt
2026-03-24 11:04:11 -07:00
saravanakumardb1
ddd2db848e
fix(infra): 6 bugs in setup.sh — jfrog sed, apt source, token fallback, log file
2026-03-24 11:02:16 -07:00
saravanakumardb1
6abf13d983
docs(infra): add Codex agent handoff prompt for VM setup
2026-03-24 10:53:20 -07:00
saravanakumardb1
7c34cee0ab
feat(infra): install Ollama + full raw-VM bootstrap in setup.sh
2026-03-24 10:47:20 -07:00
saravanakumardb1
2b9fd71740
fix(docker): make proxy optional in dashboard Dockerfiles, strip proxy in VM setup
2026-03-24 10:35:00 -07:00
saravanakumardb1
3b31709b47
fix(infra): add extra_hosts for Linux, improve env example docs, harden setup.sh
2026-03-24 10:26:47 -07:00
saravanakumardb1
2458a9d3b0
feat(infra): add single Azure VM bootstrap script + README
2026-03-24 10:14:16 -07:00
saravanakumardb1
25a1bd5187
fix(infra): add BuildKit secrets + GITEA_NPM_HOST to ecosystem compose
2026-03-24 10:02:40 -07:00
saravanakumardb1
3a840572bf
chore(infra): add .env.ecosystem.example for ecosystem compose
2026-03-24 09:08:30 -07:00
saravanakumardb1
d466b8a7c4
docs: clean stale sections in GITEA_NPM_REGISTRY_MIGRATION.md
2026-03-24 08:44:29 -07:00
saravanakumardb1
19a1fd8aa2
docs(pnpm): add MindLyst to migration tracker, update Gitea registry status
...
- Add learning_multimodal_memory_agents to Wave 3 (commit e0461c7)
- Replace stale Follow-up Validation section with completed Gitea registry status
- Update Summary: all 10 product repos + common-plat on pnpm with Gitea registry
2026-03-24 08:28:11 -07:00
saravanakumardb1
fee5e87052
docs: remove versioning refs and stale transition language from deployment docs
...
- Remove 'Supersedes' and 'What Changed' section from enhanced plan
- Rewrite Package-Manager Strategy (transition complete, all repos on pnpm)
- Remove docker-prep.sh prerequisites, .tarballs/ references, npm variants
- Replace Dockerfile templates with current Gitea registry-backed pattern
- Remove §11.1 Package-Manager Migration Roadmap (migration complete)
- Clean up §11.2 Gitea section (remove 'Current pain', comparison table)
- Clean up §12 audit findings (remove tarball references)
- Simplify §10 Dockerization table (remove transition columns)
- Update §5.1/5.2 to reflect validated state, not open gaps
- Fix v2 tag in K3s exercise to use semver 1.1.0
- Update Summary table with current state
2026-03-24 08:10:17 -07:00
saravanakumardb1
baf47ac56b
docs: add enhanced single-VM deployment plan with Coolify, Valkey, Uptime Kuma, SOPS
...
New SINGLE_VM_ENHANCED_PLAN.md covers:
- Coolify as self-hosted PaaS (15-min setup vs 6-7hr manual)
- Valkey (Redis fork) for sessions, cache, pub/sub, rate limits
- Uptime Kuma for status page + alerting
- Dozzle for live container logs
- SOPS + age for git-safe encrypted secrets
- Restic for volume backups
- BuildKit cache mounts for faster Docker builds
- Docker Compose profiles for selective startup
- Revised 4.5-hour implementation timeline
Also updates SINGLE_VM_DEPLOYMENT.md §3 prerequisite to reference
resolved Gitea registry migration and new enhanced plan.
2026-03-24 07:49:50 -07:00
saravanakumardb1
b0a4b2d9c3
docs: add Docker build verification section (§17) — all 4 images pass, 1591 tests green
2026-03-24 07:28:44 -07:00
saravanakumardb1
d64acd79e3
docs: add post-migration audit section (§16) — 5 bugs/gaps found and fixed
2026-03-24 06:53:15 -07:00
saravanakumardb1
266f45a851
docs: finalize Gitea registry migration — all 10 repos migrated, rollback + Azure documented, Definition of Done 10/10
2026-03-24 06:23:33 -07:00
saravanakumardb1
4929cb9202
docs(devops): update registry migration status — 8 repos migrated, 38 packages published
...
- Update validation results: 8 repos migrated, all Docker builds verified
- Update rollout order with completion status
- Update definition of done: 7/10 items checked
- Update next actions: remaining 2 non-standard repos (MindLyst, LysnrAI)
- Mark gaps section: mobile stays on file: refs, CI queue sequential
2026-03-23 21:08:27 -07:00
saravanakumardb1
0dd57b9d00
fix(docs): distinguish NETWORK=corp local-dev topology from VM deployment
2026-03-23 19:48:55 -07:00
saravanakumardb1
f0945a2d86
fix(ci): prefer ipv4 for local runner registration
2026-03-23 19:39:11 -07:00
saravanakumardb1
64db209bab
fix(docs): refresh local Gitea rehearsal status
2026-03-23 19:26:31 -07:00
saravanakumardb1
39f33c4342
fix(docs): export local Docker token example
2026-03-23 19:24:32 -07:00
saravanakumardb1
688aad624a
fix(docs): document hardened FlowMonk Docker workaround
2026-03-23 19:19:46 -07:00
saravanakumardb1
03b92eb2df
fix(docs): update local Gitea migration status
2026-03-23 19:17:07 -07:00
saravanakumardb1
6f748b11d4
fix(docs): record local FlowMonk Docker workaround
2026-03-23 19:09:04 -07:00
saravanakumardb1
2296d98bf6
fix(docs): capture localhost tarball blocker in Docker
2026-03-23 19:02:49 -07:00
saravanakumardb1
fdf640e5bd
fix(docs): capture local Docker auth blocker
2026-03-23 18:57:34 -07:00
saravanakumardb1
90e3f8d056
fix(docs): narrow docker-prep assumptions in vm guide
2026-03-23 18:54:18 -07:00
saravanakumardb1
a0469c2a57
fix(docs): clarify local Gitea consumer auth behavior
2026-03-23 18:52:26 -07:00
saravanakumardb1
fdf80d6470
fix(docs): correct FlowMonk compose build examples
2026-03-23 18:50:38 -07:00
saravanakumardb1
7361cba125
fix(docs): restore valid helm template examples
2026-03-23 18:16:01 -07:00
saravanakumardb1
4687351de0
ci: update CI/CD configuration
2026-03-23 18:04:18 -07:00
saravanakumardb1
fa1adf829c
docs(devops): capture azure vm and scaling readiness gaps
2026-03-23 16:10:02 -07:00
saravanakumardb1
661bc9953a
docs(pnpm): record audited gitea registry checkpoints
2026-03-23 16:06:59 -07:00
saravanakumardb1
178f043518
docs(pnpm): finalize gitea rehearsal commit ledger
2026-03-23 15:49:53 -07:00
saravanakumardb1
accf834b3e
docs(pnpm): record gitea registry rehearsal checkpoint
2026-03-23 15:49:05 -07:00
saravanakumardb1
7116749bbd
docs(devops): record local gitea registry rehearsal
2026-03-23 15:48:18 -07:00
saravanakumardb1
e427282234
docs(ci): update Gitea CI docs + add /gitea-ci workflow
...
- Add key settings, runner log path, detailed repo/job matrix to GITEA_LOCAL_CI.md
- Add /gitea-ci Windsurf workflow: start, push all, check status, view logs
- Add learning_ai_local_memory_gpt to repos.txt
2026-03-22 20:56:03 -07:00
saravanakumardb1
acb866774c
feat(repo): add packageManager field + finalize pnpm migration tracker
...
- Add packageManager: pnpm@10.6.5 to root package.json
- Mark all 9 repos complete in PNPM_MIGRATION.md
- Record lysnrai commit c3a88af + common-plat completion notes
2026-03-22 20:36:41 -07:00
saravanakumardb1
6d4579da37
chore(ci): migrate to Gitea local CI, disable GitHub Actions
...
- Add .gitea/workflows/ci.yml for Gitea Actions
- Disable GitHub Actions: ci-extraction-service, ci-mcp-server, reusable-pnpm-workspace
- Add docs/devops/GITEA_LOCAL_CI.md setup guide
2026-03-22 20:13:02 -07:00
saravanakumardb1
8070009fde
docs(pnpm): update jarvisjr + peakpulse migration tracker
2026-03-22 19:43:24 -07:00
saravanakumardb1
d9434bbb3e
docs(pnpm): update chronomind migration tracker
2026-03-22 19:12:22 -07:00
saravanakumardb1
6a92f43db5
docs(pnpm): update nomgap migration tracker
2026-03-22 18:42:50 -07:00
saravanakumardb1
1e725e977d
docs(pnpm): update actiontrail migration tracker
2026-03-22 17:35:01 -07:00
saravanakumardb1
d7651a73cf
docs(pnpm): update localmemgpt migration tracker
2026-03-22 17:18:27 -07:00
saravanakumardb1
e2a0960a6d
docs(pnpm): record notelett push status
2026-03-22 15:53:06 -07:00
saravanakumardb1
14e7e490e2
docs(pnpm): update notelett migration tracker
2026-03-22 15:52:22 -07:00
saravanakumardb1
5998af45e3
docs(pnpm): fix tracker audit gaps
2026-03-22 14:19:05 -07:00
saravanakumardb1
afcbf852b2
docs(pnpm): strengthen migration tracker gates
2026-03-22 14:15:48 -07:00
saravanakumardb1
828d31b63d
docs: update documentation
2026-03-22 14:06:44 -07:00
saravanakumardb1
d934bb3286
docs(pnpm): add canonical ecosystem migration roadmap
2026-03-22 14:03:17 -07:00
saravanakumardb1
dda38aa009
fix(exports): strip data payload from list endpoint + update audit doc
...
- exports/routes: exclude inline data from GET /exports list response
to prevent returning megabytes of serialized export data (perf+security)
- Update WORKSPACE_TODO_AUDIT.md: add post-audit review section with
9 bugs found and fixed across 2 commits (73b07c2 , 841cdf3 ), mark
all action plan sprints complete
- Typecheck clean, 1483/1483 tests pass
2026-03-22 01:23:08 -07:00
saravanakumardb1
1576b699b0
feat(platform-service): resolve all P3 TODOs — diagnostics notifications + test cleanup
...
- diagnostics/subscribers: notify admin via email when debug session is
cancelled (looks up session creator via getSession + getUserById)
- diagnostics/subscribers: email session summary (logs/traces/screenshots)
to admin when debug session completes
- diagnostics/subscribers: send Slack alert via dispatchSlack for FATAL
logs ingested during debug sessions (on-call engineer notification)
- feedback-client/integration.test.ts: replace TODO-4 with clear NOTE,
fix unused var lint errors
- feedback-client/gdpr.test.ts: mark lifecycle policy as accepted,
remove console.log + unused blobPath variable
- Update WORKSPACE_TODO_AUDIT.md — P3 section: all 5 resolved
- Typecheck clean, 1483/1483 tests pass
2026-03-22 01:03:51 -07:00
saravanakumardb1
a92373adec
docs(devops): fix 15 bugs/gaps in single-VM deployment guide — add 4 missing web services, update stale references
2026-03-22 00:49:14 -07:00
saravanakumardb1
0502dead68
docs(devops): add Docker Desktop K8s as primary local option alongside K3s
2026-03-22 00:44:23 -07:00
saravanakumardb1
6f03a74a76
feat(platform-service): resolve P2 TODOs — exports, broadcasts, telemetry, waitlist
...
- telemetry/repository: group upsertEventsBatch by pk — same-partition
writes sequential, different partitions parallel (reduces contention)
- exports/routes: wire async export processing via process.nextTick —
queries users/audit/telemetry/usage/subscriptions/licenses, serializes
to CSV or JSON, updates job status with rowCount and fileSizeBytes
- broadcasts/repository: replace mock estimateTargetReach with real user
count query from auth module, respects percentageRollout
- broadcasts/routes: wire async broadcast delivery — fetches target users,
dispatches email per recipient, updates metrics on completion
- waitlist/routes: auto-generate invitation codes via invitations module
when batch-inviting waitlist entries (WL-XXXXXXXX format, 14-day trial)
- CAPTCHA (item 12) deferred — requires external API keys
- Update WORKSPACE_TODO_AUDIT.md — P2 section: 5/6 resolved
- Typecheck clean, 1483/1483 tests pass
2026-03-22 00:41:11 -07:00
saravanakumardb1
5646cefcbd
docs(devops): add K8s best practices from production comparisons, update gap table to reflect all Dockerfiles created
2026-03-22 00:36:59 -07:00
saravanakumardb1
ae2af43d71
docs(devops): add single-VM deployment guide with audit findings
2026-03-22 00:18:17 -07:00
saravanakumardb1
2f06aacc27
fix(platform-service): resolve P1 TODOs — delivery email subscribers + survey incentives
...
- delivery/subscribers: add resolveUserEmail() helper using auth getById()
- payment.failed: look up user email, dispatch payment-failed template
- trial_expiring: look up user, compute daysLeft from expiresAt, dispatch
- trial_expired: look up user, dispatch trial-expired template with upgradeUrl
- surveys/routes: wire incentive fulfillment to subscriptions module
- pro_days: extend currentPeriodEnd by incentive amount
- credits: add bonus tokensIncluded via subscriptions repo
- Update WORKSPACE_TODO_AUDIT.md — P0+P1 all resolved (7/18)
- Typecheck clean, 1483/1483 tests pass
2026-03-22 00:14:41 -07:00
saravanakumardb1
9f00c120da
docs: update TODO audit — P0 items resolved, clean table formatting
2026-03-21 23:51:23 -07:00
saravanakumardb1
07e4d838ed
docs: comprehensive workspace TODO audit — 18 findings across 15 repos
...
Scanned all 15 workspace repos for TODOs, disabled features, stubs.
- 12 actionable TODOs in platform-service (delivery, exports, broadcasts, surveys, waitlist, diagnostics, telemetry)
- 3 identical error.tsx telemetry TODOs across dashboards
- 3 package-level TODOs (feedback-client tests, create-app template)
- All 9 product backends + webs are TODO-free
- Prioritized into P0-P3 with impact/benefit analysis and sprint plan
2026-03-21 23:46:14 -07:00
saravanakumardb1
f92504ceb4
docs(admin-web): update gap analysis — all Q1-Q4 TODOs resolved, 0 partially exposed pages
...
- Batch 5: 3 backend endpoints added + 4 frontend features re-enabled
- Batch 6: debug-session JSON download implemented, console.log removed
- Statistics: 21 broken calls fixed (6 commits), 0 partially exposed pages
- No actionable TODOs remain
2026-03-21 23:15:24 -07:00
saravanakumardb1
1935b39525
docs(admin-web): update gap analysis — all page proxy routes verified complete
...
- Add batch 4 fixes: experiments/ab-testing proxy routes, webhooks B20 fix
- Add verification section: all 30 API call paths have matching proxy routes
- Update statistics: 46 proxy route dirs, 20 broken calls fixed, 0 missing for pages
- Add TODO Q4: webhooks per-subscription delivery loading
- Update 'Still Missing' table with better notes (none are blocking)
2026-03-21 23:00:35 -07:00
saravanakumardb1
6d9b687b49
docs(admin-web): update gap analysis with batch 2+3 fixes + new proxy routes
...
- Add batch 2 bug fixes table (587d22e ): orgs members→memberships, marketplace admin paths
- Add batch 3 bug fixes table (c54a3fe ): agent-evals run plural, delete disabled
- Add missing proxy routes section (880338b ): ai-diagnostics, feedback
- Update statistics: 43 proxy route dirs, 19 total API call fixes, ~10 remaining
- Add TODO Q3: agent-evals suite delete endpoint needed
2026-03-21 21:19:27 -07:00
saravanakumardb1
a1fd1d2e37
docs(admin-web): update gap analysis with implementation status + bug fix log
...
- Add Implementation Status section with checkboxes for all completed work
- Sprint 0-4 items all checked off (sidebar, pages, proxy routes)
- Document 12 API call bugs found and fixed in a3e94f3
- Track 11 remaining missing proxy routes
- Track 2 open TODOs (Q1: delivery retry, Q2: reviews flag)
- Update Part 6 statistics with before/after columns
- Admin gap reduced from 28 missing to ~11
2026-03-21 21:08:47 -07:00
saravanakumardb1
edf8926d6d
fix(docs): self-audit Portal PRD + roadmap — 15 findings corrected
...
Review Errata (15 findings):
- F1-F2: Product count 11→10 (ByteLyst Auth has no backend)
- F3: product.json count 4→3 missing (FlowMonk, ActionTrail, LocalMemGPT)
- F4: Architecture diagram spacing fixes
- F5: Remove portalLayout from GlobalPreferences (contradicted separate Cosmos container)
- F6-F7: Widget endpoint unified to /widgets/:widgetId/data + added layout CRUD endpoints
- F8: Verified all 10 feed source endpoints against actual backend route files
- F9: Added @bytelyst/datastore to BFF tech stack
- F10: Added Cosmos containers section (portal_widget_layouts)
- F11: Global prefs dependency Phase 2→Phase 5 blocker
- F12: Removed emojis from search example
- F13: Added quick-actions task to roadmap Phase 1
- F14: Added 4 missing scaffold tasks (errors, datastore, cosmos-init, vitest)
- F15: Corrected run-local-all-services.sh location
- Updated task totals: 124→129
2026-03-21 20:57:28 -07:00
saravanakumardb1
7a4cca034c
docs: add Unified ByteLyst Portal PRD + phased roadmap with 124 tasks
...
- PRD: product identity, architecture (BFF + web), data model, 10 pages,
21 widgets, cross-product feed/search, security, resilience, telemetry
- Roadmap: 8 phases (scaffold, auth, feed, widgets, search, billing,
security, polish), dependency graph, ~21 days estimated
- Builds on CROSS_PRODUCT_USER_DASHBOARD.md design + DASHBOARD_UI_GAP_ANALYSIS.md findings
2026-03-21 20:49:55 -07:00
saravanakumardb1
f9fa583cae
docs: add ecosystem consistency audit — 20 findings across 13 repos
2026-03-21 20:21:06 -07:00
saravanakumardb1
6f9ff2a5a4
docs: fix 10 bugs in dashboard UI coverage roadmap — self-audit corrections
...
Systematic review found and corrected:
- R1: Gap 1.2.3 (predictive campaigns) missing — added as Phase 4.12
- R2: Gap 1.2.4 (kill switch for all products) missing — added as Phase 0.3
- R3: Phase 1 labeled '1 week' but effort is 10 days — fixed to '2 weeks'
- R4: Admin sidebar target 59 wrong — corrected to 52
- R5: Phase 4 sidebar count 9 wrong — fixed to 7 new + 5 expanded
- R6: Dependency graph incorrect — Phase 4 can start after Phase 1
- R7: Success metrics denominator misleading — clarified
- R8: No grand total effort — added ~60 dev-days
- R9: No completion tracking — noted
- R10: Phase 2 API route count unexplained — added note
All 55 gap analysis items now verified covered across phases 0-6.
2026-03-21 17:35:30 -07:00
saravanakumardb1
d1a4db29a4
docs: add dashboard UI coverage roadmap — 6-phase execution plan to close 55 gaps
...
Converts gap analysis findings into concrete phased roadmap:
- Phase 0: Fix ai-diagnostics backend bug + wire 7 hidden sidebar items (1 day)
- Phase 1: 4 critical admin pages — orgs, support, AI budgets, waitlist (1 week)
- Phase 2: 7 high-value admin pages — webhooks, knowledge, evals, reviews, marketplace, delivery, jobs (2 weeks)
- Phase 3: User dashboard security hub + 5 missing pages (1.5 weeks)
- Phase 4: 11 operational admin features — event bus, SCIM, IP rules, backups, etc. (2 weeks)
- Phase 5: User polish — feedback, org membership, marketplace, GDPR export (1 week)
- Phase 6: 14 backlog items triggered by product needs
Includes dependency graph, per-page template, effort estimates,
acceptance criteria, success metrics, and risk register.
2026-03-21 17:31:19 -07:00
saravanakumardb1
827934124d
docs: add comprehensive dashboard UI gap analysis — 55 hidden/underexposed features identified
...
Systematic scan of platform-service (43+ modules, 511+ endpoints) vs admin-web
(27 sidebar items, 38 pages) and user-dashboard-web (11 pages, 39 API routes).
Key findings:
- 28 backend modules completely missing from admin UI
- 7 admin pages built but missing from sidebar (undiscoverable)
- 12 user-dashboard features completely missing
- 1 critical backend bug: ai-diagnostics routes.ts not registered in server.ts
- 26 missing admin API proxy routes
- 10 errata items self-audited and corrected in-place
Includes 79-row module-to-UI matrix, auth sub-module gap detail,
prioritized 6-sprint action plan, and cross-cutting gap tables.
2026-03-21 17:18:06 -07:00
saravanakumardb1
b1af8e550a
docs(e2ee): detailed SQLCipher + AKV implementation plan for LocalMemGPT Sprint 5.4
...
- Decision: SQLCipher full-DB encryption (preserves FTS5 search)
- Key hierarchy: AKV secret > env var > auto-generated file > unencrypted dev
- Existing DB migration via sqlcipher_export
- 6 implementation steps documented
2026-03-21 13:39:01 -07:00
saravanakumardb1
c252cfd198
feat(devops): encryption migration CLI with embedded product configs
...
- scripts/encrypt-migrate.ts — batch-encrypt existing plaintext Cosmos docs
- scripts/ added as pnpm workspace member for clean @bytelyst/* imports
- 10 product configs, 20 containers, 40+ fields
- --dry-run, --product, --container, --batch-size, --verbose flags
- Idempotent via __encrypted sentinel (migrateDocuments helper)
- Updated E2EE roadmap Sprint 6.2 as complete
2026-03-21 13:19:55 -07:00