mirror of
https://github.com/azaion/ai-training.git
synced 2026-04-22 07:06:36 +00:00
Update test results directory structure and enhance Docker configurations
- Modified `.gitignore` to reflect the new path for test results. - Updated `docker-compose.test.yml` to mount the correct test results directory. - Adjusted `Dockerfile.test` to set the `PYTHONPATH` and ensure test results are saved in the updated location. - Added `boto3` and `netron` to `requirements-test.txt` to support new functionalities. - Updated `pytest.ini` to include the new `pythonpath` for test discovery. These changes streamline the testing process and ensure compatibility with the updated directory structure.
This commit is contained in:
@@ -3,69 +3,7 @@
|
||||
## Current Step
|
||||
flow: existing-code
|
||||
step: 6
|
||||
name: Refactor
|
||||
status: in_progress
|
||||
name: Run Tests
|
||||
status: failed
|
||||
sub_step: 0
|
||||
retry_count: 0
|
||||
|
||||
## Completed Steps
|
||||
|
||||
| Step | Name | Completed | Key Outcome |
|
||||
|------|------|-----------|-------------|
|
||||
| 1 (sub 0) | Document — Discovery | 2026-03-26 | 21 modules, 8 components identified, dependency graph built |
|
||||
| 1 (sub 1) | Document — Module Docs | 2026-03-26 | 21/21 module docs written in 7 batches |
|
||||
| 1 (sub 2) | Document — Component Assembly | 2026-03-26 | 8 components: Core, Security, API&CDN, Data Models, Data Pipeline, Training, Inference, Annotation Queue |
|
||||
| 1 (sub 3) | Document — System Synthesis | 2026-03-26 | architecture.md, system-flows.md (5 flows), data_model.md |
|
||||
| 1 (sub 4) | Document — Verification | 2026-03-26 | 87 entities verified, 0 hallucinations, 5 code bugs found, 3 security issues |
|
||||
| 1 (sub 5) | Document — Solution Extraction | 2026-03-26 | solution.md with component solution tables, testing strategy, deployment architecture |
|
||||
| 1 (sub 6) | Document — Problem Extraction | 2026-03-26 | problem.md, restrictions.md, acceptance_criteria.md, data_parameters.md, security_approach.md |
|
||||
| 1 (sub 7) | Document — Final Report | 2026-03-26 | FINAL_report.md with executive summary, risk observations, artifact index |
|
||||
| 1 | Document | 2026-03-26 | Full 8-step documentation complete: 21 modules, 8 components, 45+ artifacts |
|
||||
| 2 (sub 1) | Test Spec — Phase 1 | 2026-03-26 | Input data analysis: 100 images + ONNX model, 75% coverage (12/16 criteria), above 70% threshold |
|
||||
| 2 (sub 2) | Test Spec — Phase 2 | 2026-03-26 | 55 test scenarios across 5 categories: 32 blackbox, 5 performance, 6 resilience, 7 security, 5 resource limit. 80.6% AC coverage |
|
||||
| 2 (sub 3) | Test Spec — Phase 3 | 2026-03-26 | Test Data Validation Gate PASSED: all 55 tests have input data + quantifiable expected results. 0 removals. Coverage 80.6% |
|
||||
| 2 (sub 4) | Test Spec — Phase 4 | 2026-03-26 | Generated: run-tests-local.sh, run-performance-tests.sh, Dockerfile.test, docker-compose.test.yml, requirements-test.txt |
|
||||
| 2 | Test Spec | 2026-03-26 | Full 4-phase test spec complete: 55 scenarios, 37 expected result mappings, 80.6% coverage, runner scripts generated |
|
||||
| 3 (sub 1t) | Decompose Tests — Infrastructure | 2026-03-26 | Test infrastructure bootstrap task: pytest config, fixtures, conftest, Docker env, constants patching |
|
||||
| 3 (sub 3) | Decompose Tests — Test Tasks | 2026-03-26 | 11 test tasks decomposed from 55 scenarios, grouped by functional area |
|
||||
| 3 (sub 4) | Decompose Tests — Verification | 2026-03-26 | All 29 covered AC verified, no circular deps, no overlaps, dependencies table produced |
|
||||
| 3 | Decompose Tests | 2026-03-26 | 12 tasks total (1 infrastructure + 11 test tasks), 25 complexity points, 2 implementation batches |
|
||||
| 4 | Implement Tests | 2026-03-26 | 12/12 tasks implemented, 76 tests passing, 4 commits across 4 sub-batches |
|
||||
| 5 | Run Tests | 2026-03-26 | 76 passed, 0 failed, 0 skipped. JUnit XML in test-results/ |
|
||||
|
||||
## Key Decisions
|
||||
- Component breakdown: 8 components confirmed by user
|
||||
- Documentation structure: Keep both modules/ and components/ levels (user confirmed)
|
||||
- Skill modifications: Refactor step made optional in existing-code flow; doc update phase added to refactoring skill
|
||||
- Problem extraction documents approved by user without corrections
|
||||
- Test scope: Cover all components testable without external services (option B). Inference test is smoke-only (detects something, no precision). User will provide expected detection results later.
|
||||
- Fixture data: User provided 100 images + labels + ONNX model (81MB)
|
||||
- Test execution: Two modes required — local (no Docker, primary for macOS dev) + Docker (CI/portable). Both run the same pytest suite.
|
||||
- Tracker: jira (project AZ, cloud 1598226f-845f-4705-bcd1-5ed0c82d6119)
|
||||
- Epic: AZ-151 (Blackbox Tests), 12 tasks: AZ-152 to AZ-163
|
||||
- Task grouping: 55 test scenarios grouped into 11 atomic tasks by functional area, all ≤ 3 complexity points
|
||||
- Refactor approach: Pydantic BaseModel config chosen over env vars / dataclass / plain dict. pydantic 2.12.5 already installed via ultralytics.
|
||||
|
||||
## Refactor Progress (Step 6)
|
||||
Work done so far (across multiple sessions):
|
||||
- Replaced module-level path variables + get_paths/reload_config in constants.py with Pydantic Config(BaseModel) — paths defined once as @property
|
||||
- Migrated all 5 production callers (train.py, augmentation.py, exports.py, dataset-visualiser.py, manual_run.py) to constants.config.X
|
||||
- Fixed device=0 bug in exports.py, fixed total_to_process bug in augmentation.py
|
||||
- Simplified test infrastructure: conftest.py apply_constants_patch reduced to single config swap
|
||||
- Updated 7 test files to use constants.config.X
|
||||
- Rewrote E2E test to AAA pattern: Arrange (copy raw data), Act (production functions only: augment_annotations, train_dataset, export_onnx, export_coreml), Assert (7 test methods)
|
||||
- All 83 tests passing (76 non-E2E + 7 E2E)
|
||||
- Refactor test verification phase still pending
|
||||
|
||||
## Last Session
|
||||
date: 2026-03-27
|
||||
ended_at: Step 6 Refactor — implementation done, test verification pending
|
||||
reason: user indicated test phase not yet completed
|
||||
notes: Pydantic config refactor + E2E rewrite implemented. 83/83 tests pass. Formal test verification phase of refactoring still pending.
|
||||
|
||||
## Retry Log
|
||||
| Attempt | Step | Name | SubStep | Failure Reason | Timestamp |
|
||||
|---------|------|------|---------|----------------|-----------|
|
||||
|
||||
## Blockers
|
||||
- none
|
||||
|
||||
Reference in New Issue
Block a user