Skip to content

Add an asynchronous background job manager #51

Description

@sodejm

Title: Add an asynchronous background job manager
Type: Architecture
Estimated Size: Large
Description: Introduce a job manager that executes existing blocking GEDCOM, RootsMagic, database, OCR, and provider operations outside the prompt event loop, initially using bounded worker threads where necessary. Track job IDs, state, timestamps, results, and failures so the REPL remains responsive.
Acceptance Criteria:

  • Long-running service calls do not block prompt redraw, keyboard handling, or live output.
  • Users can inspect running, completed, failed, and cancelled jobs.
  • Mutating operations are serialized per target resource to prevent concurrent writes to the same GEDCOM, manifest, configuration, or database artifact.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions