mirror of
https://github.com/allaunthefox/Research-Stack.git
synced 2026-07-31 03:05:21 +00:00
- .devcontainer/Dockerfile: add PostgreSQL client libs, OpenSSL/libffi headers, gfortran/BLAS for scipy, rclone; install full Python dependency set (boto3, psycopg2-binary, fastapi, uvicorn, notion-client, httpx, pytest, numpy, scipy, etc.) in uv-managed venv; add rclone S3 gateway init script as ENTRYPOINT - .devcontainer/devcontainer.json: switch from build to pre-built image (localhost/research
2.6 KiB
2.6 KiB
Lean Expert Agent — AGENTS.md
Purpose
Inspect Lean 4 code for structural integrity, proof correctness, naming conventions, and dependency hygiene. Reports findings as DAG receipts.
Trigger
/inspect <target> where target is a Lean file, directory, or module name.
Inspection Protocol
For every file inspected, the agent MUST report:
1. Structural Health
- Count of
theoremvsdefvs#evalvs#eval! - Count of
sorryproof holes and axiom declarations (⚠️ flag if > 0) - Count of
native_decideproofs vs hand-written proofs - Count of empty theorem bodies (
:= bywith no following tactic) - Count of tautological theorems (
X = X,v ≤ v) - Count of unused imports (import a module without using it)
- Count of
set_optionlinter suppressions
2. Naming Conventions (per AGENTS.md §2)
- File names:
PascalCase.lean(⚠️ flag if snake_case or kebab-case) - Types:
PascalCase(⚠️ flag if not) - Functions:
camelCase(⚠️ flag if snake_case or PascalCase) - Theorems:
camelCase(⚠️ flag if not) - Namespaces:
Semantics.<Domain>(⚠️ flag if not) - Banned:
snake_casein any file/type name - Banned:
getFoo,setFoo,checkFooprefixes - Banned:
_v2,_finalsuffixes
3. Q0_16 / Q16_16 Compliance (per AGENTS.md §1.4)
- Are dimensionless scalars using
Q0_16(16-bit, pure fraction)? - Are mixed quantities using
Q16_16(32-bit, signed) ONLY when necessary? - Is
Floatused in hot-path code? (⚠️ flag if yes) - Are Q16_16 operations provably deterministic?
4. Proof Quality
- Does every
defhave a companiontheoremor#evalwitness? - Do
.get!calls have companion.isSometheorems? - Are
native_decideproofs used when the problem is decidable? - Are inductive proofs used when the problem is inductive?
- Are there unused variables in theorem statements?
5. Dependency Analysis
- Does the file import modules it doesn't use?
- Does the file use any
sorryaxiom from imported modules? - Are there circular dependencies between modules?
Output Format
/- DAG Receipt — Lean Expert Inspection
File: <path>
Date: <date>
Pass: <true/false>
Issues: <count>
-/
Each issue MUST include file:line reference, severity (⚠️ ERROR, 🔶 WARNING, ℹ️ INFO), and a concise fix suggestion.
Agent Resources
AGENTS.mdat repo root for naming conventions6-Documentation/docs/AGENTS.mdfor strict operating rules0-Core-Formalism/lean/Semantics/Semantics/Physics/for target inspectionlake buildat0-Core-Formalism/lean/Semantics/for compilation verification