Initial project skeleton: shared prompt, coordination, baseline
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
12
COORDINATION.md
Normal file
12
COORDINATION.md
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
# Coordination
|
||||||
|
|
||||||
|
Claim a task before starting. Release it when done. One agent per file.
|
||||||
|
|
||||||
|
| Task | Agent | Branch | Status |
|
||||||
|
|------|-------|--------|--------|
|
||||||
|
| Phase 0: build Orca, record baseline | Claude | | open |
|
||||||
|
| Phase 1: prime tower trace | Codex | | open |
|
||||||
|
| Phase 1: flush-into-object trace | Grok | | open |
|
||||||
|
| Phase 1: Flexi Cube inspection and options | Claude | | open |
|
||||||
|
|
||||||
|
## Notes and disagreements
|
||||||
92
PROMPT.md
Normal file
92
PROMPT.md
Normal file
@@ -0,0 +1,92 @@
|
|||||||
|
# FLUSH FIDGET — shared agent prompt
|
||||||
|
|
||||||
|
Every agent (Claude, Codex, Grok) reads this file first. It is the single source of
|
||||||
|
truth for the project. If something here is wrong, say so in COORDINATION.md; do not
|
||||||
|
quietly work around it.
|
||||||
|
|
||||||
|
## Goal
|
||||||
|
|
||||||
|
Orca Slicer wastes most of the filament on a multi-colour print as purge: one real
|
||||||
|
4-colour slice used 94 g of purge and prime tower against 19 g for the model itself
|
||||||
|
(392 filament changes). Make that purge land in a **flush fidget** instead of the
|
||||||
|
tower or a waste bin.
|
||||||
|
|
||||||
|
The flush fidget is the print-in-place Flexi Cube at `assets/flexi cube.stl`.
|
||||||
|
Getting that one file through the whole process is the goal: slice it as the purge
|
||||||
|
target, print it, and have it still flex.
|
||||||
|
|
||||||
|
**Random colours on the outside are wanted.** Purge showing on the exterior in
|
||||||
|
unplanned colours is the desired look, not a defect. Do not hide it inside infill.
|
||||||
|
|
||||||
|
## Success test
|
||||||
|
|
||||||
|
Slice a 4-colour model with the Flexi Cube on the plate as the purge target. Then:
|
||||||
|
|
||||||
|
1. The Flushed + Tower totals in Orca's filament table drop substantially against
|
||||||
|
the baseline recorded in `tests/baseline.md`. Ideal: no prime tower at all.
|
||||||
|
2. The G-code preview shows purge extruded into the Flexi Cube, with mixed colours
|
||||||
|
on its outer surface.
|
||||||
|
3. The printed cube still moves. Colour-change purge must not fuse the joints or
|
||||||
|
fill the clearances. This is the hard constraint and the likeliest failure.
|
||||||
|
|
||||||
|
## The core problem
|
||||||
|
|
||||||
|
Purge needed per layer depends on the colour changes on that layer. The cube has a
|
||||||
|
fixed cross-section per layer. They won't match. Layers needing more purge than the
|
||||||
|
cube can take, and layers needing less, both have to be handled. Any design that
|
||||||
|
ignores this will look right in the preview and fail on the printer.
|
||||||
|
|
||||||
|
## Rules
|
||||||
|
|
||||||
|
- Smallest change that works. Do not rewrite the slicer.
|
||||||
|
- Label every claim VERIFIED (you read the code or ran it) or UNVERIFIED. File paths
|
||||||
|
in this document are guesses until an agent confirms them. A starting guess for the
|
||||||
|
tower code is `src/libslic3r/GCode/WipeTower.cpp` and `WipeTower2.cpp`.
|
||||||
|
- Metric units. No new dependencies without asking Fred.
|
||||||
|
- Orca Slicer is AGPL-3.0. Keep upstream as a remote. Keep the licence intact.
|
||||||
|
- Only touch this repo and the Orca fork. Never touch Fred's other workspace files.
|
||||||
|
- Do not push to `main`. Do not push anywhere public. Fred decides when anything is
|
||||||
|
published.
|
||||||
|
- Never print without Fred present.
|
||||||
|
|
||||||
|
## Team protocol
|
||||||
|
|
||||||
|
- Each agent works in its own git worktree on `agent/<name>/<task>`.
|
||||||
|
- Claim a task in `COORDINATION.md` before starting. Two agents never edit the same
|
||||||
|
file at once. Claude merges.
|
||||||
|
- Write findings to `recon/<name>-<topic>.md` with file paths and line numbers.
|
||||||
|
- Put code changes in the Orca fork. Keep the resulting patches in `patches/`.
|
||||||
|
|
||||||
|
## Phases
|
||||||
|
|
||||||
|
**Phase 0 — Baseline (Claude).** Build Orca from source on this machine. Record the
|
||||||
|
exact commands and build time in `tests/baseline.md`. Slice the reference model and
|
||||||
|
record its Flushed and Tower totals there. Nothing proceeds until this works.
|
||||||
|
|
||||||
|
**Phase 1 — Recon, read-only.**
|
||||||
|
- Codex: trace how the prime tower is generated layer by layer, and where the flush
|
||||||
|
matrix and multiplier feed in.
|
||||||
|
- Grok: trace the existing "flush into objects' infill / support / this object"
|
||||||
|
feature. Where does purge get routed into an object, and what limits how much it
|
||||||
|
absorbs?
|
||||||
|
- Claude: inspect `assets/flexi cube.stl`. Report its volume per layer, joint
|
||||||
|
clearances, and wall thickness. Then set out the options for reconciling purge
|
||||||
|
volume with that cross-section, with effort and risk for each.
|
||||||
|
|
||||||
|
**STOP after Phase 1. Report to Fred. Write no code until Fred approves one option.**
|
||||||
|
|
||||||
|
## Options to evaluate (do not implement yet)
|
||||||
|
|
||||||
|
1. No code: use the existing flush-into-this-object feature with the cube as the
|
||||||
|
target. Say whether it is enough on its own.
|
||||||
|
2. Extend flush-into-this-object so the chosen object absorbs more, including onto
|
||||||
|
its outer surface.
|
||||||
|
3. Replace the tower geometry with the cube. Likely hardest.
|
||||||
|
|
||||||
|
For each: files touched, effort, and what breaks. Option 2 or 3 must say how the
|
||||||
|
joints stay free.
|
||||||
|
|
||||||
|
## Reporting
|
||||||
|
|
||||||
|
Short and plain. Lead with the answer. If you are unsure, say so and say what would
|
||||||
|
settle it. Fred has ADHD: no walls of text, no unrequested tangents.
|
||||||
17
README.md
Normal file
17
README.md
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
# flush-fidget
|
||||||
|
|
||||||
|
Turn Orca Slicer's purge waste into a printed fidget. The target object is a
|
||||||
|
print-in-place Flexi Cube, with random exterior colours welcome.
|
||||||
|
|
||||||
|
Agents: read `PROMPT.md` first.
|
||||||
|
|
||||||
|
```
|
||||||
|
PROMPT.md shared prompt for every agent
|
||||||
|
COORDINATION.md who is doing what right now
|
||||||
|
assets/ flexi cube.stl and reference models
|
||||||
|
recon/ read-only findings, one file per agent per topic
|
||||||
|
patches/ changes to the Orca fork, as patch files
|
||||||
|
tests/ baseline numbers and test slices
|
||||||
|
```
|
||||||
|
|
||||||
|
The Orca Slicer fork is a separate repository.
|
||||||
11
assets/README.md
Normal file
11
assets/README.md
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
# assets
|
||||||
|
|
||||||
|
`flexi cube.stl` is not here yet. It lives on Fred's Omarchy machine at
|
||||||
|
`/home/fred/Downloads/flexi+cube+3_stls/flexi cube.stl`. The folder name suggests
|
||||||
|
three STLs, so confirm which one is meant.
|
||||||
|
|
||||||
|
Copy it in with:
|
||||||
|
|
||||||
|
scp "/home/fred/Downloads/flexi+cube+3_stls/flexi cube.stl" fred@10.0.10.12:/home/fred/workspace/projects/flush-fidget/assets/
|
||||||
|
|
||||||
|
Check the licence and source of the model before this repo is made public.
|
||||||
0
patches/.gitkeep
Normal file
0
patches/.gitkeep
Normal file
0
recon/.gitkeep
Normal file
0
recon/.gitkeep
Normal file
23
tests/baseline.md
Normal file
23
tests/baseline.md
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
# Baseline
|
||||||
|
|
||||||
|
Re-slice the reference model with the current profile before any code changes, and
|
||||||
|
fill this in. Phase 0 is not done until it is.
|
||||||
|
|
||||||
|
Reference slice (2026-10-04, Bambu P2S, 0.20mm High Quality, 4 filaments, tower on):
|
||||||
|
|
||||||
|
| | Model | Support | Flushed | Tower | Total |
|
||||||
|
|---|---|---|---|---|---|
|
||||||
|
| grams | 18.78 | 2.03 | 61.61 | 32.95 | 115.37 |
|
||||||
|
|
||||||
|
Waste (Flushed + Tower): 94.56 g. Filament changes: 392. Print time: 11h52m.
|
||||||
|
|
||||||
|
Flush volumes in that slice are unrecorded. Record the matrix and multiplier here
|
||||||
|
for the new baseline.
|
||||||
|
|
||||||
|
| Item | Value |
|
||||||
|
|---|---|
|
||||||
|
| Orca build commit | |
|
||||||
|
| Build time | |
|
||||||
|
| Flush matrix and multiplier | |
|
||||||
|
| Flushed (g) | |
|
||||||
|
| Tower (g) | |
|
||||||
Reference in New Issue
Block a user