Skip to content
Back to skills

Eval

ASecurity

Shared Eval orchestration for lulu-workflow. Coordinates dimension probes and remediation.

  • 3 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added October 2, 2026
ai-agentspython

Security analysis

A100/100

Pro scans all 20 files and shows the line behind each finding

Scanned October 5, 2026

npx -y skills add lulufoo/lulu-workflow --skill eval --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Eval?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Eval
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/lulufoo-eval/badge)](https://www.skillsdirectory.com/skills/lulufoo-eval)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: eval-library
description: >
  Shared Eval orchestration for lulu-workflow. Coordinates dimension probes
  and remediation.
meta-skill-version: 1.0.0
---

# eval/SKILL.md

Coordinates dimension probes and remediation for one round. Done when a
probe-only or full-remediation path returns its result.

## Script Macros

| Macro | Command |
|-------|---------|
| `$EVAL_CONTROL` | `python3 "$SKILL_ROOT/eval/scripts/eval_entry.py" --adapter-config-file "$EVAL_ADAPTER_CONFIG" --cycle-id "$CYCLE_ID"` |

Pin `$EVAL_ADAPTER_CONFIG` and `$CYCLE_ID` before `$EVAL_CONTROL`.

## Principles

- Findings require citable evidence. If evidence cannot be located, escalate; do not guess.
- A defective SoT is escalated, never silently repaired. A valid SoT that the artifact fails to reflect is remediated.
- Any non-zero control result is Blocking: stop, report it, and wait for user direction.
- Remediation processes one dimension at a time.

## Begin Eval

1. Run `$EVAL_CONTROL begin-eval-round`. Pin the result.
2. For each returned dimension, run **Single dimension (launch)** and pin any probe handle.
3. Await every pinned probe handle. Do not check a dimension before every handle completes.
4. For each dimension that launched a probe, run `$EVAL_CONTROL check-dimension --dim {dim}`.
   - If the result reports abandonment, run **Abandon Handler** and stop.
   - On a non-zero result, apply Blocking and stop.
   - Do not run `check-dimension` for a skipped dimension.
5. A probe-only caller runs `$EVAL_CONTROL complete-probe-only` and stops.
6. A full-round caller continues to **Remediation**.

## Single dimension (launch)

1. Run `$EVAL_CONTROL begin-dimension --dim {dim}` and pin the result.
2. If the result reports `skip: true`, record `skip_reason` and return. Do not pin an operation context, do not dispatch a probe runner, and do not later check this dimension.
3. Pin the returned operation context.
4. Dispatch `dimension-probe-runner` asynchronously with the pinned operation context and this instruction:

   ```text
   Load dimension-probe-runner/SKILL.md and follow its instructions.
   ```

5. Pin the returned handle and return immediately to **Begin Eval**.

## Remediation

1. Run `$EVAL_CONTROL begin-remediation` and pin the result.
2. Unless the result skips remediation, process each returned dimension serially:
   1. Run `$EVAL_CONTROL begin-dimension-remediation --dim {dim}` and pin `OPERATION_TOKEN` from its dispatch_input.
   2. Dispatch `remediation-runner` synchronously with that pinned context and this instruction:

      ```text
      Load remediation-runner/SKILL.md and follow its instructions.
      ```

   3. Run `$EVAL_CONTROL check-dimension-remediation --dim {dim}`.
   4. If the result reports abandonment, run **Abandon Handler** and stop.
3. Each dimension submits one complete application. Partial issue coverage is Blocking.
4. Run `$EVAL_CONTROL remediation-complete`.
5. Continue to **Completion**.

## Completion

1. Present the `remediation-complete` result.
2. If the caller’s adapter-config / handoff `policy_context.completion_mode` is
   `return_to_caller` (e.g. Compose Atomize Eval), **stop here** and return the
   `remediation-complete` payload to the caller. Do **not** present Accept L / Fix L /
   Re-evaluate / Deliver package.
3. Otherwise ask the user to choose Accept L, Fix L, or Re-evaluate; then exit
   Eval and return that choice. The caller owns the L transition.

## Abandon Handler

1. Stop. Do not dispatch remaining dimensions.
2. Leave the L in Evaluating. Report abandonment and wait for user direction.

Files in this skill

  • SKILL.md3.5 KB
  • dimension-probe-runner/SKILL.md1.4 KB
  • issue-taxonomy.json677 B
  • methods/codebase-consistency.md1.2 KB
  • remediation-runner/SKILL.md1.6 KB
  • review.template.md441 B
  • scripts/adapter/eval_adapter_config.py11 KB
  • scripts/adapter/eval_handoff_schema.py9.2 KB
  • scripts/adapter/workflow_adapter.py3.9 KB
  • scripts/admission/eval_admission.py15.6 KB
  • scripts/corpus/corpus_composition.py2.9 KB
  • scripts/corpus/corpus_schema.py10.4 KB
  • scripts/corpus/corpus_snapshot.py22.4 KB
  • scripts/eval_control.py22.5 KB
  • scripts/eval_entry.py3 KB
  • scripts/eval_path.py1 KB
  • scripts/operation/eval_operation_context.py10 KB
  • scripts/operation/eval_operation_record_schema.py25.1 KB
  • scripts/probe/codebase_sot.py1.7 KB
  • scripts/probe/eval_target_units.py3.4 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.