This document records the concrete runtime contract behind the GWT language in the project.
| State | Owner | Allowed Inputs | Allowed Side Effects |
|---|---|---|---|
| Long-term memory | IngestionPort + MemoryRepositoryPort |
gwt_store, persisted query results, linked records |
Store and vector index writes through ingestion only. |
| Preconscious buffer | SelectionBroadcastCycle |
stored items, admitted query matches, evicted workspace items, linked conscious targets | Rankable candidates only; items are not globally visible until competition admits them. |
| Conscious workspace | GlobalWorkspace through SelectionBroadcastCycle |
competition winners above GWT_MIN_ACTIVATION |
Broadcast formatting, broadcast history, state updates to CONSCIOUS. |
| Broadcast bus | BroadcastBus through SelectionBroadcastCycle |
latest BroadcastRecord plus task context |
Proposal reports only; subscribers do not mutate workspace or storage. |
CompetitionEngine gates new workspace admissions with
GWT_MIN_ACTIVATION. Below-threshold candidates remain preconscious.AttentionController applies bus proposals through BusAdmissionPolicy.resolve_answer proposals below min_resolve_priority are skipped.query_memory proposals below min_query_priority are skipped.flag_contradiction and ask_followup are metadata side effects. They do
not admit memory directly.BroadcastContext.SubscriberReport with ok, timeout, or
error status.After each broadcast, conscious workspace items activate explicit linked_ids
into the preconscious buffer for the next cycle. This is the runtime reentry
path for graph-like memory: linked facts become eligible for the next
competition without parsing the rendered broadcast text.
src/ modules must not import tests.benchmarks.tests/benchmarks/.BENCHMARK_ATTEND_BROADCAST_BUS=0/1 isolates bus contribution for attend
evaluations.