feat(pipeline): run tramiton classification + provision DAST in run_target #146

Merged
sharang merged 1 commits from feat/onboarding-scan-detection into main 2026-07-12 21:49:23 +00:00
1 Commits
Author SHA1 Message Date
Sharang ParnerkarandClaude Fable 5 1ab443457e feat(pipeline): run ingest+classify (tramiton) and provision DAST in run_target
CI / Check (pull_request) Successful in 5m34s
CI / Detect Changes (pull_request) Has been skipped
CI / Deploy Agent (pull_request) Has been skipped
CI / Deploy Dashboard (pull_request) Has been skipped
CI / Deploy Docs (pull_request) Has been skipped
CI / Deploy MCP (pull_request) Has been skipped
Wire the built-but-unused classification + DAST paths into the unified scan so
onboarded targets are actually detected and dynamically scanned:
- classify_and_store: ingests the target's artifacts and runs classify_target
  (tramiton-core in-process for firmware/RTOS/Yocto + MCU/board; heuristics for
  the rest), storing the Classification on the target. Best-effort — never fails
  a scan. This is what makes firmware detection real during a scan.
- ensure_dast_target: when DAST is planned and the target has a LiveUrl artifact,
  provisions a DastTarget (repo_id = target id) so the existing DAST trigger
  fires for wizard-created targets, not just migrated ones. Idempotent.

Both run inside run_target (behind UNIFIED_PIPELINE), before the code pipeline.
Note: classification ingest currently clones the git repo separately from the
scan pipeline's clone (double-clone) — a perf follow-up, not a correctness issue.

Refs #133, #135, #118.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-12 23:35:55 +02:00