derive-fail-soft-validation
IN premise
`validate_proposals` filters invalid proposals into a skipped list rather than raising; `apply_proposals` catches per-item exceptions so one bad proposal never blocks others
Summary
The system handles bad data gracefully by design. When proposals come in, invalid ones get quietly set aside rather than crashing the process, and if any single proposal fails during application, the rest still go through — so one mistake never takes down the whole batch.
Dependents
These beliefs depend on this one:
- derive-pipeline-is-defensive — The derive pipeline applies multiple defensive measures: fail-soft validation, Jaccard-based retraction guard, and environment variable stripping to prevent recursive spawning
- llm-integration-fails-softly-across-modules — All LLM-facing modules apply consistent fail-soft error handling: the ask module always returns a string even when the LLM is unavailable, and the derive pipeline accumulates per-proposal errors rather than raising exceptions — no LLM failure path crashes the system.
Details
| Source | entries/2026/04/23/reasons_lib-derive.md |