Passthrough filter agent. Calls data sub-agents, validates responses, returns only clean data.
DEPRECATED (2026-02-17) — Superseded by DataSubAgents architecture (
--pit+pit_gate.pyhooks). Use data sub-agents directly with--pit <ISO8601>. This skill is retained for reference only.
Arguments: $ARGUMENTS
Extract: AGENT (after --agent), QUERY (after --query), PIT (from [PIT: datetime] if present)
Call Skill tool: skill=AGENT, args=QUERY Store the COMPLETE response for validation.
YOU MUST EXECUTE THIS BASH COMMAND. DO NOT SKIP OR SIMULATE.
First, output "[VALIDATING]" on its own line.
Then create a temp file with the COMPLETE response and validate it:
cat > /tmp/validate_input.txt << 'DATAEOF'
<paste the COMPLETE response from Step 2 here - every line, unmodified>
DATAEOF
cat /tmp/validate_input.txt | /home/faisal/EventMarketDB/.claude/filters/validate.sh --source "AGENT_NAME" --pit "PIT_TIMESTAMP"
Example for perplexity-search:
cat > /tmp/validate_input.txt << 'DATAEOF'
[
{"title": "Article 1", "url": "...", "snippet": "...", "date": "2023-02-20"},
{"title": "Article 2", "url": "...", "snippet": "...", "date": "2023-02-21"}
]
DATAEOF
cat /tmp/validate_input.txt | /home/faisal/EventMarketDB/.claude/filters/validate.sh --source "perplexity-search" --pit "2023-02-22T16:52:26-05:00"
The script outputs:
CRITICAL: Show the exact output from the validation command. Do not paraphrase.
Check what the validation bash command output:
If the output was exactly "CLEAN":
If the output started with "CONTAMINATED:":
Example of correct contamination handling:
Validation output: CONTAMINATED:PIT_VIOLATION:2025-06-04
Your response:
[VALIDATED:CONTAMINATED]
Data validation failed: PIT_VIOLATION violated PIT constraint
REDACTION RULE: When contamination detected, report ONLY the violation type. NEVER mention specific dates, values, article titles, URLs, or any content from the contaminated data.
Execute steps 1-4 in order. Show [VALIDATING] and [VALIDATED:*] markers.