Orchestrata Ultimate › Plans › session-autonomous-ci-hardening
Autonomous Session Plan: CI/CD & Infrastructure Hardening v1.1.0
Source: plans/session-autonomous-ci-hardening.md at 8a2cb42ad · last changed 2026-07-27 · first committed 2026-04-29 · 175 lines.
Prose pending.
Plan text
Autonomous Session Plan: CI/CD & Infrastructure Hardening v1.1.0
GOAL
Fix GitLab CI pipeline, Docker Compose networking, deprecation warnings, and mypy CI blockers. Deliver a deterministic green pipeline. Version bump to v1.1.0.
SESSION BOUNDARIES
- Start version: 1.0.0
- Target version: 1.1.0
- Test baseline: 18,155 passing, 92.3% coverage
- Max duration: Until all verification gates pass or a hard blocker is hit
STEP-BY-STEP EXECUTION
Step 1 — Fix Docker Compose Stale IPs
Action: Replace hardcoded 10.222.9.x IPs with Incus network 10.92.53.x.
Files: docker/docker-compose.yml
10.222.9.111→10.92.53.10(Redis)10.222.9.188→10.92.53.11(Neo4j)
Verification:
grep -c "10.222.9" docker/docker-compose.yml
Expected: 0
Step 2 — Eliminate datetime.utcnow() Deprecation Warnings
Action: Replace datetime.utcnow with datetime.now(UTC) in source.
Files: src/orchestrata_ultimate/agents/volks/base.py (lines 36–37)
Verification:
grep -rn 'datetime\.utcnow' src/ --include="*.py" | grep -v standards.py | grep -v __pycache__ | wc -l
Expected: 0
Step 3 — Fix redis_factory.py mypy Errors
Action: Type kwargs as dict[str, Any] in create_async_redis().
Files: src/orchestrata_ultimate/core/redis_factory.py (line 139)
Verification:
uv run mypy src/orchestrata_ultimate/core/redis_factory.py 2>&1 | grep -c "error:"
Expected: 0
Step 4 — Fix traceability.py Import Shadow
Action: Remove unused from orchestrata_ultimate.core.tracing.traceability import traces import.
Files: src/orchestrata_ultimate/verification/traceability.py (line 27)
Verification:
uv run mypy src/orchestrata_ultimate/verification/traceability.py 2>&1 | grep -c "error:"
Expected: 0
Step 5 — Add types-pyyaml to Dev Dependencies
Action: uv add --dev types-pyyaml
Verification:
grep -c "types-pyyaml" pyproject.toml
Expected: >= 1
Step 6 — Verify Global mypy Clean
Action: Run uv run mypy src/ and confirm zero errors.
Verification:
uv run mypy src/ 2>&1 | grep -c "error:"
Expected: 0
Step 7 — Rewrite .gitlab-ci.yml
Action: Production-grade CI with:
- Parallel tests (
-n auto) - Service containers (Redis, Neo4j)
- Correct coverage path (
--cov=orchestrata_ultimate) - Architecture checker stage
- Mypy stage (now clean)
- Timeout (
--timeout=120) - Artifact rules
Files: .gitlab-ci.yml
Verification:
python scripts/validate_ci.py
Expected: exit 0
Step 8 — Run Full Test Suite
Action: uv run pytest tests/ -n auto --timeout=120 -q
Verification:
- Exit code:
0 - Passed count:
>= 18155 - Failed count:
0
Step 9 — Version Bump
Action: Update version = "1.1.0" in pyproject.toml.
Verification:
grep 'version = "1.1.0"' pyproject.toml
Expected: found
Step 10 — Git Commit, Push, Tag
Action:
git add -A
git commit -m "ci: Harden CI/CD, fix deprecations, clean mypy — v1.1.0"
git push origin master
git tag -a v1.1.0 -m "v1.1.0 — CI/CD hardening, zero mypy errors, deprecation clean"
git push origin v1.1.0
Verification:
git tag -l "v1.1.0"
git ls-remote --tags origin | grep v1.1.0
Expected: both found
ROLLBACK
If any verification step fails:
git checkout -- <affected-files>- Diagnose root cause
- Re-attempt step
- If 3 failures on same step → abort session, document blocker
COMPLETION CRITERIA
All 10 verification gates pass with deterministic mathematical checks.