import { AGENT_CONCEPT, CONTRACT_CONCEPT, COORDINATION_CONCEPT, DERIVED_CONCEPT, DUPLICATE_CONCEPT, GATE_CONCEPT, HUMAN_CONCEPT, INVARIANT_CONCEPT, LABOUR_CONCEPT, LOOP_CONCEPT, QUESTION_CONCEPT, RULE_CONCEPT, SURFACE_CONCEPT, TEMPLATE_CONCEPT, TURN_CONCEPT, VERIFIER_CONCEPT, WAIT_CONCEPT, } from "#core/ids/concept.ids"; import { AGENT_SECTION_ID, COORDINATION_SECTION_ID, HUMAN_SECTION_ID, INVARIANT_SECTION_ID, SURFACE_SECTION_ID, TURN_SECTION_ID, WAIT_SECTION_ID, } from "#core/ids/coordination.ids"; import type { GraphSection } from "#types/methodology.types"; export const COLLABORATE_GRAPH_SECTIONS: Readonly> = { [HUMAN_SECTION_ID]: { requires: [LABOUR_CONCEPT, RULE_CONCEPT, QUESTION_CONCEPT], teaches: [HUMAN_CONCEPT], traces: [ "feedback_capture_protocol", "user_contradiction_halts", "ask_via_tool_only", "recommend_never_abstain", "no_self_assessed_budget", "precedence_order", "two_voices", ], }, [AGENT_SECTION_ID]: { requires: [LOOP_CONCEPT, CONTRACT_CONCEPT, TEMPLATE_CONCEPT, VERIFIER_CONCEPT], teaches: [AGENT_CONCEPT], traces: [ "agent-generation-concern", "context-verification-concern", "agent_declares_its_participation", "generation_gates_are_not_execution_gates", "descriptive_is_not_full_shaped", ], }, [COORDINATION_SECTION_ID]: { requires: [GATE_CONCEPT, DERIVED_CONCEPT], teaches: [COORDINATION_CONCEPT], traces: [ "friction_is_a_missing_mechanism", "workflow-orchestration-concern", "letter_is_indexed_before_it_is_used", "addressee_resolves_to_an_active_agent", "projection_is_one_line", ], }, [SURFACE_SECTION_ID]: { requires: [COORDINATION_CONCEPT], teaches: [SURFACE_CONCEPT], traces: [ "board_is_current_truth_only", "board_is_read_whole", "a_venue_accumulates_and_the_board_is_swept", "commuting_writes_replay_rather_than_refuse", "the_handler_removes_the_item", "agent_block_is_delimited", "judgement_item_closes_by_acknowledger", "reference_is_typed_and_its_vocabulary_is_closed", "open_discussion_blocks_the_build", "a_venue_carries_its_own_fields", "a_position_is_posted_through_the_tool", "an_undecided_half_names_its_receiver", "a_venue_is_absorbed_before_it_is_archived", "write_is_an_edit_until_proven_absent", ], }, [WAIT_SECTION_ID]: { requires: [SURFACE_CONCEPT], teaches: [WAIT_CONCEPT], traces: [ "a_coordination_read_is_never_filtered", "item_span_is_addressable", "whole_file_rewrite_is_witnessed", "blocked_waits_never_halts", "mutation_preview_first", "removal_declares_its_extraction", "a_run_that_cannot_replace_the_aggregate_streams", "report_is_the_state", ], }, [TURN_SECTION_ID]: { requires: [WAIT_CONCEPT], teaches: [TURN_CONCEPT], traces: [ "never_end_a_turn_to_wait", "report_to_agents_never_to_owner", "changed_means_read_then_act", "quiet_is_not_permission_to_report", "queue_is_explicit", "clear_unblocked_work_is_performed_rather_than_routed", "undecided_routes_to_an_agent", "a_ruling_is_the_seats_and_the_owner_signature_is_automatic", ], }, [INVARIANT_SECTION_ID]: { requires: [COORDINATION_CONCEPT, DUPLICATE_CONCEPT], teaches: [INVARIANT_CONCEPT], traces: [ "coupling.invariant-fan-in-is-measured-and-never-declared", "substrate.a-declared-lifetime-is-read-never-inferred-from-a-path", "substrate.one-aggregate-overwritten-or-no-aggregate-at-all", "gate_that_saturates_is_not_built", ], }, };