thoughtjack 0.6.0

Adversarial agent security testing tool
Documentation
name: CodeQL Security Analysis

on:
  push:
    branches: [main]
  pull_request:
    branches: [main]
  schedule:
    # Weekly scan every Monday at 3 AM UTC
    - cron: '0 3 * * 1'
  workflow_dispatch:

permissions: read-all

jobs:
  analyze:
    name: CodeQL Analysis
    runs-on: ubuntu-latest
    permissions:
      actions: read
      contents: read
      security-events: write
    timeout-minutes: 30

    steps:
      - name: Checkout repository
        uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2

      - name: Initialize CodeQL
        uses: github/codeql-action/init@f3a6ee42055dd5f618fb31d987aae7b94518f043 # v4.32.2
        with:
          languages: rust
          # Run extended query suite for deeper analysis
          queries: security-extended

      - name: Install Rust toolchain
        uses: dtolnay/rust-toolchain@4be9e76fd7c4901c61fb841f559994984270fce7 # stable
        with:
          toolchain: stable

      - name: Cache Cargo dependencies
        uses: Swatinem/rust-cache@23869a5bd66c73db3c0ac40331f3206eb23791dc # v2.9.1

      - name: Build project
        run: cargo build --release

      - name: Perform CodeQL Analysis
        uses: github/codeql-action/analyze@f3a6ee42055dd5f618fb31d987aae7b94518f043 # v4.32.2
        with:
          category: "/language:rust"
          upload: true
          # Continue on error to allow PRs to proceed while tuning
          continue-on-error: false