38 lines
2.3 KiB
Org Mode
38 lines
2.3 KiB
Org Mode
:PROPERTIES:
|
|
:ID: 9d3fe6c3-904c-4750-ad37-0364ad0c4dde
|
|
:CREATED: [2026-04-12 Sun 20:00]
|
|
:END:
|
|
#+TITLE: SKILL: Policy Enforcer
|
|
#+STARTUP: content
|
|
#+FILETAGS: :security:alignment:policy:psf:
|
|
#+DEPENDS_ON: id:47425a43-2be0-423c-8509-22592cfe9c9e
|
|
|
|
* Overview
|
|
The *Policy Enforcer* is the deterministic gate that ensures all probabilistic proposals adhere to the Core Invariants defined in the [[id:47425a43-2be0-423c-8509-22592cfe9c9e][System Policy]].
|
|
|
|
** Architectural Intent: The Implicit Bridge
|
|
Unlike traditional software where a "Kernel" might have hardcoded rules, the Org-Agent harness is a "dumb" pipeline. This skill creates the bridge between human-readable rules and machine-enforced constraints through three mechanisms:
|
|
|
|
1. **Topological Bootstrapping:** By declaring a #+DEPENDS_ON: dependency on the Policy file's ID, we ensure the System Policy is always registered in the Lisp image's skill catalog before this enforcer attempts to guard it.
|
|
2. **Priority Preemption:** By setting :priority 1000, this skill registers itself as the very first check in the decide-gate. It effectively "pre-empts" all other skills, ensuring that no action (like a shell command or a file write) is even considered until it has cleared the alignment check.
|
|
3. **Decoupled Enforcement:** The harness does not "know" it is enforcing a policy. It simply executes the highest-priority deterministic functions provided by its skills. This allows the Sovereign to swap out policies or enforcers without ever touching the core harness code.
|
|
|
|
* Implementation
|
|
|
|
#+begin_src lisp
|
|
|
|
(defskill :skill-policy-enforcer
|
|
:priority 1000 ; Absolute highest priority
|
|
:trigger (lambda (context) t) ; Always active as a fallback
|
|
:probabilistic (lambda (context)
|
|
\"You are the Org-Agent Policy Enforcer. Your goal is to ensure all actions empower the user through the Lisp Machine and adhere to the System Policy.\")
|
|
:deterministic (lambda (action context)
|
|
;; Basic invariant check: Block actions that appear to violate sovereignty
|
|
(let ((payload (getf action :payload)))
|
|
(if (and payload (search \"proprietary\" (format nil \"~s\" payload)))
|
|
(progn
|
|
(org-agent:harness-log \"DETERMINISTIC [Policy]: Sovereignty violation suspected. Blocking action.\")
|
|
nil)
|
|
action))))
|
|
#+end_src
|