v0.1.0 skel

This commit is contained in:
2026-04-07 12:25:12 +02:00
commit ed38e73949
57 changed files with 981 additions and 0 deletions

83
README.md Normal file
View File

@@ -0,0 +1,83 @@
# sasecodingagent-project
Workspace Rust initial pour **Sase Coding Agent**.
## Structure
```text
sasecodingagent-project/
├── Cargo.toml
├── README.md
├── TODOLIST.md
├── clippy.toml
├── rustfmt.toml
├── docs/
│ └── coding_rules.md
├── scripts/
│ ├── check_banned_crates.sh
│ ├── check_no_question_mark.sh
│ ├── check_no_unwrap_expect.sh
│ ├── check_no_mod_rs.sh
│ ├── check_public_api_exports.sh
│ └── run_quality_checks.sh
├── sca-app/
├── sca-core/
├── sca-infra/
├── sca-ia/
└── sca-tests/
```
## Crates
- `sca-app` : binaire principal
- `sca-core` : domaine métier
- `sca-infra` : stockage, fs, process, git, audit
- `sca-ia` : providers, thinking, context, routing, kb
- `sca-tests` : support de tests / scénarios d'intégration
## État actuel
Ce dépôt est un **squelette initial** avec :
- workspace configuré
- crates créées
- fichiers `.rs` présents
- arborescences internes préparées
- `README.md` et `TODOLIST.md`
Les fichiers Rust internes sont volontairement laissés vides, à l'exception de `sca-app/src/main.rs` qui contient un `fn main() {}` minimal pour fournir un point d'entrée valide.
## Coding Rules
### Hard Constraints (non-negotiable)
- No `?`
- No `unwrap` / `expect`
- Explicit error handling only
- Single error type or minimal error types
- No `mod.rs` (Rust 2024)
- `tracing` mandatory
- `thiserror` and `anyhow` are banned
- Public API exported only via `src/lib.rs`
## Quality Checks
Des scripts simples sont fournis dans scripts/ pour contrôler les règles principales :
- crates bannies
- usage de `?`
- usage de `unwrap` / `expect`
- présence interdite de `mod.rs`
- vérification basique de lexposition API via `lib.rs`
Exécution rapide :
```bash
bash scripts/run_quality_checks.sh
```
## Documentation complémentaire
Règles détaillées :
docs/coding_rules.md