Skills and Safety

Optional procedural knowledge and system-owned execution evidence.

1. Skill registry

core/skills/registry.py scans Markdown files under .scienceflow/skills/, reads frontmatter, and indexes names, aliases, categories, tags, task types, phases, and priorities. core/tools/skill_tool.py exposes list and read actions to an agent with a loaded registry.

The repository skill library currently contains only data_processing/. It covers the general flat-dataset protocol plus selected image, BSON, recommendation-time-split, tabular, and self-evaluation guidance.

2. Injection boundary

LNR defaults to lnr_skill_tool_enabled: false. When enabled, category-only mode can filter visible skills using the task category source, while auto-read and generic wildcard behavior remain explicit opt-ins. The data-preparation agent uses a broader registry mode because skill discovery is part of its required workflow.

A skill is optional guidance. It does not authorize a Stage, validate an artifact, or replace system-owned safety evidence.

3. Execution safety

safety/execution_policy.py implements the post-agent full execution policy for solution.py. It can avoid duplicate runs through a hash-bound full_run_stamp.json, capture a finite final validation metric, keep compact stdout/stderr tails, and use an epoch watchdog when projected remaining work exceeds the available budget.

core/agent/run_control/embedded_fullrun.py provides the optional embedded handoff. Embedded full runs can be evaluated through the same framework service; they do not bypass Gate ownership.

4. Static and artifact checks

ComponentCurrent responsibility
safety/code_guard.pyChecks syntax, hard-coded environment paths, CUDA/CPU mismatch hints, unsafe result.md writes, submission-save heuristics, duplicate workspaces, and optional leakage warnings before expensive execution.
safety/leakage_detector.pyDetects suspicious training/validation or target-derived feature patterns.
safety/stdout_checker.pyDetects hostile or excessively noisy output patterns and supports tqdm cleanup.
safety/resource/Defines reusable resource facts, review signal/state/boundary/outcome, process lifecycle, completion, and recoverability helpers.

5. Relationship to LNR

Skills help an agent choose a procedure. Safety modules produce or validate execution evidence. LNR then combines evaluator facts, Gate decisions, Stage metadata, snapshots, and resource evidence. These responsibilities are intentionally separate so model advice cannot be mistaken for validated progress.