# configuration/constants/release.constants.ts

> 56 lines of code and 1 definition.

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

## Definitions

- `SHIP_GRAPH_SECTIONS` (lexical_declaration, line 20, exported)

## Source

```typescript
import {
    CHAIN_CONCEPT,
    DEPLOY_CONCEPT,
    DETERMINISM_CONCEPT,
    GAP_CONCEPT,
    GATE_CONCEPT,
    ONBOARDING_CONCEPT,
    RETIRED_CONCEPT,
    SCALE_CONCEPT,
} from "#core/ids/concept.ids";
import {
    CHAIN_SECTION_ID,
    DEPLOY_SECTION_ID,
    GAP_SECTION_ID,
    RETIRED_SECTION_ID,
    SCALE_SECTION_ID,
} from "#core/ids/release.ids";
import type { GraphSection } from "#types/methodology.types";

export const SHIP_GRAPH_SECTIONS: Readonly<Record<string, GraphSection>> = {
    [CHAIN_SECTION_ID]: {
        requires: [GATE_CONCEPT],
        teaches: [CHAIN_CONCEPT],
        traces: [
            "one_entry_point_staged_pipeline",
            "stage_order_is_load_bearing",
            "governance_governs_itself",
            "bypass_is_iteration_only",
            "report_contract",
        ],
    },
    [SCALE_SECTION_ID]: {
        requires: [],
        teaches: [SCALE_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",
            "coupling.invariant-the-ceiling-is-set-by-the-worst-fan-in-not-by-the-count",
            "scaling_doc_maintenance",
        ],
    },
    [DEPLOY_SECTION_ID]: {
        requires: [CHAIN_CONCEPT],
        teaches: [DEPLOY_CONCEPT],
        traces: ["build_output_ssot", "https_only_never_http", "env_only_secrets"],
    },
    [RETIRED_SECTION_ID]: {
        requires: [DETERMINISM_CONCEPT],
        teaches: [RETIRED_CONCEPT],
        traces: ["performance-core", "optimisation_follows_a_measurement", "bounded_complexity", "no_authored_counts"],
    },
    [GAP_SECTION_ID]: {
        requires: [ONBOARDING_CONCEPT],
        teaches: [GAP_CONCEPT],
        traces: ["slot_absence_is_honoured", "uncertainty_is_stated", "absence_is_measured_never_inferred"],
    },
};
```
