/ AGENTIC.scm
AGENTIC.scm
1 ;; SPDX-License-Identifier: AGPL-3.0-or-later 2 ;; SPDX-FileCopyrightText: 2025 Jonathan D.A. Jewell 3 ;; AGENTIC.scm — beamdeno 4 5 (define-module (beamdeno agentic) 6 #:export (agent-capabilities autonomy-levels decision-boundaries)) 7 8 (define agent-capabilities 9 '((etf-codec 10 (description . "Agent can work on ETF encoder/decoder implementation") 11 (scope . ("Implement term types" "Add test cases" "Optimize encoding")) 12 (limitations . ("Cannot change wire format" "Must follow ETF spec"))) 13 14 (protocol-implementation 15 (description . "Agent can implement BEAM communication protocols") 16 (scope . ("Port communication" "Message serialization" "Connection handling")) 17 (limitations . ("Cannot modify BEAM side without Erlang expertise" "Security-sensitive"))) 18 19 (erlang-code 20 (description . "Agent can write Erlang/Elixir library code") 21 (scope . ("Supervisor trees" "GenServer implementations" "Port handlers")) 22 (limitations . ("Limited OTP pattern expertise" "Human review recommended"))) 23 24 (test-infrastructure 25 (description . "Agent can set up test infrastructure") 26 (scope . ("Deno tests" "EUnit tests" "Integration tests")) 27 (limitations . ("Requires running BEAM node" "Cannot mock BEAM internals"))))) 28 29 (define autonomy-levels 30 '((level-1-autonomous 31 (actions . ("Format code" "Add ETF term types" "Write tests" "Update types")) 32 (approval . "none")) 33 34 (level-2-supervised 35 (actions . ("Implement protocols" "Add Erlang modules" "Modify message handling")) 36 (approval . "human-review")) 37 38 (level-3-restricted 39 (actions . ("Change connection logic" "Modify cookie handling" "Update distribution protocol")) 40 (approval . "explicit-request")) 41 42 (level-4-prohibited 43 (actions . ("Store credentials" "Bypass security" "Auto-connect to nodes")) 44 (approval . "never-autonomous")))) 45 46 (define decision-boundaries 47 '((technical-decisions 48 (agent-decides . ("ETF encoding details" "Internal message format" "Test structure")) 49 (human-decides . ("Protocol choices" "Security model" "OTP patterns"))) 50 51 (cross-runtime-decisions 52 (agent-decides . ("TypeScript types" "Erlang module structure")) 53 (human-decides . ("API surface" "Interop semantics" "Error handling strategy"))) 54 55 (security-decisions 56 (agent-decides . ("Input validation" "Error messages")) 57 (human-decides . ("Cookie handling" "Authentication flow" "Network permissions")))))