diff --git a/pi-flow-native-brain.html b/pi-flow-native-brain.html index c346dd0..c795194 100644 --- a/pi-flow-native-brain.html +++ b/pi-flow-native-brain.html @@ -457,7 +457,7 @@
G5 · Visual Captures 8 frames at 100ms intervals, grids them, feeds to gemini-2.5-flash. Checks: T-pose? Foot-slide? Frozen animation? Wrong clip? Missing transitions?
G5 · Visual Captures 8 frames at 100ms intervals, grids them, feeds to minimax-latest. Checks: T-pose? Foot-slide? Frozen animation? Wrong clip? Missing transitions?
Eighteen steps, seven cooks, five inspection points, one head chef. Triggered by a single order ticket.
-Here's how the brigade actually worked. The vision-preflight agent — the chef who checks the gas is on before anyone starts cooking — verified GEMINI_API_KEY was set and game_frames could reach the live game. Both green in under a second. Without this, the whole kitchen would prep for an hour only to discover the oven doesn't work.
Here's how the brigade actually worked. The vision-preflight agent — the chef who checks the gas is on before anyone starts cooking — verified MINIMAX_API_KEY was set and game_frames could reach the live game. Both green in under a second. Without this, the whole kitchen would prep for an hour only to discover the oven doesn't work.
The project-context-reader — the commis who reads the entire recipe book — ingested PlayerController.cs, PlayerAnimController.cs, PlayerAnimationLogic.cs, the test files, the manifest. The feature-planner — the sous-chef who breaks down the order into station tasks — decomposed 19 failures into four fix groups: vegetation manifest (146 broken prefabPath items), animation controller (crouch parameter not plumbed), jump physics (coyote time, variable height, air control — all missing), and animation tree (entire state machine absent).
Then the game-builder — the line cook at the hot station — read each test failure like a dish ticket, traced it to the source, and started cooking. Coyote time: 100ms grace period after feet leave the ground. Variable jump height: velocity scaled by hold duration, tap gives 3.5, full hold gives 6.5. Air control: horizontal speed cut 40% while airborne. Jump phases: minimum 0.15s on jump_start before transitioning up. Landing timer: wait the full animation length, not length-minus-blend. Animation tree: jump_start → jump → jump_land states with 0.1s blends.
Then the inspection line: build-verifier compiled. Test-runner ran the suite. Behavioral-prober sent {"jump":true} to the live game and sampled the player body. Feel-judge measured apex, airtime, liftoff latency. Animation-vision-judge captured 8 frames, gridded them, had gemini-2.5-flash scan for T-poses and foot-slide.
Then the inspection line: build-verifier compiled. Test-runner ran the suite. Behavioral-prober sent {"jump":true} to the live game and sampled the player body. Feel-judge measured apex, airtime, liftoff latency. Animation-vision-judge captured 8 frames, gridded them, had minimax-latest scan for T-poses and foot-slide.
Anything red → ticket back to the cook with the specific failure → fix → re-enter the line. Bounded to 3 returns. Anything green → falls through. All green → game-judge gives the final verdict.
@@ -751,14 +751,14 @@ Context: ${{input.context}}@planning@fast@research@vision@vision@compactTwo reasons. It's free — no usage limits, which matters when your game-builder reads 800-line files and writes 200-line diffs ten times a session. It's genuinely good at C# and Godot — I've had it write a full lighting module for our Godot fork by reading Unity API docs and adapting patterns. No agent had pulled that off before. DeepSeek can't do multimodal, so vision goes to Gemini — but for everything else, it's the chef's knife you reach for 90% of the time.
+Two reasons. It's free — no usage limits, which matters when your game-builder reads 800-line files and writes 200-line diffs ten times a session. It's genuinely good at C# and Godot — I've had it write a full lighting module for our Godot fork by reading Unity API docs and adapting patterns. No agent had pulled that off before. DeepSeek V4 now has multimodal, but for vision we use MiniMax latest — it's sharper at frame-by-frame animation judging and costs less per image. For everything else, DeepSeek is the chef's knife you reach for 90% of the time.
The point of the knife rack: you configure this once. Every agent declares model: @coding and gets DeepSeek V4 automatically. Swap models globally without touching any flow or agent file. The right blade, every time, no thinking required.