Skip to content

Module Map

This page shows every domain module and shared service, their dependency relationships, and their current implementation status. Status is read from the source files — nothing is invented here.

Dependency graph

Arrows mean "depends on". Dashed arrows indicate reporting/output relationships.

graph LR
    subgraph DOM_LCA ["Domain: lca/"]
        A1A3["a1_a3"]
        A4["a4"]
        A5["a5"]
        B4["b4"]
        B6["b6"]
        C1["c1"]
        C2["c2"]
        C3["c3"]
        C4["c4"]
        D["d"]
    end

    subgraph DOM_OTHER ["Domain: other"]
        QTY["quantities"]
        THERM["thermal"]
        ENERGY["energy"]
    end

    subgraph SVC ["services/"]
        PROXY["proxy_engine"]
        PEDIGREE["pedigree"]
        INTERP["interpolation"]
        UNCERT["uncertainty"]
        REPORT["reporting"]
    end

    QTY --> A1A3
    QTY --> A4
    QTY --> A5
    QTY --> B4
    QTY --> B6
    QTY --> C1
    QTY --> C2
    QTY --> C3
    QTY --> C4
    QTY --> D

    PEDIGREE --> PROXY
    INTERP --> PROXY
    PROXY --> A1A3
    PROXY --> A4

    THERM --> ENERGY
    ENERGY --> B6

    UNCERT --> A1A3
    UNCERT --> A4
    UNCERT --> A5
    UNCERT --> B4
    UNCERT --> B6
    UNCERT --> C1
    UNCERT --> C2
    UNCERT --> C3
    UNCERT --> C4
    UNCERT --> D

    REPORT -.->|"EN 15978 §9"| A1A3

Status table

All modules are currently stub (raises NotImplementedError or contains only a # TODO placeholder). No module has reached parity-verified status.

Domain modules

Module Path Status Phase Parity source
quantities domains/quantities/ stub Phase 1 1a_boq_input_lca.xlsx
lca.a1_a3 domains/lca/a1_a3.py stub Phase 1 2_lca_vn.xlsx — A1–A3 sheet
lca.a4 domains/lca/a4.py stub Phase 1 2_lca_vn.xlsx — A4 sheet
lca.a5 domains/lca/a5.py stub Phase 1 2_lca_vn.xlsx — A5 sheet
lca.b4 domains/lca/b4.py stub Phase 2 2_lca_vn.xlsx — B4 sheet
lca.b6 domains/lca/b6.py stub Phase 2 2_lca_vn.xlsx — "B1" sheet (mislabelled)
lca.c1 domains/lca/c1.py stub Phase 2 2_lca_vn.xlsx — C1 sheet
lca.c2 domains/lca/c2.py stub Phase 2 2_lca_vn.xlsx — C2 sheet
lca.c3 domains/lca/c3.py stub Phase 2 2_lca_vn.xlsx — C3 sheet
lca.c4 domains/lca/c4.py stub Phase 2 2_lca_vn.xlsx — C4 sheet
lca.d domains/lca/d.py stub Phase 2 2_lca_vn.xlsx — D sheet
thermal domains/thermal/ stub Phase 2 1b_thermal_properties.xlsx
energy domains/energy/ stub Phase 2 1c_energetic_analysis.xlsx

Shared services

Service Path Status Phase Spec doc
proxy_engine services/proxy_engine.py stub Phase 1
pedigree services/pedigree.py stub Phase 1 Pedigree / DQI
interpolation services/interpolation.py stub Phase 2 METHODOLOGY.md §5a
uncertainty services/uncertainty.py stub Phase 2 Uncertainty
reporting services/reporting.py stub Phase 3

Keeping this table current

Per CLAUDE.md, every new domain module or service session must update this table. Status moves from stub → implemented → parity-verified as work completes.