feat(persona): build the shared expert-reviewer persona as a framework-neutral Agent Skill
The expert reviewer was only a hardcoded verdict_input dict inside the offline simulation. Build it as the real, shared artifact target picture §8 calls for: shared/skills/expert-reviewer/ — a SKILL.md persona prompt (energy-advisor / M&V role + the realization-gap methodology the validator cannot compute) plus a canonical references/example-verdict.json. shared/ stays pure data; the MAF side reads it via portfolio_optimiser.persona.load_persona_example (call-time, fail-fast) and the Claude-SDK sibling reads the same JSON with its own loader. This de-stubs the simulation: its persona judgement (decision + rationale + traced marker) is now sourced from the artifact at call time, not an inline literal — so the shared persona is genuinely consumed and cannot rot silently. decision is binary (approved/rejected, the FeedbackContract the run path accepts); approved_with_adjustment is rejected there and lives only in the bundle seed frontmatter + the promotion gate, so the realization correction is carried in the rationale prose. Load-bearing trio (tests/test_persona_skill_loadbearing.py), each proven RED on its own detach: structure + framework-neutrality, the example is valid pipeline input (incl. FeedbackContract, on a throwaway copy), and the simulation's marker follows the artifact file. Suite 149->152. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MHR8iKxJRxDiDfNw8HZmWE
This commit is contained in:
parent
a9144cb9bb
commit
6f861a0078
8 changed files with 281 additions and 13 deletions
18
README.md
18
README.md
|
|
@ -43,12 +43,28 @@ for the swarm and the expert persona (honesty per §1). The scripted client is M
|
|||
not part of the framework-neutral `shared/` core. Load-bearing: `tests/test_simulation_loadbearing.py`
|
||||
goes red the moment promotion is detached (the marker never crosses into Run B).
|
||||
|
||||
## Shared expert-reviewer persona (§8)
|
||||
|
||||
The expert reviewer is a **framework-neutral Agent Skill** in [`shared/skills/expert-reviewer/`](shared/skills/expert-reviewer/)
|
||||
— a `SKILL.md` persona prompt (the energy-advisor / M&V role, the realization-gap methodology the
|
||||
validator cannot compute) plus a canonical `references/example-verdict.json`. It is the shared
|
||||
artifact both reference implementations consume to instantiate the reviewer; `shared/` stays pure
|
||||
data, so the MAF side reads it via `portfolio_optimiser.persona.load_persona_example` and the
|
||||
Claude-SDK sibling reads the same JSON with its own loader. This **de-stubs the simulation**: its
|
||||
persona judgement (decision + rationale + traced marker) is now sourced from the artifact at call
|
||||
time, not a hardcoded literal — so the shared persona is genuinely consumed and cannot rot silently.
|
||||
The persona's `decision` is binary (`approved` / `rejected`, the feedback contract the run path
|
||||
accepts); the realization correction lives in the rationale prose. Load-bearing trio
|
||||
(`tests/test_persona_skill_loadbearing.py`): structure + framework-neutrality (red on a framework
|
||||
import), the example is valid pipeline input (red on schema/contract drift), and the simulation's
|
||||
marker follows the artifact file (red the moment the persona is re-inlined).
|
||||
|
||||
## Docs
|
||||
|
||||
- [`docs/plan/2026-06-26-maalbilde-agentic-loop.md`](docs/plan/2026-06-26-maalbilde-agentic-loop.md) — target picture: the agentic cost-saving loop + OKF knowledge architecture (north star).
|
||||
- [`docs/research/2026-06-23-prior-art-platform.md`](docs/research/2026-06-23-prior-art-platform.md) — prior-art & platform research (incl. implementation register §15).
|
||||
- [`docs/plan/2026-06-23-incremental-plan.md`](docs/plan/2026-06-23-incremental-plan.md) — incremental delivery plan (deterministic backbone).
|
||||
- [`shared/`](shared/) — framework-neutral shared core (concept + example OKF knowledge bundles), reused unchanged by both reference implementations.
|
||||
- [`shared/`](shared/) — framework-neutral shared core (concept + example OKF knowledge bundles + the expert-reviewer persona skill), reused unchanged by both reference implementations.
|
||||
|
||||
## Stack
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue