# configuration/constants/architecture.constants.ts

> 111 lines of code and 4 definitions.

Tree: Site tree
Language: typescript
Layer: infrastructure
Canonical: https://banes-lab.com/anatomy/tree#file-configuration-constants-architecture-constants-ts
Source text: https://banes-lab.com/assets/sources/source.9fc69c2d241de81e77975ac20307af152a5d86fb3af6b4cd5d716822ef3310ef.generated.txt

## Definitions

- `LAYER_SEEDS` (lexical_declaration, line 34)
- `SCALE_GRAPH_SECTIONS` (lexical_declaration, line 53)
- `GLOSSARY_GRAPH_SECTIONS` (lexical_declaration, line 96)
- `ARCHITECTURE_GRAPH` (lexical_declaration, line 105, exported)

## Source

```typescript
import {
    AUTHOR_CONCEPT,
    CANON_CONCEPT,
    CEILING_CONCEPT,
    CONTROL_CONCEPT,
    DECAY_CONCEPT,
    DETECT_CONCEPT,
    DETERMINISM_SCALE_CONCEPT,
    FORCING_CONCEPT,
    GLOSSARY_CONCEPT,
    GRAPH_CONCEPT,
    GROUPING_CONCEPT,
    LABOUR_CONCEPT,
    MODEL_SYSTEM_CONCEPT,
    PREDICATE_CONCEPT,
    REDUCTION_CONCEPT,
    SCALE_CONCEPT,
} from "#core/ids/concept.ids";
import {
    AUTHOR_SECTION_ID,
    CEILING_SECTION_ID,
    DETERMINISM_SECTION_ID,
    FORCING_SECTION_ID,
    GLOSSARY_SECTION_ID,
    MAP_SECTION_ID,
    MODEL_SYSTEM_SECTION_ID,
    REDUCTION_SECTION_ID,
} from "#core/ids/architecture.ids";
import { COVERAGE_GRAPH_SECTIONS, DECAY_GRAPH_SECTIONS } from "#configuration/constants/failure.constants";
import type { ContentGraph, GraphSection } from "#types/methodology.types";
import { MODEL_GRAPH_SECTIONS, PRINCIPLE_GRAPH_SECTIONS } from "#configuration/constants/canon.constants";
import { ARCHITECTURE_PAGE } from "#core/ids/page.ids";

const LAYER_SEEDS = [
    "structural-core",
    "computation-core",
    "resource-core",
    "execution-core",
    "human-factors",
    "evolution-principles",
    "security-core",
    "performance-core",
    "contracts-core",
    "causality-core",
    "observability",
    "extensibility-core",
    "declarative-core",
    "domain-modeling",
    "design-patterns-core",
    "correctness-core",
];

const SCALE_GRAPH_SECTIONS: Readonly<Record<string, GraphSection>> = {
    [FORCING_SECTION_ID]: {
        requires: [GRAPH_CONCEPT, SCALE_CONCEPT],
        teaches: [FORCING_CONCEPT],
        traces: [
            "coupling.invariant-the-count-is-derived-from-a-partition-and-never-chosen-independently-of-it",
            "coupling.invariant-the-floor-counts-the-partition-s-nodes",
        ],
    },
    [CEILING_SECTION_ID]: {
        requires: [FORCING_CONCEPT],
        teaches: [CEILING_CONCEPT],
        traces: [
            "coupling.invariant-the-ceiling-is-set-by-the-worst-fan-in-not-by-the-count",
            "coupling.invariant-fan-in-is-measured-and-never-declared",
        ],
    },
    [REDUCTION_SECTION_ID]: {
        requires: [FORCING_CONCEPT, CEILING_CONCEPT],
        teaches: [REDUCTION_CONCEPT],
        traces: ["coupling.invariant-fan-in-is-measured-and-never-declared", "no_unbounded"],
    },
    [AUTHOR_SECTION_ID]: {
        requires: [PREDICATE_CONCEPT, DECAY_CONCEPT, CONTROL_CONCEPT, LABOUR_CONCEPT, DETECT_CONCEPT],
        teaches: [AUTHOR_CONCEPT],
        traces: [
            "profile.the-gate-holds-the-line-not-discipline",
            "auto_fix_on_by_default",
            "findings_are_machine_actionable",
        ],
    },
    [DETERMINISM_SECTION_ID]: {
        requires: [AUTHOR_CONCEPT],
        teaches: [DETERMINISM_SCALE_CONCEPT],
        traces: ["determinism_is_the_one_axis", "no_hidden_nondeterminism"],
    },
    [MODEL_SYSTEM_SECTION_ID]: {
        requires: [AUTHOR_CONCEPT, DETERMINISM_SCALE_CONCEPT],
        teaches: [MODEL_SYSTEM_CONCEPT],
        traces: ["no_unvalidated_input", "no_broad_privilege", "correctness-core"],
    },
};

const GLOSSARY_GRAPH_SECTIONS: Readonly<Record<string, GraphSection>> = {
    [MAP_SECTION_ID]: { narrative: true, requires: [], teaches: [], traces: [] },
    [GLOSSARY_SECTION_ID]: {
        requires: [CANON_CONCEPT, GROUPING_CONCEPT],
        teaches: [GLOSSARY_CONCEPT],
        traces: LAYER_SEEDS,
    },
};

export const ARCHITECTURE_GRAPH: ContentGraph = {
    page: ARCHITECTURE_PAGE,
    sections: {
        ...MODEL_GRAPH_SECTIONS,
        ...PRINCIPLE_GRAPH_SECTIONS,
        ...DECAY_GRAPH_SECTIONS,
        ...COVERAGE_GRAPH_SECTIONS,
        ...SCALE_GRAPH_SECTIONS,
        ...GLOSSARY_GRAPH_SECTIONS,
    },
};
```
