mirror of
https://github.com/bytedance/deer-flow.git
synced 2026-08-05 12:28:37 +00:00
Adopts the layout feedback landed in cb49dd67: secondary adapters live under `app/adapters/<context>/`, one file per port, the file named after the port in snake_case with the technology carried by the class name. `app/infra/` is now gone entirely. The rename also separates two meanings of "run" that shared one filename space: `run_sql.py` held `ScheduledRun` (an execution record), while the `run_launcher.py` still to come deals in Gateway runs. task_sql.py -> scheduled_task_repository.py run_sql.py -> scheduled_run_repository.py spec_mapping.py -> spec_mapping.py (implements no port, so no rename) Both SQL adapters now carry the `Secondary adapter (owned persistence)` docstring marker -- this context owns both tables and writes its own queries. `spec_mapping` says instead that it is a boundary mapping and names its two callers. The package `__init__.py` is empty, so imports go through the full path and a class's home file stays unambiguous. Pure move: every top-level symbol was compared against its pre-move original by AST dump (docstrings excluded), plus a separate per-class method-name comparison, since a whole-class dump reports a docstring edit and a renamed method the same way. Also repoints three docstrings and one diagram that still named the deleted `app/infra/` path.
10 lines
470 B
Python
10 lines
470 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/`; wiring happens only in `app/gateway/deps.py`.
|
|
"""
|