docs: add Contract sections + tag tests to contract items (Tier 2 — 10 files)
Some checks failed
Deploy (Gitea) / deploy (push) Failing after 2s
Some checks failed
Deploy (Gitea) / deploy (push) Failing after 2s
This commit is contained in:
@@ -33,6 +33,15 @@ The three-tier error recovery model:
|
||||
2. **Critical errors** (undefined functions, malformed data) — require memory rollback to the last snapshot
|
||||
3. **Recursive loops** (signals generating more signals indefinitely) — depth limit enforcement
|
||||
|
||||
** Contract
|
||||
|
||||
1. (loop-process signal): the full pipeline loop — Perceive → Reason
|
||||
→ Act. Enforces depth limit (10). Catches errors with rollback and
|
||||
~:loop-error~ re-injection on non-terminal errors below depth 2.
|
||||
2. (process-signal signal): thin alias for ~loop-process~.
|
||||
3. (diagnostics-startup-run): runs health check on startup, sets
|
||||
~*system-health*~ to ~:healthy~, ~:degraded~, or ~:unhealthy~.
|
||||
|
||||
* Implementation
|
||||
|
||||
** Package Context
|
||||
@@ -311,7 +320,7 @@ Verifies that the immune system (error handling) correctly catches and reports e
|
||||
(in-suite immune-suite)
|
||||
|
||||
(test loop-error-injection
|
||||
"Verify that a crash in think/decide triggers a :loop-error stimulus."
|
||||
"Contract 1: a crash in think/decide triggers :loop-error stimulus."
|
||||
(clrhash passepartout::*skill-registry*)
|
||||
(passepartout:defskill :evil-skill
|
||||
:priority 100
|
||||
@@ -323,7 +332,7 @@ Verifies that the immune system (error handling) correctly catches and reports e
|
||||
(is (not (null (find-if (lambda (line) (search "CRITICAL BRAIN FAILURE" line)) logs))))))
|
||||
|
||||
(test test-process-signal-normal-path
|
||||
"A valid signal should pass through the pipeline without error."
|
||||
"Contract 1: a valid signal passes through the pipeline without crash."
|
||||
(clrhash passepartout::*skill-registry*)
|
||||
(handler-case
|
||||
(let ((signal (list :type :EVENT :depth 0 :payload (list :sensor :heartbeat))))
|
||||
@@ -333,7 +342,7 @@ Verifies that the immune system (error handling) correctly catches and reports e
|
||||
(fail "Pipeline crashed on normal signal: ~a" c))))
|
||||
|
||||
(test test-loop-process-returns-nil-on-deep
|
||||
"Processing a signal at depth > 10 should return nil."
|
||||
"Contract 1: depth > 10 returns nil from loop-process."
|
||||
(let ((result (loop-process '(:type :EVENT :depth 11 :payload (:sensor :heartbeat)))))
|
||||
(is (null result))))
|
||||
#+end_src
|
||||
|
||||
Reference in New Issue
Block a user