refactor: simplify distillation data layout

This commit is contained in:
Jerry
2026-07-27 17:40:16 +08:00
parent 8895178844
commit c8dbc51549
34 changed files with 132 additions and 7791 deletions
+29 -20
View File
@@ -26,30 +26,32 @@ removed. `scripts/designir_pipeline.py anti-cheat` rejects source STEP
references, imported B-Reps, embedded meshes, topology references, and generator
source that calls STEP import APIs.
## Workspace
## Data layout
Runtime data is role-separated under `workspace/`:
For the exact input, process, acceptance, and output locations, see
[`workspace/README.md`](workspace/README.md).
The operator-facing layout has only three directories:
```text
workspace/
teacher/inbox/ uploaded STEP/STP files
teacher/evidence/ private deterministic evidence
reconstruction/inbox/ evidence packets for Agent A
reconstruction/designir/ authored DesignIR 2.0
reconstruction/output/ independently rebuilt STEP
acceptance/inbox/ manifests visible to Agent B
acceptance/reports/ geometry and editability reports
promotion/candidates/ untrusted generalized methods
promotion/replay_validated/
promotion/promoted/ deterministic published experience
quarantine/ unsupported vocabulary and failed cases
designir-pipeline/
input/ drop source STEP/STP files here
runs/ all private process artifacts
output/library.json verified experience consumed at runtime
```
Only `.gitkeep` files are versioned in runtime directories. Teacher geometry,
private evidence, generated parts, and reports stay local.
`input/` and `runs/` are ignored by Git. Only the deterministic result in
`output/` is versioned. The pipeline creates these private run directories as
needed:
| Local path | Purpose |
| --- | --- |
| `runs/evidence/` | Deterministic evidence extracted from source STEP. |
| `runs/designir/` | DesignIR authored by Reconstruction Agent. |
| `runs/rebuilt/` | STEP rebuilt without access to source STEP. |
| `runs/acceptance/` | Independent geometry and editability reports. |
| `runs/review/` | Sanitized semantic batches and untrusted drafts. |
| `runs/quarantine/` | Failures and unsupported feature vocabulary. |
The shallow directory structure is for usability, not authorization. Agent and
compiler access is enforced by their contracts and by anti-cheat checks.
## DesignIR 2.0
@@ -87,9 +89,16 @@ by deterministic code after several independent cases pass.
## Commands
Use the CAD Python environment:
Drop files into `input/`, then use the CAD Python environment:
```bash
scripts/cad-experience extract-folder
scripts/cad-experience prepare
# The semantic distiller writes runs/review/experience-draft.json.
scripts/cad-experience publish \
--draft runs/review/experience-draft.json
scripts/cad-experience audit output/library.json
../text-to-cad/.venv/bin/python scripts/designir_pipeline.py validate part.designir.json
../text-to-cad/.venv/bin/python scripts/designir_pipeline.py compile \
part.designir.json --output rebuilt.step