Some checks failed
Deploy (Gitea) / deploy (push) Failing after 11s
- Secret Exposure Gate + Privacy Filter (Bouncer) - Shell actuator safety harness (timeout, blocked patterns) - REPL-first enforcement (lisp validation gate, system-prompt-augment) - Engineering Standards lifecycle (two-track Org-first + REPL-first) - Literate Programming discipline (one function per block, reflect-back) - AGENTS.md: thin routing layer, skills are authoritative - SKILLS_DIR removed, ~/notes fallback eliminated - opencortex.sh: multi-distro (Debian+Fedora), configure, install service, backup, restore, help - infrastructure/opencortex.service (systemd user unit) - Docker: updated to debian:trixie, fixed build context - GitHub CI: lint + test workflows fixed, trigger on tags only - Gitea CI: deploy workflow paths fixed - README: one-line curl install, badges - USER_MANUAL: Deployment section (bare metal, Docker, backup) - .gitignore: skills/*.lisp and tests/*.lisp as generated artifacts - Prose/block refactor across all 35 org files - Test suite Tier 1: 43/45 pass (env-dependent failures isolated)
26 lines
944 B
Org Mode
26 lines
944 B
Org Mode
#+TITLE: SKILL: Self Fix (org-skill-self-fix.org)
|
|
#+AUTHOR: Agent
|
|
#+FILETAGS: :system:autonomy:self-fix:
|
|
#+PROPERTY: header-args:lisp :tangle org-skill-self-fix.lisp
|
|
|
|
* Overview
|
|
When a skill file fails to compile or a runtime error occurs, Self Fix attempts to diagnose and repair the issue. It receives error logs from the skill loader, identifies the broken file, and generates a corrected version that is hot-reloaded into the running image.
|
|
|
|
* Implementation
|
|
|
|
** Self-Fix Logic
|
|
#+begin_src lisp
|
|
(defun self-fix-broken-skill (skill-name error-log)
|
|
"Attempts to diagnose and repair a broken skill."
|
|
(declare (ignore error-log))
|
|
(harness-log "SELF-FIX: Attempting repair of ~a..." skill-name))
|
|
#+end_src
|
|
|
|
** Skill Registration
|
|
#+begin_src lisp
|
|
(defskill :skill-self-fix
|
|
:priority 100
|
|
:trigger (lambda (ctx) (member (getf ctx :type) '(:LOG :EVENT)))
|
|
:deterministic (lambda (action ctx) (declare (ignore action ctx)) nil))
|
|
#+end_src
|