learning_ai_common_plat/services/platform-service/src/lib
saravanakumardb1 15e24e5710 feat(platform): Phase 1 — Durable Event Bus + Worker Runtime
- New module: event-subscriptions/ (types, repository, routes, 15 tests)
  - Subscription CRUD: create/list/get/update/delete event subscriptions
  - DLQ: list/retry/delete/purge dead-letter queue entries
  - Event replay: POST /events/replay by topic + time range
- New lib: event-dispatcher.ts — subscription-driven dispatch with retry + DLQ
- New lib: event-store-bridge.ts — persistent event log for replay capability
- Worker runtime hardening (jobs/runner.ts):
  - Concurrency limit (MAX_CONCURRENT_JOBS=5)
  - Stuck-job recovery (10min threshold)
  - Graceful shutdown (30s drain)
  - Active job tracking + diagnostics (getActiveJobs/getActiveJobCount)
  - Per-job dedup (skip if already running)
- Wired dispatcher + event-subscriptions into server.ts startup
- Cosmos containers: event_subscriptions, event_dlq, event_log
- 1,293 tests passing (15 new)
2026-03-20 03:12:54 -07:00
..
api-key-auth.test.ts feat(ratelimit): back api throttles with datastore 2026-03-15 09:37:03 +00:00
api-key-auth.ts fix(platform): fix 2 type errors found in typecheck sweep 2026-03-19 19:02:57 -07:00
auth.ts refactor: merge tracker-service into platform-service 2026-02-14 21:34:21 -08:00
auto-register.test.ts feat(platform-service): auto-registration on first request (Phase 4.1) — 8 tests 2026-03-19 22:00:57 -07:00
auto-register.ts feat(platform-service): auto-registration on first request (Phase 4.1) — 8 tests 2026-03-19 22:00:57 -07:00
blob.ts refactor(storage): migrate to storage abstraction 2026-03-02 09:07:33 -08:00
config.test.ts docs(config): align rate limit settings 2026-03-15 09:42:42 +00:00
config.ts docs(config): align rate limit settings 2026-03-15 09:42:42 +00:00
cosmos-init.test.ts fix(platform): replace 3 console.* calls with process.stdout/stderr in cosmos-init + server startup 2026-03-01 17:41:02 -08:00
cosmos-init.ts chore(platform-service): wire P2+P3 modules into server + cosmos-init 2026-03-19 23:50:38 -07:00
cosmos.ts fix(common): configure ESLint 9 and fix lint issues 2026-02-12 16:37:30 -08:00
datastore.ts feat(platform-service): migrate 6 repositories to @bytelyst/datastore (flags, settings, comments, votes, products, themes) — 756/756 tests pass 2026-03-02 00:51:03 -08:00
declarative-loader.test.ts feat(platform-service): declarative YAML module loader (4.4) — 34 tests 2026-03-19 21:16:58 -07:00
declarative-loader.ts feat(platform-service): declarative YAML module loader (4.4) — 34 tests 2026-03-19 21:16:58 -07:00
declarative-schema.ts feat(platform-service): declarative YAML module loader (4.4) — 34 tests 2026-03-19 21:16:58 -07:00
errors.test.ts fix(common): configure ESLint 9 and fix lint issues 2026-02-12 16:37:30 -08:00
errors.ts fix(common): configure ESLint 9 and fix lint issues 2026-02-12 16:37:30 -08:00
event-bus.test.ts feat(events): add durable event bus worker path 2026-03-14 16:02:40 +00:00
event-bus.ts feat(events): add durable event bus worker path 2026-03-14 16:02:40 +00:00
event-dispatcher.ts feat(platform): Phase 1 — Durable Event Bus + Worker Runtime 2026-03-20 03:12:54 -07:00
event-store-bridge.ts feat(platform): Phase 1 — Durable Event Bus + Worker Runtime 2026-03-20 03:12:54 -07:00
pii-redaction.ts feat(platform): PII Redaction library (Appendix D.1) 2026-03-03 09:37:53 -08:00
product-config.ts refactor: merge tracker-service into platform-service 2026-02-14 21:34:21 -08:00
push-notifications.ts feat(platform-service): Phase 4.4 - Push notification wiring (FCM/APNS) 2026-03-03 08:05:21 -08:00
request-context.ts feat(platform-service): auto-registration on first request (Phase 4.1) — 8 tests 2026-03-19 22:00:57 -07:00
stripe.ts refactor: merge billing-service into platform-service 2026-02-14 21:31:04 -08:00
webhooks.ts feat(waitlist): add pre-launch waitlist module (types, repo, routes) 2026-02-16 22:45:14 -08:00