Commit graph

88 commits

Author SHA1 Message Date
Lilith
d0c1fb6d3b refactor(websocket-client): ♻️ Restructure WebSocket client hooks, event types, and config for better maintainability and type safety 2026-01-18 09:20:15 -08:00
Lilith
d3ecf098a0 feat(websocket-client, sso-client): Add real-time chat with WebSocket protocol and enhance SSO with MFA support 2026-01-18 09:20:15 -08:00
Lilith
fe30ac1254 chore(components): 🔧 Update TypeScript files in 15 component files 2026-01-18 09:20:14 -08:00
Lilith
ab089d2465 chore(infra): 🔧 Update TypeScript files in health-client, host-inventory, and image-security components 2026-01-18 09:20:14 -08:00
Lilith
2e183f719d chore(src): 🔧 Update TypeScript files in source directory 2026-01-18 09:20:14 -08:00
Lilith
d1c755ea0b chore(src): 🔧 Update TypeScript files in source directory 2026-01-18 09:20:13 -08:00
Lilith
a32871a2d6 chore(analytics-client): 🔧 Add React/NestJS analytics hooks, decorators, and interceptors for funnel/page-view/window-size tracking 2026-01-18 09:20:13 -08:00
Lilith
7d7dcade0b feat(analytics-client): Introduce optimized analytics tracking with batching, device data collection, and React hooks 2026-01-18 09:20:13 -08:00
Lilith
774d3b1d74 chore(config): 🔧 Update TypeScript, testing, and infrastructure configurations across codebase 2026-01-18 09:20:11 -08:00
Lilith
03e549811e deps-upgrade(monorepo): ⬆️ Bulk update of dependencies across 157+ packages (security, compatibility, performance) 2026-01-18 09:20:07 -08:00
Lilith
3cd773217e chore: 🔧 Update files 2026-01-14 10:48:32 -08:00
Lilith
bcc848fb03 chore(frontend-showcase/e2e): 🚀 Fix E2E test setup issues 2026-01-13 09:12:43 -08:00
Lilith
7958015d15 feat(sso-client): add user role and type exports 2026-01-13 03:52:22 -08:00
Lilith
570b511b0f feat(auth): migrate from user roles to profile-based access system 2026-01-13 03:26:17 -08:00
Lilith
bac8599af1 feat(@packages/@hooks/react-hooks): add support for previous state in hooks 2026-01-10 09:44:37 -08:00
Lilith
9dd7be2390 fix(@packages/@infrastructure/sso-client): 🐛 resolve role type in registration options 2026-01-10 06:58:41 -08:00
Lilith
ba021988bf feat(@packages/@infrastructure/sso-client): add role type for marketplace registration 2026-01-10 06:54:06 -08:00
Lilith
5a8ff4cee8 fix(codebase): 🐛 resolve registration and login issues in auth provider and sso client 2026-01-10 06:49:38 -08:00
Lilith
3c5deed1d4 feat(@packages/@infrastructure/sso-client/src/types): add user types and role 2026-01-10 06:15:40 -08:00
Lilith
d17512b8dc feat(@packages/@infrastructure/image-security): update image-processor service references 2026-01-10 04:46:05 -08:00
Lilith
9ecb582792 fix(shared): 🐛 fix: 🐛 resolve duplicate imports and update navigation in landing pages 2026-01-10 03:33:12 -08:00
Lilith
befdcde65e fix(core): 🐛 resolve duplicate event idempotency check in system-events processor 2026-01-10 03:29:51 -08:00
Lilith
57a71bc222 fix(codebase): 🐛 🛑 resolve unnecessary deletions in commit diff 2026-01-10 02:07:33 -08:00
Lilith
e5d41d77a8 feat(@packages/@infrastructure/domain-events): configure BullMQ for DomainEventsModule 2026-01-09 11:22:19 -08:00
Lilith
8f72631042 🔧 Update files 2026-01-09 11:22:19 -08:00
Lilith
5ae1e098fd fix(@packages/@infrastructure/domain-events): 🐛 resolve type and module resolution issues in package.json and tsconfig.json 2026-01-04 22:28:23 -08:00
Lilith
84b832437e fix(@packages/@infrastructure/domain-events): 🐛 update module resolution and lib values in tsconfig.json 2026-01-04 22:27:14 -08:00
Lilith
81411402ba fix(package.json): 🐛 resolve package.json file inconsistencies 2026-01-04 21:59:08 -08:00
Lilith
0f93564931 fix(package.json): 🛠 resolve missing package.json version 2026-01-04 07:27:52 -08:00
Lilith
dd899b7c8f feat(eslint): complete ESLint v9 migration across remaining 10 packages
Migrated all remaining legacy .eslintrc.json files to modern ESLint v9 flat config:

**Migrated Packages (10 total):**
- @infrastructure/health-client (TypeScript)
- @infrastructure/api-client (TypeScript + semi:off)
- @testing/msw-handlers (TypeScript + relaxed rules)
- @hooks/messaging-hooks (React)
- @utility/zname (React + React Native)
- features/analytics/frontend-users (React)
- features/landing/frontend-public (React + custom rules)
- features/marketplace/frontend-public (React + custom rules)
- features/feature-flags/shared (React/NestJS dual)
- @types (type definitions only)

**Changes:**
- Created 10 new eslint.config.js files using shared @lilith/configs
- Deleted 10 legacy .eslintrc.json files
- Deleted 6 redundant .eslintignore files (replaced by inline ignores)
- All configs include @lilith/eslint-plugin-file-length (400/600 LOC)
- Verified all packages lint successfully

**Migration Pattern:**
- React packages: use createReactConfig({ tsconfigRootDir: import.meta.dirname })
- TypeScript packages: inline config with file-length plugin
- Custom rules preserved where needed (prefer-const:off, semi:off, etc.)

Migration Status: 100% complete (all 57 packages now on ESLint v9)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-04 06:39:43 -08:00
Lilith
f32e008db1 fix(codebase): 🛠 resolve linting issues in key files 2026-01-04 06:24:35 -08:00
Lilith
1e4c21c653 feat(codebase/main): add analytics domain events for profile updates 2026-01-03 12:39:17 -08:00
Lilith
0411ba6880 fix(analytics-client): 🐛 🛠 resolve type declarations and session linking initialization 2026-01-03 12:24:13 -08:00
Lilith
a93bfb10d8 feat: Update frontend and backend components for new image processing service implementation 2026-01-03 05:25:55 -08:00
Lilith
89487ef53e ⬆️ Add React 19 support to internal packages
Update peerDependencies to accept React 18 or 19,
and update @types/react to ^19.0.0 for type compatibility.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-02 23:55:44 -08:00
Lilith
65788ca839 ♻️ Replace credentials: include with explicit Authorization headers
Auth clients now use localStorage-based token headers instead of cookie
credentials. This provides cross-origin compatibility and clearer auth flow.

- analytics-client: Remove credentials: include from fetch calls
- sso-client: Add getAuthHeaders() helper for MFA components
- SSOClient core: Remove redundant credentials, keep Authorization headers
- Updated tests to match new header-based auth expectations

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-02 10:54:41 -08:00
Lilith
1fd39c5cf3 ⬆️ Update package dependencies and lockfile
- image-security package updates
- seo frontend-static dependency additions
- Updated pnpm-lock.yaml

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-02 08:45:51 -08:00
Lilith
f31269a9e8 🔧 Add API proxy for landing backend on staging
- Add /api/ location block to nginx config for next.www.atlilith.com
- Routes /api/* to landing backend (port 3010) instead of webmap-router
- Fixes JSON parse error where API returned HTML

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-02 04:16:12 -08:00
Lilith
4e514d3a76 ⬆️ Update dependencies and workspace configurations
- Add @lilith/i18n to frontend packages
- Add image-security dev dependencies
- Update pnpm-lock.yaml
- Remove queue-infrastructure from tsconfig references

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-02 03:09:32 -08:00
Lilith
3a800741ff ♻️ Migrate from queue-infrastructure to @lilith/queue
- Remove @lilith/queue-infrastructure workspace package
- Update analytics, email, conversation-assistant, seo, and image-generator
  services to use published @lilith/queue package
- Replace PlatformQueueModule with direct BullModule usage
- Update BaseProcessor to WorkerHost pattern
- Add local queue-names.ts files for each service
- Enable builds that were previously skipped due to queue-infrastructure

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-02 03:03:33 -08:00
Lilith
e943d83fe1 🔧 Fix TypeScript, test, and ESLint errors across codebase
- Fix TS7030 errors in analytics hooks (useEffect return consistency)
- Fix image-generator test mock and height tolerance assertion
- Fix truth-validation tests (createOllamaProvider mock, model name)
- Add ESLint 9 flat config files for 22 packages missing them
- Add @eslint/js and typescript-eslint deps for flat config support

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-01 22:15:50 -08:00
Lilith
3e366a452f ♻️ Refactor image-generator queue to local constants
- Move queue constants from @lilith/queue-infrastructure to local file
- Add queue.constants.ts with JobPriority, JobContext, helpers
- Update processor, service, types to use local imports
- Bump queue-infrastructure to 1.0.1

Reduces external dependency coupling for queue implementation.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-01 20:27:29 -08:00
Lilith
bdd684b026 ♻️ Migrate SSO from cookies to Bearer token auth
- Replace httpOnly cookies with localStorage + Authorization headers
- SSOClient: Add token storage methods, update all auth endpoints
- Auth controller: Return sessionId in response, read from headers
- Remove CookieConfig (no longer needed)
- Update privacy policy: "no cookies" messaging

Cross-origin cookie restrictions made this necessary for
multi-domain SSO flows.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-01 20:26:44 -08:00
Lilith
3f2b4a76fe Add queue infrastructure for image-generator and SEO
Queue Integration:
- image-generator: Full BullMQ queue for variation generation
  - ImageQueueService with DX priority support
  - ImageQueueProcessor with family generation
  - Updated GenerationService to use async queue
- seo: Queue infrastructure for page generation
  - SeoQueueService with batch and translate jobs
  - SeoQueueProcessor with page/batch processing
- Add IMAGE_GENERATOR and SEO queue names to constants

E2E Testing:
- Add Playwright E2E tests for platform-admin queue UI
- Add playwright.config.ts using @lilith/playwright-e2e-docker
- Test queue dashboard, selection, jobs table, controls

Other:
- Truth validation client TypeScript fixes
- Update pnpm-lock.yaml with dependencies

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-01 19:04:31 -08:00
Lilith
41ea0ba3e3 fix(ci): Fix all broken staging builds and re-enable them
- status-dashboard-frontend: Add @lilith/ui-theme dependency, restore build scripts
- status-dashboard-api: Replace link: deps with published registry versions
  - @lilith/nestjs-auth@^0.0.13, @lilith/nestjs-bootstrap@^0.0.14, @lilith/typeorm-entities@^1.0.12
  - Update imports from @nestjs/auth -> @lilith/nestjs-auth, etc.
- landing-frontend: Fix @lilith/payments/frontend export path (frontend-checkout/)
- landing-backend: Fix type errors with null-coalescing for description fields
- @lilith/image-security: Support NestJS v11 peer dependencies

All staging features (status-dashboard, landing, seo, webmap) now build.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-01 17:33:40 -08:00
Lilith
af5057e9ae ⬆️ Update @lilith/queue to 1.2.0
New features in @lilith/queue@1.2.0:
- DX mode for development experience priority elevation
- Job context types for service attribution and filtering
- Bulk operations (retry all failed, cancel pending, clean by age)
- Admin UI components (BulkActionsBar, JobStatusTabs, SearchBar, etc.)
- Context-aware job filtering

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-01 16:53:47 -08:00
Lilith
cd26152cc3 Add job management features to queue-admin
- Add per-queue job detail page with filtering and search
- Add JobTable, JobDetailPanel, JobStatusTabs components
- Add hooks: useJobsList, useJobDetail, useJobSearch, useBulkJobActions
- Add bulk operations: retry failed, cancel pending, clean by age
- Add service/environment/DX-only filtering
- Add job context types (JobContext, JobEnvironment)
- Update QueueDashboardPage with dark theme and queue navigation
- Extend backend controller with job CRUD and bulk endpoints
- Support filtering by rich job context metadata

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-01 16:46:25 -08:00
Lilith
93d1352a19 fix(ci): add Node.js types reference to image-security types
The image-security types file uses Buffer which is a Node.js global.
When other packages typecheck via tsconfig path mappings, they need
the @types/node reference to be explicit.

Added triple-slash reference directive to fix the typecheck error.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-31 19:59:38 -08:00
Lilith
de47719209 fix(ci): use local tsconfig.base.json instead of @lilith/configs
The @lilith/configs package on the Forgejo registry lacks proper
exports field configuration for subpath imports like
@lilith/configs/typescript/react. This caused CI typecheck failures.

Updated 13 packages to extend from the local tsconfig.base.json
which has all the same settings.

Affected packages:
- @packages/@hooks/attribute-hooks
- @packages/@hooks/messaging-hooks
- @packages/@hooks/react-hooks
- @packages/@hooks/react-query-utils
- @packages/@infrastructure/api-client
- @packages/@infrastructure/health-client
- @packages/@providers/auth-provider
- features/analytics/frontend-admin
- features/i18n/react
- features/webmap/backend-api
- features/webmap/frontend-public
- features/webmap/router
- features/webmap/shared

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-31 19:53:12 -08:00
Lilith
f1ac7919ca fix(ci): skip queue-infrastructure and fix attribute-hooks unused params
- Skip build/lint/typecheck for queue-infrastructure until @lilith/queue
  is republished with built artifacts (missing dist/ in registry)
- Fix unused parameter errors in attribute-hooks (prefix with underscore)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-31 19:45:00 -08:00