docs(adr): truth-up 0014 + define the Retire-Falco corroboration-parity bar (JEF-305)#167
Merged
thejefflarson merged 1 commit intoJul 5, 2026
Conversation
…ty bar (JEF-305) Un-defer per-objective corroboration in ADR-0014 (it shipped in engine/src/engine/reason/proof/corroborate.rs, wired at reason/proof/mod.rs) and record the four F1 decisions the Retire-Falco epic builds on: 1. per-objective corroboration is landed, not deferred (Status block corrected); 2. the parity bar is measured decision-path corroboration coverage (F6/F7 gate), NOT Falco YAML rule-replication (that would re-create the removed coupling); 3. "retire Falco" = retire the Falco adapter + external deploy, KEEP the tool-agnostic Behavior::Alert + /behavior port (ADR-0003 — any sensor); 4. "alarming-now -> blanket corroboration" is engine-side classifier policy (JEF-113 pattern; wire type stays pure data, classification in observe::exec_class). Light amendment to ADR-0009 (its "live Falco signal" is now the tool-agnostic, per-objective corroboration of 0014), README index statuses updated, and the stale "only an alert behavior corroborates" comment in charts/protector/values.yaml fixed. Docs + one chart comment only — no code/behavior change. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VtjoJttCvBY4dzCoE4f9vP
thejefflarson
deleted the
thejefflarson/jef-305-retire-falco-f1-truth-up-adr-0014-define-the-corroboration
branch
July 5, 2026 01:13
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes JEF-305 — F1 of the "Retire Falco (agent is the sole deployed corroboration source)" epic. Docs + one chart comment only — no code/behavior change.
Why
Falco 0.44.1 crash-loops on the cluster's
7.0.0-1014-raspiarm64 kernel (a libsinsp ABI mismatch), down on 3/6 nodes; the first-party eBPF agent runs healthy there. The epic moves live corroboration to the agent. F1 records the decisions the rest builds on.The four decisions recorded (ADR-0014 addendum + corrected Status block)
corroborates(behavior, objective)relation shipped inengine/src/engine/reason/proof/corroborate.rs(corroborates/corroborated_for: egress→exfil, secret-read→cred-access, lib-load→foothold + the JEF-77 foothold relation, notable-exec→any), wired atengine/src/engine/reason/proof/mod.rs. Verified against current code.is_alertcorroboration signal), measured at the later F6/F7 gate — not porting Falco's YAML (which would re-create the ADR-0003 coupling being removed)./ingest) + external deploy — KEEP the tool-agnostic port.Behavior::Alert+ the/behavioringest port stay (ADR-0003 — any sensor, e.g. Tetragon, can still corroborate); only the Falco-specific/adapter and the external Falco/falcosidekick workload retire.observe/exec_class.rs).Files
docs/adr/0014-behavioral-telemetry-ebpf.md— corrected Status block + JEF-305 addendum; un-deferred rollout step 3.docs/adr/0009-asymmetric-action-bar.md— light amendment note: its "live Falco signal" is now the tool-agnostic, per-objective corroboration of 0014.docs/adr/README.md— index statuses for 0009 and 0014.charts/protector/values.yaml— fixed the stale "only analertbehavior corroborates" comment.Honesty / zero-egress / shadow-by-default framing kept intact.
Tests / gates
No
.rstouched (docs + one YAML comment), so no Rust tests apply.helm template charts/protector --set ingestAuth.token=xrenders OK. All changed files well under the 1,000-line cap. All 4 decision claims verified against the actual code before asserting them.🤖 Generated with Claude Code