-
Notifications
You must be signed in to change notification settings - Fork 15
Expand file tree
/
Copy path.pmat.yaml
More file actions
52 lines (50 loc) · 2.98 KB
/
.pmat.yaml
File metadata and controls
52 lines (50 loc) · 2.98 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
comply:
thresholds:
tdg:
min_grade: B
dependency_health:
max_transitive: 500
file_health:
critical_lines: 5000
warning_lines: 2500
min_grade: C
verification_ladder:
min_level: L3
exclude_patterns:
- "**/generated_contracts.rs"
- "*_tests*.rs"
- "tests/**"
- "*_contract_falsify.rs"
- "**/browser.rs"
- "**/api_coverage.rs"
- "**/gpu_coverage.rs"
- "**/apr_coverage.rs"
- "**/convert_coverage.rs"
suppressions:
- rules: ["CB-954"]
files: ["contracts/**", "docs/roadmaps/**"]
reason: "ML model config fields (eos_token, bos_token, embed_tokens) are not secrets — see paiml/paiml-mcp-agent-toolkit#203"
- rules: ["CB-1000", "CB-1002", "CB-1007"]
files: ["models", "models/**", "crates/apr-cli/models", "crates/apr-cli/models/**"]
reason: "Local model cache directories are gitignored — model cards and tokenizers managed by upstream (HF Hub)"
- rules: ["CB-1339"]
reason: "122/4340 preconditions (3%) are natural-language requirements in documentation contracts (book builds, CLI safety, model format specs). These describe build/CI requirements, not function-level invariants. Converting to Rust expressions is not meaningful for 'mdbook binary available' or 'all chapter .md files committed to git'."
- rules: ["CB-1340"]
reason: "Enforcement penetration measures #[contract] call sites vs total functions. The workspace has 132 #[contract] annotations covering kernel/inference code. General utility functions don't need contract enforcement."
- rules: ["CB-1341"]
reason: "cli-silent-failure-enforcement.md (540 lines) is an archived spec from the multi-repo era. Content is valid but verbose."
- rules: ["CB-081"]
reason: "75-crate workspace has 469 transitive deps. This is structural for a full ML framework (arrow, wgpu, tokio, axum, etc.). Individual crates stay within budget. 190 duplicates from workspace-wide version resolution."
- rules: ["CB-030"]
reason: "O(1) hooks deferred — pre-commit hooks cause issues in worktrees. Quality enforced via CI gate job."
- rules: ["CB-200"]
reason: "21 functions below grade A are in legacy crates (test-cli, contracts-staging). Not in release crates. Tracked for incremental improvement."
- rules: ["CB-1208"]
reason: "173/568 stale bindings from pre-monorepo era (multi-repo binding.yaml references). Will be cleaned up as binding files are regenerated."
- rules: ["CB-1308"]
reason: "76 contracts not at L5 (Lean proofs). L5 is a long-term research goal (GH-687). Current contracts are at L3-L4 which is production-ready."
rust-project-score:
suppressions:
- check: "unwrap_calls"
reason: "unwrap() banned in production via .clippy.toml disallowed-methods. 180 count is tests/examples/book only (36 in src/ test modules, 0 in production). MUDA — false positive."
exclude_paths: ["examples/**", "book/**", "src/**/tests.rs", "src/**/*_tests*.rs"]