import { BOUNDARY_TENSION_CONCEPT, CANON_CONCEPT, CORE_CONCEPT, DEFINITION_CONCEPT, DIRECTION_CONCEPT, EXECUTION_CONCEPT, GRAPH_CONCEPT, GROUPING_CONCEPT, KIND_CONCEPT, RESOLUTION_MECHANISM_CONCEPT, SPINE_CONCEPT, STRUCTURAL_CONCEPT, } from "#core/ids/concept.ids"; import { CANON_SECTION_ID, CORE_SECTION_ID, DEFINITION_SECTION_ID, DIRECTION_SECTION_ID, EXECUTION_SECTION_ID, GRAPH_SECTION_ID, GROUPING_SECTION_ID, MECHANISM_SECTION_ID, RECORD_KIND_SECTION_ID, SPINE_SECTION_ID, STRUCTURAL_SECTION_ID, TENSION_SECTION_ID, } from "#core/ids/architecture.ids"; import type { GraphSection } from "#types/methodology.types"; export const MODEL_GRAPH_SECTIONS: Readonly> = { [GRAPH_SECTION_ID]: { requires: [], teaches: [GRAPH_CONCEPT], traces: ["profile.the-system-describes-itself", "relations_are_graphs"], }, [DEFINITION_SECTION_ID]: { requires: [GRAPH_CONCEPT], teaches: [DEFINITION_CONCEPT], traces: ["profile.how-i-reason", "derive_before_declare"], }, [SPINE_SECTION_ID]: { requires: [GRAPH_CONCEPT], teaches: [SPINE_CONCEPT], traces: ["concern_type_placement", "module_relocation_first", "module_boundary_index"], }, [DIRECTION_SECTION_ID]: { requires: [SPINE_CONCEPT], teaches: [DIRECTION_CONCEPT], traces: ["engine_domain_direction", "zero_cross_module_reachin"], }, }; export const PRINCIPLE_GRAPH_SECTIONS: Readonly> = { [CANON_SECTION_ID]: { requires: [GRAPH_CONCEPT, DEFINITION_CONCEPT], teaches: [CANON_CONCEPT], traces: ["canonical_ontology_vocabulary", "architectural-relationship-algebra"], }, [RECORD_KIND_SECTION_ID]: { requires: [CANON_CONCEPT], teaches: [KIND_CONCEPT], traces: ["design-patterns-core", "architecture-anti-pattern"], }, [GROUPING_SECTION_ID]: { requires: [CANON_CONCEPT, KIND_CONCEPT, SPINE_CONCEPT], teaches: [GROUPING_CONCEPT], traces: [ "security-core", "performance-core", "correctness-core", "extensibility-core", "declarative-core", "contracts-core", "causality-core", "observability", "domain-modeling", "evolution-principles", "human-factors", ], }, [CORE_SECTION_ID]: { requires: [CANON_CONCEPT, GROUPING_CONCEPT], teaches: [CORE_CONCEPT], traces: [ "computation-core", "resource-core", "resource_lifecycle_contract", "bounded_cache_contract", "immutable_computation", "no_unbounded", "no_asymmetric", "no_mutable", ], }, [EXECUTION_SECTION_ID]: { requires: [CORE_CONCEPT], teaches: [EXECUTION_CONCEPT], traces: [ "execution-core", "event_emission", "ordinal_time", "append_only_history", "no_implicit", "no_callbacks", "no_retraction", "no_timestamps", ], }, [STRUCTURAL_SECTION_ID]: { requires: [CORE_CONCEPT, EXECUTION_CONCEPT], teaches: [STRUCTURAL_CONCEPT], traces: ["structural-core", "errors_as_language", "no_silent", "no_hidden", "no_discipline"], }, [TENSION_SECTION_ID]: { requires: [CANON_CONCEPT, CORE_CONCEPT], teaches: [BOUNDARY_TENSION_CONCEPT], traces: ["atomic-boundary", "rule_conflict_resolves_architecturally"], }, [MECHANISM_SECTION_ID]: { requires: [BOUNDARY_TENSION_CONCEPT], teaches: [RESOLUTION_MECHANISM_CONCEPT], traces: ["no_sync_cross_boundary", "no_distributed_2pc", "no_partial_commit"], }, };