rayhpeng 597a11372e fix(feedback): remove order-dependent import and stale layout pointers
model.py imported its exceptions from the package __init__, which itself
imports model -- a cycle that only resolved because __init__ happens to
import exceptions first. Import them from the exceptions submodule
directly, matching service.py, so reordering __init__ can never break
collection.

Also update the two module docstrings that still pointed readers at the
deleted app/infra/ layout and the old deps.py wiring: adapters live in
app/adapters/{context}/ and wiring happens in the composition root,
app/composition.py::build_domain_services.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-30 11:12:31 +08:00

11 lines
524 B
Python

"""Hexagonal inner ring: domain models, ports, and application services.
Every package under this namespace is one bounded context laid out as
`{model,ports,service}.py`. Code here has zero infrastructure
dependencies -- no sqlalchemy/fastapi/pydantic, no `app.*`, and no
harness infrastructure modules (enforced in CI by
`tests/test_harness_domain_purity.py`). Adapters implementing the ports
live in `app/adapters/{context}/`; wiring happens only in the composition
root, `app/composition.py::build_domain_services`.
"""