Commit graph

29 commits

Author SHA1 Message Date
Lilith
3094dcd84e chore: update readme 2026-01-02 20:58:42 -08:00
Lilith
cf67afbbe1 chore: bump version to 1.2.2 2026-01-02 20:51:35 -08:00
Lilith
70d32943cc chore: prepare release for @lilith/queue 2026-01-02 20:51:35 -08:00
Lilith
3153e49b49 chore: prepare release for @lilith/queue 2026-01-02 20:48:09 -08:00
Lilith
628ab734d2 docs: add comprehensive README with API reference
Document BullMQ queue management utilities including QueueManager,
QueueDashboard, and worker configuration for job processing.

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-02 20:07:09 -08:00
Lilith
134fe53b40 🔖 Bump version to 1.2.1 2026-01-01 19:06:57 -08:00
Lilith
1667289364 Add component tests and data-testid attributes
- Add 58 component tests for admin-frontend UI:
  - QueueCard: 12 tests (name, description, counts, selection, metrics)
  - BulkActionsBar: 16 tests (retry/cancel actions, clean dropdown)
  - ServiceFilter: 7 tests (button rendering, selection, clicks)
  - SearchBar: 12 tests (input, debounce, clear, placeholder)
  - JobStatusTabs: 11 tests (tabs, counts, selection, styling)

- Add data-testid attributes for E2E testing:
  - queue-dashboard, dashboard-header, queue-sidebar
  - queue-main-content, queue-card-{name}, jobs-table-container

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-01 19:04:20 -08:00
Lilith
1d2458f0c0 🔖 Bump version to 1.2.0 2026-01-01 16:48:17 -08:00
Lilith
2f65c6cdb8 Add DX mode, job context, and admin UI components
Backend:
- Add JobContext types for service attribution and filtering
- Add DxModeService for development experience priority elevation
- Add bulk operations: retryAllFailed, cancelPending, cleanByAge
- Add context-aware filtering to getJobs
- Add search jobs endpoint across queues

Frontend:
- Add BulkActionsBar component for bulk job operations
- Add JobStatusTabs component for status filtering
- Add SearchBar component with debouncing
- Add ServiceFilter component (generic, accepts services as prop)
- Add JobDetailPanel slide-over component
- Add useJobDetail and useBulkJobActions hooks
- Add bulk operation types to frontend

Core:
- Add JobContext and EnrichedJobData types
- Add DX mode utilities for priority resolution
- Add BulkOperationResult type

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-01 16:48:00 -08:00
Lilith
bb75fbaa80 CI: Keep @lilith deps, add validation
- Restore @lilith/configs in devDeps (NPM_TOKEN now set)
- Add validation step (typecheck + lint)

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-31 18:50:23 -08:00
Lilith
0e3c3cbd1d 🔧 Fix CI: remove @lilith devDeps, always install
Internal @lilith packages not needed for CI builds.
Install always runs to ensure TypeScript is available.

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-31 18:31:28 -08:00
Lilith
8b4ed5b951 🔧 Revert --prod: devDeps needed for tsc
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-31 18:27:15 -08:00
Lilith
6e2312ebb0 🔧 Use --prod flag to skip devDependencies in CI
Fixes 401 error when fetching unpublished @lilith devDependency packages.

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-31 18:20:50 -08:00
Lilith
257df778b3 🐛 fix: skip pnpm install for packages without runtime deps
Fixes 401 Unauthorized errors when packages have peer dependencies
but no actual runtime dependencies to install.
2025-12-31 18:13:24 -08:00
Lilith
6e22e62f7f 🔧 fix: update CI workflow for Forgejo Actions compatibility
- Remove pnpm/action-setup and setup-node actions (not compatible)
- Use npm install -g pnpm directly (Node.js pre-installed in runner)
- Add strict-ssl=false for internal registry (self-signed cert)
- Move NPM_TOKEN to job level for availability during install
- Add workspace dependency transformation step

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-31 17:57:39 -08:00
Lilith
285de6673a 🔧 migrate to @lilith namespace, remove gitlab-ci.yml
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-31 01:35:24 -08:00
Lilith
62ff55a1ca chore: bump version to 1.1.1 2025-12-31 01:12:35 -08:00
Lilith
1e10dec685 chore: bump version to 1.1.0 2025-12-31 01:07:46 -08:00
Lilith
6f9f61618d fix: use --no-frozen-lockfile for pnpm install 2025-12-31 01:01:02 -08:00
Lilith
7ec0bdfa8e fix: remove pnpm cache option (no lock file) 2025-12-31 00:56:53 -08:00
Lilith
913ea1b0b0 feat: add Forgejo Actions workflow for npm publishing
Reads _ config from package.json to determine build/publish behavior.
2025-12-31 00:17:04 -08:00
Lilith
f9eb7750c8 📝 Update documentation to reflect @lilith/queue package structure
Update import examples and package references throughout documentation
to use the new unified @lilith/queue/* subpath exports.

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-30 20:28:34 -08:00
Lilith
7a162b4b8a ♻️ Update imports from @transquinnftw/queue-* to @lilith/queue/*
Migrate all internal imports to use the new unified package paths:
- @transquinnftw/queue-core → @lilith/queue/core
- @transquinnftw/queue-nestjs → @lilith/queue/nestjs
- @transquinnftw/queue-ml → @lilith/queue/ml
- @transquinnftw/queue-reporting → @lilith/queue/reporting

Also fix cron type compatibility issue in base-scheduler.ts.

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-30 20:28:26 -08:00
Lilith
822641ea0a ♻️ Consolidate @queue into unified @lilith/queue package
Merge all subpackages into single npm package with subpath exports:
- @lilith/queue/core - Core types, constants, and utilities
- @lilith/queue/nestjs - NestJS integration
- @lilith/queue/ml - ML batching strategies
- @lilith/queue/reporting - TypeORM entities and analytics
- @lilith/queue/bull-adapter - BullMQ adapter
- @lilith/queue/admin/backend - Admin API
- @lilith/queue/admin/frontend - React components

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-30 20:28:16 -08:00
Lilith
3a9c5c13f8 🔥 Remove eslint config files that depended on external package
Removed eslint.config.cjs files that required @transquinnftw/configs.
ESLint will be reconfigured separately if needed.

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-30 20:28:07 -08:00
Lilith
b40adefd11 🔥 Remove individual subpackage package.json files
Part of consolidation into unified @lilith/queue package with subpath exports.

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-30 20:27:54 -08:00
Lilith
4ca9d324fc 🔧 Add unified TypeScript and Vitest configuration
- Create tsconfig.base.json with path aliases for @lilith/queue/* imports
- Add vitest.config.ts with workspace projects for proper test environments
- Update all subpackage tsconfigs to extend the base config

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-30 20:27:44 -08:00
Lilith
23d7871f5f chore: migrate from GitLab to Forgejo
- Update all package.json publishConfig to use forge.nasty.sh
- Remove GitLab CI configuration
- Set git remote to forge.nasty.sh/lilith/queue

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-30 19:09:02 -08:00
Lilith
8c2c6f4d85 feat: consolidate @queue packages into unified monorepo
Restructure the queue ecosystem from fragmented per-package git repos
into a single unified repository for coordinated versioning and simpler
maintenance.

Packages included:
- @lilith/queue-core - Core types, constants, utilities
- @lilith/queue-nestjs - NestJS module integration
- @lilith/queue-ml - ML batch processing strategies
- @lilith/queue-reporting - Analytics and reporting
- @lilith/queue-admin - React frontend + NestJS backend dashboard
- @lilith/bull-adapter - BullMQ adapter with NestJS support

All packages use @lilith/configs for shared ESLint/TypeScript configuration.

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

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