Sequence note: implement #28 before the worker despite its M4 grouping; importer and web routes share repository services.
Sequence note: implement #28 before the worker despite its M4 grouping; importer and web routes share repository services.
## Context
Implement this MVP work package under M3 - Import & Indexing Engine, following the managed-storage decision in #1.
## Acceptance criteria
- [ ] Use PostgreSQL-backed jobs and a separate PHP worker; imports outlive HTTP requests.
- [ ] Claim jobs atomically, serialize filesystem mutations, and detect stale jobs with recoverable states.
- [ ] Restart without duplicate copies or catalog records; test graceful shutdown and idempotent retry.
- [ ] Create models, folders and associated records from confirmed grouping manifest; integrate the catalog repository service when available.
Blocked by: #24, #11, #28, #28
Sequence note: implement #28 before the worker despite its M4 grouping; importer and web routes share repository services.
Sequence note: implement #28 before the worker despite its M4 grouping; importer and web routes share repository services.
keith
added this to the M3 - Import & Indexing Engine milestone 2026-10-10 22:21:49 +00:00
Acceptance reconciliation at c1ef2ee: keeping open. Queue, worker and locking exist. Confirmed manifest and collision/DB-failure replay remain incomplete. Existing success-path tests do not establish full crash recovery. This is a source/test review, not a newly executed crash or restore experiment. Fresh Windows suite: 291 tests, 1801 assertions, 22 skips; lint passes. PostgreSQL fixture success does not waive these feature criteria.
Acceptance reconciliation at c1ef2ee: keeping open. Queue, worker and locking exist. Confirmed manifest and collision/DB-failure replay remain incomplete. Existing success-path tests do not establish full crash recovery. This is a source/test review, not a newly executed crash or restore experiment. Fresh Windows suite: 291 tests, 1801 assertions, 22 skips; lint passes. PostgreSQL fixture success does not waive these feature criteria.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Context
Implement this MVP work package under M3 - Import & Indexing Engine, following the managed-storage decision in #1.
Acceptance criteria
Blocked by: #24, #11, #28, #28
Sequence note: implement #28 before the worker despite its M4 grouping; importer and web routes share repository services.
Sequence note: implement #28 before the worker despite its M4 grouping; importer and web routes share repository services.
Acceptance reconciliation at
c1ef2ee: keeping open. Queue, worker and locking exist. Confirmed manifest and collision/DB-failure replay remain incomplete. Existing success-path tests do not establish full crash recovery. This is a source/test review, not a newly executed crash or restore experiment. Fresh Windows suite: 291 tests, 1801 assertions, 22 skips; lint passes. PostgreSQL fixture success does not waive these feature criteria.