FASE 12F introduced the canonical project workflow commands:
cct buildcct runcct testcct benchcct clean
FASE 12G added:
cct doc
The legacy single-file flow remains fully supported, and post-bootstrap repository runners and self-hosted project targets are now part of the supported build-system surface.
Root resolution order:
--project <dir>- current directory containing
cct.toml - current directory containing
src/main.cct - upward traversal until
cct.tomlorsrc/main.cct
Default entry is src/main.cct, unless overridden with --entry.
cct build [--release] [--project DIR] [--entry FILE.cct] [--out PATH] \
[--sigilo-check] [--sigilo-strict] [--sigilo-baseline PATH]Optional quality gates:
--lint--fmt-check
Optional sigilo baseline gate:
--sigilo-check: runscct sigilo baseline checkfor the built artifact sigilo--sigilo-strict: enables strict baseline check behavior (exit2on blocking drift)--sigilo-baseline PATH: baseline path override (relative paths are resolved from project root)- default baseline path without override is
docs/sigilo/baseline/local.sigilorsystem.sigilbased on artifact scope
Incremental cache is stored in .cct/cache/manifest.txt.
cct run [--release] [--project DIR] [--entry FILE.cct] \
[--sigilo-check] [--sigilo-strict] [--sigilo-baseline PATH] [-- --args]Builds first, then executes resulting binary, returning the program exit code.
cct test [PATTERN] [--project DIR] [--strict-lint] [--fmt-check] \
[--sigilo-check] [--sigilo-strict] [--sigilo-baseline PATH]Discovers *.test.cct recursively under tests/.
cct bench [PATTERN] [--project DIR] [--iterations N] [--release] \
[--sigilo-check] [--sigilo-strict] [--sigilo-baseline PATH]Discovers *.bench.cct recursively under bench/ and reports average/total runtime.
cct clean [--project DIR] [--all]- default: removes
.cct/build,.cct/cache,.cct/test-bin,.cct/bench-bin --all: also removes generated project binaries underdist/
0success1command/build/run/test failure2quality gate failure (--strict-lint,--fmt-check)2also for strict sigilo baseline gate blocking drift3internal tooling error (reserved)
The repository now distinguishes between historical, rebased, bootstrap, self-host, and operational validation layers.
Primary entrypoints:
make testmake test-legacy-fullmake test-legacy-rebasedmake test-bootstrapmake test-bootstrap-selfhostmake test-phase30-finalmake test-all-0-30
make test-all-0-30 is the full aggregated gate across the validated project history.
Post-bootstrap operational targets include:
project-selfhost-buildproject-selfhost-runproject-selfhost-testproject-selfhost-cleanproject-selfhost-package
These targets are exercised in the FASE 30 operational platform gates.
The build system now has an explicit compiler-entry layer.
Operational entrypoints:
./cct: default wrapper exposed to users./cct-host: explicit host compiler wrapper./cct-selfhost: explicit self-host wrapper
Mode inspection:
./cct --which-compilerMode control:
make bootstrap-promote
make bootstrap-demoteThe following commands remain part of the stable user workflow:
cct buildcct runcct testcct benchcct cleancct doc
Post-FASE-31 interpretation:
cct build|run|test|bench|clean|packageare valid operational commands on the promoted compiler path- the wrapper preserves CLI continuity while allowing self-hosted compilation to sit behind the default command surface
- some command orchestration layers may still reuse host implementation internally when that is the compatibility-preserving path accepted by the current release
cct doc,fmt,lint, and--sigilo-onlyshould still be understood as areas where host delegation may remain active
./cct --which-compiler
./cct build --project examples/phase30_data_app
./cct-selfhost build --project examples/phase30_data_app
./cct-host build --project examples/phase30_data_appThis gives users three levels of control:
- default operational path
- explicit self-host path
- explicit host fallback path