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>