--- name: full-audit description: Run a unified audit across all quality dimensions — architecture, code quality, testing, security, docs, and release readiness. Consolidates findings from multiple agents and scripts into a single deduplicated report. intent: [audit, quality, architecture, security, docs, release, unified] allowed-tools: - Bash - Read - Grep - Glob - Agent - Write copilot: false --- # /full-audit Unified project audit that orchestrates scripts and agents in waves, deduplicates findings, and produces a consolidated report. ## Usage ``` /full-audit # standard profile (default) /full-audit --profile quick # fast, no Gradle /full-audit --profile deep # everything including beta-readiness /full-audit --verbose # detailed inline findings /full-audit --output report.md # save report to file /full-audit --project-root PATH # target project (default: cwd) /full-audit --skip coverage,sbom # skip specific checks ``` ## Profiles | Profile | Waves | Gradle | Agents | Estimated Time | |---------|-------|--------|--------|----------------| | `quick` | 1-2 | No | No beta-readiness | ~5 min | | `standard` | 1-3 | Yes (coverage) | No beta-readiness | ~15 min | | `deep` | 1-4 | Yes (full) | All | ~45 min | ## Procedure ### Step 1: Resolve Configuration 1. Parse arguments: `--profile` (default: standard), `--verbose`, `--output`, `--project-root`, `--skip` 2. Read `skills/full-audit/profiles.json` for wave definitions 3. If `$PROJECT_ROOT/l0-manifest.json` exists, check for `full_audit` overrides: - `extra_agents`: additional agents to include - `custom_profiles`: profile overrides - `skip_checks`: checks to always skip ### Step 2: Execute Waves Delegate to the full-audit-orchestrator agent, passing: - Profile name and wave configuration - Project root path - Skip list - Verbose flag The orchestrator will: 1. Execute each wave's checks in parallel where possible 2. Collect findings using the `` / `` protocol from agents 3. Run the 3-pass deduplication engine on all collected findings 4. Track resolution against previous `findings-log.jsonl` entries ### Step 3: Produce Report The orchestrator produces the consolidated report in this format: ``` ================================================================ FULL AUDIT REPORT {Project} -- {Date} -- Profile: {profile} ================================================================ HEALTH: {CRITICAL|WARNING|HEALTHY} ({N} findings: X CRIT, Y HIGH...) CRITICAL [security] OAuth tokens in SQLite plaintext CRITICAL [architecture] java.time.* in commonMain (4 files) HIGH [code-quality] CancellationException swallowed (3 repos) MEDIUM [documentation] 3 pattern docs with stale versions ... Checks: {N}/{M} | Duration: {T} | Deduped: {D} findings merged ACTION ITEMS (priority order): 1. [CRITICAL] Encrypt token storage -- Art. 32 compliance 2. [CRITICAL] Replace java.time with kotlinx-datetime 3. [HIGH] Add rethrow in catch blocks -- /auto-cover can help ================================================================ ``` ### Step 4: Persist & Output 1. Append findings to `.androidcommondoc/findings-log.jsonl` using the findings-append helper 2. Append a `full_audit` event to `.androidcommondoc/audit-log.jsonl` using audit-append helper 3. If `--output` specified, write report to file 4. Display report to user ## Constraints - NEVER re-run Gradle if `--profile quick` is selected - NEVER run beta-readiness-agent unless `--profile deep` - Respect `--skip` list -- silently skip named checks - All agents must emit findings using the structured protocol - The report must be <=200 lines (truncate detail section if needed, keep action items)