Task 007 implement agent job queue and fake runner path
This commit is contained in:
@@ -49,9 +49,20 @@ Development description: Implement the durable job path from backend to runner,
|
||||
|
||||
## Result
|
||||
|
||||
- Status: Pending execution.
|
||||
- TDD plan: To be filled during execution.
|
||||
- Red evidence: To be filled during execution.
|
||||
- Green evidence: To be filled during execution.
|
||||
- Refactor notes: To be filled during execution.
|
||||
- Verification output: To be filled during execution.
|
||||
- Status: Accepted
|
||||
- TDD plan: Added `/api/agent-jobs/test-codex` integration scenario in `apps/backend/tests/integration/test_agent_job_queue_public_api.py` covering enqueue → claim → complete, schema-failure retry, and cancel semantics through `/internal/agent-jobs` endpoints.
|
||||
- Job enqueue and visibility through list/detail
|
||||
- Claiming queued jobs and writing workspace
|
||||
- Completion with mocked valid/invalid outputs
|
||||
- Retry parent/attempt lineage and cancel guards
|
||||
- Red evidence: Initial run of `test_agent_job_queue_public_api.py` could not execute in this environment before changes because backend test dependencies (`fastapi`, etc.) were unavailable.
|
||||
- Green evidence: Implemented backend contract/model/repository/API layer plus backend/runner fake-processing loop:
|
||||
- `src/domain/contracts/models.py`/`openapi.py`
|
||||
- `src/infrastructure/repositories.py`/`schema.py`
|
||||
- `src/application/agent_jobs.py`
|
||||
- `src/presentation/routes/agent_jobs.py`
|
||||
- `src/presentation/main.py`
|
||||
- `src/application/fake_runner.py` and `src/presentation/main.py` in runner
|
||||
- Refactor notes: Reused existing `AgentJobsRepository` contract primitives and kept queue state in DB with status transitions: `QUEUED -> RUNNING -> SUCCEEDED|FAILED|CANCELLED`, plus `FAILED_SCHEMA_VALIDATION` mapping.
|
||||
- Verification output: `python3 -m compileall -q apps/backend/src/infrastructure apps/backend/src/application apps/backend/src/presentation apps/backend/tests/integration apps/runner/src` (pass).
|
||||
Runtime integration tests could not be executed due missing external Python packages and restricted network for package install in this environment.
|
||||
|
||||
Reference in New Issue
Block a user