Gebeurtenissen
Een duurzaam logboek van wat agents hebben gedaan, en waarom.
Wat het doet
Werk tussen agents onderling wordt vastgelegd als taken, gebeurtenissen, edges en artefacten in een Postgres-logboek dat herstarts overleeft en opnieuw kan worden afgespeeld. Een getypeerde in-process bus stuurt ongeveer negentig soorten domeingebeurtenissen naar abonnees binnen een node. Samen bieden ze een tijdlijn: wat er is gevraagd, aan wie het is gedelegeerd, wat er is teruggekomen en waar het is vastgelopen.
Waarom het belangrijk is
Wanneer een keten van agents iets verrassends doet, is de enige nuttige vraag: "toon me de stappen". Een duurzaam takenlogboek maakt dat een databasequery in plaats van een archeologisch project, en maakt opnieuw proberen en annuleren echte bewerkingen in plaats van ijdele hoop.
Hoe het werkt
Het takenlogboek is duurzaam en opnieuw afspeelbaar
Taken, gebeurtenissen, delegatie-edges en artefacten zijn rijen in Postgres, dus bij een herstart gaat het spoor niet verloren en kan een vastgelopen edge opnieuw worden geprobeerd.
Annuleren en opnieuw proberen zijn eersteklas functies
Acties op een actieve taak worden zelf ook vastgelegd als gebeurtenissen, zodat de interventie deel uitmaakt van de tijdlijn.
De in-process bus is eerlijk over zijn bereik
Het is een getypeerde single-node emitter. We omschrijven het niet als een gedistribueerde event-backbone, omdat het dat simpelweg niet is.
Vragen
- Is dit Kafka?
- Nee. De in-process bus is een node-lokale getypeerde emitter, en de duurzaamheid is afkomstig van een Postgres-takenlogboek. Als je cross-cluster streaming nodig hebt, is dit dat niet.
- Kan ik zien wat een agent heeft gedaan?
- Ja: een taaktijdlijn met gebeurtenissen, delegatierelaties en artefacten, inclusief de interventies die daartegen zijn genomen.
The rest of the bag
AccessControl
Machtigingen per document die antwoorden filteren, niet alleen pagina's.
Beleidsresolutie wordt voor de snelheid per sessie gecached; een wijziging in machtigingen wordt doorgevoerd bij cache-invalidatie in plaats van direct bij elk lopend verzoek.
Documentatie
Een mappenstructuur die de agent leest, en een configuratiebestand dat hij volgt.
Extractie omvat pdf's, spreadsheets en transcripten. Exotische binaire formaten worden niet verwerkt.
Je agent heeft een eigen inbox, niet een deel van de jouwe.
Inkomende berichten komen binnen via een webhook van een e-mailprovider. We beheren geen eigen MX- of SMTP-servers.
That was step 6 of 6: a reply leaves, and the trail stays. Dat is het hele pad, van aankomst tot een afspeelbaar verslag.