panic-attacker 1.0.1

Universal stress testing and logic-based bug signature detection
Documentation
# SPDX-License-Identifier: PMPL-1.0-or-later
# AI Manifest for panic-attacker
# Version: 1.0
# Format: A2ML (AI Agent Manifest Language)

(manifest
  (version "1.0")
  (project "panic-attacker")
  (description "Universal stress testing and logic-based bug signature detection")

  (canonical-locations
    (scm-files ".machine_readable/")
    (workflows ".github/workflows/")
    (docs "."
      (readme "README.md")
      (security "SECURITY.md")
      (contributing "CONTRIBUTING.md")
      (license "LICENSE")
      (changelog "CHANGELOG.md")
      (roadmap "ROADMAP.md")
      (design "DESIGN.md")
      (vision "VISION.md"))
    (source "src/")
    (tests "tests/")
    (examples "examples/"))

  (critical-invariants
    (rule "SCM files MUST be in .machine_readable/ directory ONLY"
      (never "STATE.scm in repository root")
      (never "ECOSYSTEM.scm in repository root")
      (never "META.scm in repository root")
      (always ".machine_readable/STATE.scm")
      (always ".machine_readable/ECOSYSTEM.scm")
      (always ".machine_readable/META.scm"))

    (rule "License MUST be PMPL-1.0-or-later"
      (never "AGPL-3.0")
      (never "GPL-*")
      (always "SPDX-License-Identifier: PMPL-1.0-or-later in all source files"))

    (rule "Author attribution MUST be correct"
      (always "Jonathan D.A. Jewell <jonathan.jewell@open.ac.uk>")
      (never "hyperpolymath as author name")
      (never "jonathan.jewell@gmail.com"))

    (rule "Weak points MUST have file locations"
      (never "location: None")
      (always "location: Some(file_path)"))

    (rule "Per-file analysis prevents duplicates"
      (never "running-total counts across files")
      (always "fresh ProgramStatistics per file"))

    (rule "Zero compiler warnings"
      (always "cargo build --release produces 0 warnings"))

    (rule "All tests MUST pass"
      (always "cargo test returns 0 exit code")))

  (repository-structure
    (type "rust-binary-library")
    (build-system "cargo")
    (package-manager "cargo")
    (language "rust")
    (msrv "1.75.0")
    (edition "2021"))

  (lifecycle
    (on-enter
      (action "read" (file ".machine_readable/STATE.scm"))
      (action "read" (file ".machine_readable/ECOSYSTEM.scm"))
      (action "read" (file ".machine_readable/META.scm"))
      (action "acknowledge"
        (message "AI manifest acknowledged. Canonical locations noted. Critical invariants loaded.")))

    (on-exit
      (action "update" (file ".machine_readable/STATE.scm")
        (condition "work completed"))
      (action "verify" (invariants)
        (message "All critical invariants respected"))
      (action "report"
        (message "Session complete. Files modified, tests status, new issues found."))))

  (tools
    (build "cargo build --release")
    (test "cargo test")
    (lint "cargo clippy -- -D warnings")
    (format "cargo fmt --check")
    (audit "cargo audit")
    (coverage "cargo tarpaulin --out Xml"))

  (quality-standards
    (test-coverage "target: 80%")
    (documentation "rustdoc for all public APIs")
    (linting "clippy with -D warnings")
    (formatting "rustfmt enforced")
    (security "cargo-audit in CI"))

  (deployment
    (registry "crates.io")
    (ci-cd "GitHub Actions")
    (releases "GitHub Releases with binaries"))

  (integration
    (hypatia "neurosymbolic CI/CD intelligence")
    (gitbot-fleet "rhodibot, echidnabot, sustainabot")
    (git-seo "repository analysis"))

  (metadata
    (created "2026-02-07")
    (updated "2026-02-07")
    (version-current "0.2.0")
    (version-next "1.0.0")
    (status "active-development")))