Compare commits

..
Author SHA1 Message Date
Meta Vens
d4596dda22 Wire AGENTS.md into Claude Code memory
Claude Code reads CLAUDE.md, not AGENTS.md, so this repo's doctrine was
invisible to it. This one-line import makes the existing AGENTS.md load
without duplicating or renaming it. Codex is unaffected.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-29 12:20:07 +02:00
Meta Vens
0852f6ad29 REC-119: cut dead branch-state mirror and completed scratch note
Deletes state/branches.json (tracked as "[]") and state/scratch.md.

state/branches.json claims no branches exist, but origin actually carries
main, codex/cultgeometry-csg-rename, and other remote branches — the file
has been silently wrong since it was empty from the start, misleading any
human or agent who inspects it. No reader was found.

state/scratch.md said only that the live cut moved to CultGeometry CSG
(crates/gamecult_geometry_csg) and to stop rehydrating old scene-generation
plans from memory — a completed migration note that duplicates
state/map.yaml's current_status/live_architecture sections, which say the
same thing as the durable record.

Explicitly NOT touched, per this pass's scope: state/evidence.jsonl
(historical evidence, excluded from this cut by the assignment), and the
empty `impl DomainChunkBuild {}` block — that struct lives in the
crates/gamecult_geometry_csg git submodule, which resolves to the
GameCult.Geometry.Csg repository; it was cut there directly under REC-124
rather than duplicated here.

Kill attempt: rg -n --hidden -g '!target/**' -g '!.git/**' -g '!state/**'
'branches\.json|scratch\.md' . across this repo: no hits outside state/
itself.

Collision check: git diff --stat origin/main...origin/codex/cultgeometry-csg-rename
touches only CLAUDE.md (+3 lines); it does not touch either deleted file.

REC-119

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-13 14:12:37 +02:00
Meta Vens
59fa3ef503 Point VibeGeometry at CultGeometry CSG 2026-08-26 17:39:23 +02:00
11 changed files with 1325 additions and 35 deletions

7
.gitignore vendored Normal file
View file

@ -0,0 +1,7 @@
target/
*.pdb
*.obj
*.mtl
*.svg
*.png
*.jsonl

3
.gitmodules vendored Normal file
View file

@ -0,0 +1,3 @@
[submodule "crates/gamecult_geometry_csg"]
path = crates/gamecult_geometry_csg
url = https://github.com/GameCult/GameCult.Geometry.Csg

View file

@ -1,13 +1,45 @@
# VibeGeometry Archive Instructions
# VibeGeometry Instructions
This repository is archived provenance, not a live work surface.
## Purpose
- Do not add build, package, CI, workspace, submodule, or runtime authority.
- Preserve repository history.
- Route geometry implementation to `GameCult/CultLib`, principally
`packages/gamecult-geometry-rs` and `src/GameCult.Geometry`.
- Source witness: `vg-csg` commit
`8f070f4fb75d43f9bfaf9ca05dc66a5580809134`.
- Destination commit: CultLib `6b44f969`.
VibeGeometry is the repository shell for the CultGeometry CSG Rust work surface.
The README and `state/map.yaml` are the live provenance pointers.
The previous scene-generation mission has been deleted from the live tree. Do
not recreate it unless the user explicitly asks to recover a historical artifact
from git history.
The live mission:
```text
domain/tree intent
-> LOD-aware CSG hierarchy
-> camera/frustum selected cut
-> triangle and collider output
```
## Ownership
- `crates/gamecult_geometry_csg` owns implementation.
- The root workspace owns only wiring, submodule state, and very small guidance.
- If a new domain-tree DSL, selected-cut planner, streaming mesh cache, or
frustum query API is needed, start inside CultGeometry CSG.
- Do not add root-level helper runtimes, prompt packs, visual translation
corpora, or schema scaffolds.
## Commands
```powershell
git submodule update --init --recursive
cargo test
cargo clippy --all-targets --all-features
cargo run -p gamecult-geometry-csg --release --example csg_perf_fixture
```
## Discipline
- Keep the runtime path legible: input tree, selected cut, brush/CSG lowering,
emitted triangles, and timing evidence.
- Prefer tests and performance receipts inside CultGeometry CSG over root-level notes.
- Preserve exact parity only for public behavior the crate claims to mirror.
- RealtimeCSG is a reference seam, not an idol.
- Do not let historical scene-generation work become a live dependency again.

3
CLAUDE.md Normal file
View file

@ -0,0 +1,3 @@
Repository doctrine for this project lives in AGENTS.md, shared with Codex.
@AGENTS.md

1174
Cargo.lock generated Normal file

File diff suppressed because it is too large Load diff

3
Cargo.toml Normal file
View file

@ -0,0 +1,3 @@
[workspace]
members = ["crates/gamecult_geometry_csg"]
resolver = "3"

View file

@ -1,14 +1,51 @@
# VibeGeometry (archived)
# VibeGeometry
VibeGeometry no longer owns a build, package, crate, or runtime. Its CSG work
now lives in [`GameCult/Geometry`](https://github.com/GameCult/CultLib/tree/main/packages/gamecult-geometry-rs).
VibeGeometry is the historical shell around **CultGeometry CSG**, whose clean
package identity is `GameCult.Geometry.Csg`.
Provenance:
The previous scene-generation research era is gone from the live tree. It can
stay in git history, where failed experiments are useful without being allowed
to hold a steering wheel.
- Last imported `vg-csg` source witness: `8f070f4fb75d43f9bfaf9ca05dc66a5580809134`.
- Absorption commit in `GameCult/CultLib`: `6b44f969` (`Absorb CSG kernel into GameCult.Geometry`).
- This repository's earlier experiments remain available through git history.
The live mission is narrower and sharper:
Do not add new implementation here. Continue geometry work in
`packages/gamecult-geometry-rs` or the corresponding `GameCult.Geometry`
runtime surface in CultLib.
```text
domain/tree intent
-> LOD-aware CSG hierarchy
-> camera/frustum selected cut
-> triangle and collider output in milliseconds
```
The actual work surface is the Rust crate at:
- `crates/gamecult_geometry_csg`
- upstream: `https://github.com/GameCult/GameCult.Geometry.Csg`
## What This Repo Owns
- The CultGeometry CSG submodule pointer.
- A minimal Rust workspace that builds that crate.
- Thin operating notes that keep future work pointed at runtime CSG, not legacy
scene-generation scaffolding.
## What CultGeometry CSG Owns
- Brush and CSG tree APIs.
- RealtimeCSG-shaped public seams where useful.
- Parity fixtures for claimed public behavior.
- Dirty rebuild and demand-frontier experiments.
- Mesh/triangle output and receipt examples.
- The future LOD-aware selected-cut runtime.
## Commands
```powershell
git submodule update --init --recursive
cargo test
cargo clippy --all-targets --all-features
cargo run -p gamecult-geometry-csg --release --example csg_perf_fixture
```
If a future task needs domain-tree DSL work, put it in CultGeometry CSG unless there is
a proven reason it must live outside the crate. The default answer is simple:
the geometry machine belongs where the geometry machine runs.

@ -0,0 +1 @@
Subproject commit b476a05eb5ea93ea86f44b09892e83f4bf9499b0

View file

@ -1 +0,0 @@
[]

View file

@ -1,2 +1 @@
{"type":"rebuild","status":"accepted","note":"VibeGeometry live tree was reduced to the vg-csg Rust work surface. Historical scene-generation research surfaces were removed from live authority; history remains in git."}
{"type":"retirement","status":"accepted","source_witness":"8f070f4fb75d43f9bfaf9ca05dc66a5580809134","destination_repository":"GameCult/CultLib","destination_commit":"6b44f969","note":"Live CSG authority moved to GameCult.Geometry; VibeGeometry retains provenance through git history only."}

View file

@ -1,16 +1,48 @@
repository:
experiment:
name: VibeGeometry
status: archived_provenance
owns_live_implementation: false
status: runtime_csg_shell
phase: cultgeometry_csg_focus
premise: >
VibeGeometry is the thin historical shell around the CultGeometry CSG Rust
work surface, whose clean package identity is GameCult.Geometry.Csg.
migration:
destination_repository: https://github.com/GameCult/CultLib
rust_surface: packages/gamecult-geometry-rs
dotnet_surface: src/GameCult.Geometry
source_witness: 8f070f4fb75d43f9bfaf9ca05dc66a5580809134
destination_commit: 6b44f969
mission:
primary: >
Build a fast runtime CSG machine capable of lowering domain/tree intent into
an LOD-aware CSG hierarchy and emitting triangle/collider output for a
camera or frustum query in milliseconds.
work_surface: crates/gamecult_geometry_csg
boundaries:
- No build, package, CI, workspace, submodule, or runtime authority lives here.
- Preserve historical experiments in git history.
- Continue all geometry implementation in GameCult/CultLib.
hard_boundaries:
- Do not rebuild the historical scene-generation pipeline in this repo.
- Put implementation in `crates/gamecult_geometry_csg` unless a task proves a root-level
surface is necessary.
- Preserve exact parity only for public RealtimeCSG-style behavior the crate
explicitly claims to mirror.
- Runtime evidence must include selected-cut, dirty rebuild, emitted geometry,
and timing data where performance claims matter.
live_architecture:
pipeline:
- Domain or tree intent enters CultGeometry CSG.
- The runtime chooses an LOD-aware selected cut for the requested view,
budget, dirty state, or output scope.
- The selected cut lowers to CSG/brush operations.
- The crate emits triangle and collider output plus receipt/timing evidence.
root:
- Minimal Cargo workspace.
- `crates/gamecult_geometry_csg` git submodule.
- Minimal README/AGENTS/state pointers.
current_status:
summary: >
Root-level scene-generation surfaces have been deleted. CultGeometry CSG is the live
work surface for future domain-tree, LOD CSG, selected-cut, and triangle
emission work.
next_action: >
Continue inside `crates/gamecult_geometry_csg`: define the first LOD/query contract for
selected CSG output rather than adding new root scaffolding.
remotes:
vibegeometry: https://github.com/GameCult/VibeGeometry
gamecult_geometry_csg: https://github.com/GameCult/GameCult.Geometry.Csg