-
-
Notifications
You must be signed in to change notification settings - Fork 0
Hypatia AssailReport ingestion path: design + implement #117
Copy link
Copy link
Open
Labels
automationBots, schedulers, dispatch, self-healing, fan-outBots, schedulers, dispatch, self-healing, fan-outenhancementNew capability or improvement to existing behaviourNew capability or improvement to existing behaviourpriority:p2Normal - queue itNormal - queue itscope:repoConfined to this repositoryConfined to this repositorystatus:readyFully specified and ready to be picked upFully specified and ready to be picked up
Description
Activity
Metadata
Metadata
Assignees
Labels
automationBots, schedulers, dispatch, self-healing, fan-outBots, schedulers, dispatch, self-healing, fan-outenhancementNew capability or improvement to existing behaviourNew capability or improvement to existing behaviourpriority:p2Normal - queue itNormal - queue itscope:repoConfined to this repositoryConfined to this repositorystatus:readyFully specified and ready to be picked upFully specified and ready to be picked up
Context
The 2026-06-02 v2.5.5 cohort wired
panicbot(gitbot-fleet#252) to honour panic-attack's newtest_contextfield. Hypatia ALSO consumes panic-attack scan output — but currently only via rule-mention references (lib/rules/workflow_audit.ex,lib/rules/dogfooding.ex). There is noAssailReportingestion path in the Hypatia codebase as of 2026-06-02.What's needed
A Hypatia ingestion module that:
AssailReportJSON frompanic-attack assail <target> --output-format json.(PA-code, file:line)for cross-referencing with other Hypatia signals (Github Actions runs, CodeQL alerts, Dependabot alerts, etc.).suppressed: true→HypatiaBucket.SuppressedByRule(existing kanren-driven)suppressed: trueANDtest_context: 'test_only' | 'doc'→HypatiaBucket.ContextSuppressed(new — surfaces in audit-trail mode, NOT in dashboard counts)suppressed: falseANDtest_context: 'production' | null→HypatiaBucket.ActiveFindingWhy not done in this cohort
Designing a Hypatia ingestion path is a separate scope from the panic-attack-side foundation. Hypatia is Elixir; the schema work + GenServer wire-up is non-trivial. Filing here so the v2.5.5
test_contextwork has a clear next consumer.Acceptance
PR in hyperpolymath/hypatia repo that:
Hypatia.Ingest.AssailReportmodule + tests against captured panic-attack JSON fixturesHypatia.Rules.AssailRouter(or similar) implementing the 4-way routingRefs