tipzakon
statusAKTIVAN
verzija1.0
sto_treba{
"problem": "Antropic naplata ide po tokenu. Bez kontrole: svaki agent koristi Opus za trivijalne zadatke, trosi 5x vise nego sto treba. $5 pretplate nestane u danima umjesto tjednima.",
"rjesenje": "TokenRouter kao jedina tocka ulaska u Anthropic API. Automatska klasifikacija zadatka u Tier T0-T4. Svaki agent MORA deklarirati TokenPlan. Prompt caching za ponavljajuce kontekste.",
"usteda": "T0 vs T4: 5x jeftinije. T1 (cache hit): 90% jeftinije od T0. Kombinacija: do 50x usteda na tipicno
zakon{
"tekst": "ZAKON 38 — TOKEN ECONOMY (od 2026-05-10, AKTIVAN). Svaki AI poziv u genesis sustavu MORA proci kroz TokenRouter. Direktni anthropic.messages.create() pozivi su ZABRANJENI izvan services/token_economy.py. Svaki agent MORA predati TokenPlan s obaveznim poljima: agent_id, task_type, max_tokens. Nepostojanje plana = MissingTokenPlan iznimka. TokenRouter automatski bira model prema Tier klasifikaciji T0-T4 i primjenjuje prompt caching za kontekste > 4000 tokena.",
"implementacija": "s
tier_tablica{
"T0": {
"model": "claude-haiku-4-5",
"use_case": "klasifikacija, lookup, da/ne, validacija",
"cijena": "$1/$5 per 1M"
},
"T1": {
"model": "claude-haiku-4-5",
"use_case": "T0 zadaci s velikim ponovljivim kontekstom",
"cijena": "~$0.1/$5 per 1M (90% off input)"
},
"T2": {
"model": "claude-sonnet-4-6",
"use_case": "summarizacija, generiranje, OCR, report",
"cijena": "$3/$15 per 1M"
},
"T3": {
"model": "claude-sonnet-4-6",
"use_case": "logi
faze[
{
"naziv": "FAZA 1 — Core implementacija",
"status": "DONE",
"sto": [
"services/token_economy.py — TokenPlan TypedDict, Tier enum, TokenRouter klasa",
"tier_classify() deterministicka funkcija bez AI poziva",
"_apply_cache() za cache_control: ephemeral blokove",
"estimate_cost_usd() s cache_read racunicom",
"Singleton get_token_router()",
"Sync route() + Async route_async()",
"Logging svakog poziva: tier, model, in/out/cache tokeni, USD,
primjer_koda{
"opis": "Minimalni primjer kako svaki agent mora koristiti TokenRouter",
"kod": "from services.token_economy import get_token_router, TokenPlan\n\nrouter = get_token_router()\nplan: TokenPlan = {\n 'agent_id': 'tahograf.driver_summary',\n 'task_type': 'sumariziraj dnevnik voznje vozaca za tjedan',\n 'max_tokens': 512,\n 'reduction_plan': 'saljem samo zadnjih 7 dana, ne cijeli arhiv',\n}\nresponse = router.route(plan, messages=[\n {'role': 'user', 'content': te
cache_pravila{
"min_tokens_za_cache": 4000,
"max_breakpointi": 4,
"ttl": "5 minuta (Anthropic prompt cache TTL)",
"invariant": "Stabilan sadrzaj MORA biti na pocetku system bloka. Volatilni sadrzaj (datum, user input) IZA zadnjeg breakpointa."
}
citacijaSvaki token je novac. Svaki agent ima dug prema sustavu — dug se placa planom. — ZAKON 38, Ivan 2026-05-10
_opp_sealWEISE3::c0807::zakon38::genesis::2026-05-10