Skip to content

Add clean-architecture package scaffolding (issue #53)#68

Merged
Gonza10V merged 1 commit into
full_buildfrom
codex/create-clean-architecture-scaffolding
May 5, 2026
Merged

Add clean-architecture package scaffolding (issue #53)#68
Gonza10V merged 1 commit into
full_buildfrom
codex/create-clean-architecture-scaffolding

Conversation

@Gonza10V
Copy link
Copy Markdown
Contributor

@Gonza10V Gonza10V commented May 5, 2026

Motivation

  • Provide the package structure required by the clean-architecture rewrite (ADR-001 / ARCHITECTURE.md) so future milestones can implement domain contracts, planners, stages, execution, adapters, and reporting without changing the root package name buildcompiler.
  • Keep the change strictly scaffolding-only: no behavior, no compatibility wrappers, and no optional automation dependencies imported from core packages.

Description

  • Added package markers (__init__.py) for the new clean-architecture layout: api, domain, planning, execution, stages, sbol, inventory, adapters, adapters.pudu, adapters.opentrons, and reporting under src/buildcompiler/.
  • Added a small import smoke test tests/test_package_scaffolding.py that imports each new package to validate that core imports resolve without pulling optional automation dependencies.
  • All new __init__.py files are minimal placeholders (module docstrings only) to avoid introducing behavior or external dependencies.

Testing

  • Ran PYTHONPATH=src python -c "import buildcompiler" and PYTHONPATH=src python -c "import buildcompiler.api; import buildcompiler.domain; import buildcompiler.planning; import buildcompiler.execution; import buildcompiler.stages; import buildcompiler.sbol; import buildcompiler.inventory; import buildcompiler.adapters; import buildcompiler.adapters.pudu; import buildcompiler.adapters.opentrons; import buildcompiler.reporting", both of which succeeded (imports resolved from src).
  • Ran PYTHONPATH=src pytest tests/test_package_scaffolding.py and the single import-smoke test passed (1 passed).
  • Attempted uv run ruff check . but the run failed during environment preparation due to a network/git fetch error for an optional dependency (SBOLInventory), so uv-based linting could not complete in this environment; running ruff check . without uv was attempted but revealed pre-existing lint issues outside the scope of this scaffolding PR.
  • Assumptions and follow-up: local import validation with PYTHONPATH=src is acceptable for this scaffolding step; next work items are issue [ISSUE-02] Implement domain enums and result dataclasses #54 (domain enums/dataclasses) followed by [ISSUE-03] Implement BuildOptions option groups #55 (BuildOptions) and no behavioral work is included here.

Codex Task

@Gonza10V Gonza10V merged commit 35ff52d into full_build May 5, 2026
0 of 4 checks passed
@Gonza10V Gonza10V deleted the codex/create-clean-architecture-scaffolding branch May 5, 2026 14:44
@Gonza10V
Copy link
Copy Markdown
Contributor Author

Gonza10V commented May 5, 2026

closes #52

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant