ATM

SCHEME DE ARHITECTURĂ

Fluxuri, porți și tranziții

Scheme conectate direct din arhitectura bibliotecii. Urmăriți săgețile: de la hartă și stare la secțiunea agentului, verificare deterministă și rezultat.

Harta modulelor

Fiecare fișier depinde doar de cele dinaintea lui în lanț — fără dependențe circulare, fără cuplaje ascunse.

primitives.py

12 primitive, 5 etaje

state.py

legare + stare activă + felie

guards.py + logic.py

9 gardieni, 6 operatori

traversal.py

motor de pași, 10 rezultate declarate

Peste toate astea stau examples.py (5 scenarii livrate) și verify.py (22 de verificări automate) — nu afirmații, cod pe care îl rulezi tu:

python -m fpf_thinking_map.verify
python -m fpf_thinking_map.examples
Fluxul arhitecturii completeATM · ARCHITECTURE
SemanticMapdomeniu finitRuntimeBindingstare + doveziThinkingMapTraversalmotor deterministSecțiune localămove · gate · rolesLLM / Agentpropune mișcareaGardieni + logicăverifică legalitateaContract răspunsieșire structuratăRezultat tipizatCONTINUE / ABSTAINTranziție separatămodifică stareabuclă controlată de stare
Decizia unui singur pasATM · ARCHITECTURE
step()increment TTLContext activ?CHANGE_FRAMELogică consistentă?ABSTAIN9 gardieniconstrângeri fermeDovezi suficiente?COLLECT_EVIDENCEMișcare autorizatăCONTINUE / BRIDGE / IDLECHANGE_FRAMEfără contextABSTAINcontradicțieCOLLECT_EVIDENCEpoartă incompletăNONONOcolectare → următorul apel step()
Compoziția celor 6 operatoriATM · ARCHITECTURE
EvidenceFreshGatePassesRoleActiveRiskAboveTransitionAvailableIsStateANDNOTIMPLIESIFFXORORFapte informativeHINT / WARNAcțiuni propuseROUTE / BLOCKIncompatibilitatecontradicție găsităconsistency_check()exclusiv, fără contradicțiiABSTAINContinuă la gardieni
Ciclul de viață TTL al doveziiATM · ARCHITECTURE
CURRENTage < TTLSTALEage ≥ TTLEXPIREDage ≥ 2×TTLstep_counter ↑step_counter ↑dovadă nouă / revalidare

Etajele semantice și expirarea lor

Nimic nu e „memorie" pe termen nelimitat, în afară de structura de la etajul 0. Restul are un ceas propriu, iar rata lui nu e aceeași peste tot.

Floor 0 — STRUCTURAL

ContextPrimitive, ContextBridge, RolePrimitive, TransitionPrimitive, definiția porții

TTL: ∞ — nu expiră niciodată
Floor 1 — BINDING

Alocare de rol, angajament, plan de lucru

TTL: 10 pași
Floor 2 — EVIDENTIARY

Dovadă, tuplul de încredere (fidelitate × relevanță)

TTL: max 1, F×R×8 pași
Floor 3 — OPERATIONAL

Act de vorbire, lucru, evaluarea porții

TTL: 2 pași
Floor 4 — PUBLICATION

Publicare

TTL: moștenit din sursă

Zece rezultate declarate, șapte vii

Motorul declară 10 tipuri de rezultat. 6 sunt accesibile din step() — calea operațională obișnuită. ESCALATE vine doar din attempt_bridge(), când o punte nu are licența necesară pentru riscul implicat. BRIDGE e „viu", dar doar ca anunț — înfăptuirea reală e un apel separat, licențiat aparte.

CONTINUEliveABSTAINliveCOLLECT_EVIDENCEliveCHANGE_FRAMEliveIDLEliveESCALATEliveBRIDGEdoar consultativASKdeclarat, neatinsPUBLISHdeclarat, neatinsREVISE_PLANdeclarat, neatins

ASK, PUBLISH și REVISE_PLAN sunt declarate în OutcomeKind și numite în docstring-ul modulului — dar niciun cod nu le întoarce încă. Nu e un bug ascuns: e verificat direct în cod, nu doar presupus din documentație, și e scris aici ca atare.

ARCHITECTURE.md — sursa tehnică ↗