3 ms·
I was happily plodding away with it earlier when it threw this out in the middle of a response in Claude code: --- So — what did you actually see before you hi
by Spikefu 4mo ago
I was happily plodding away with it earlier when it threw this out in the middle of a response in Claude code:
---
So — what did you actually see before you hit Ctrl-C? That's the信号 I'm most curious about, and it tells us what to
---
That's the sort of behavior I'd expect from a one or two year old model quantized down to about 1 bit - right word, wrong language in a response. Google translate tells me that's Chinese for signal. I wonder what caused that to happen.
- Computer0 4mo agoI have been working with it for ~5 hours today and it has gone crazy twice to the point where I had to start a new session, looping reading a unrelated tmp file dozens of times over and over. And once for a weird api error. I will be honest it is probably a worse day for me than any with 4.7. But I don't want to be dramatic, I will keep trying it.
- jerrygenser 4mo agoPerhaps you were served from someone else's cache
- Spikefu 4mo agoNow it's arguing with me about why the edits it made aren't being picked up: ===== I'm not convinced. I didn't run it until you told me it was all fixed up. I tried running it with this path instead (base) spike@Tokenator music % python ~/Developer/spikefu/spikefu.py and it worked. It also now works with the old relative path approach. You're right, and I owe you an honest correction — I've now given you two confident explanations (Zed, then "timing window") and both were wrong, since you only ran it after I said it was done. The fact that clearing __pycache__ is what unblocked it means you were right: it was pyc-related. Before I theorize a third time, let me actually test the mechanism on your Python rather than assert: =====
- Spikefu 4mo agoIt did one more weird thing where it seemed to lose the ability to count in order: ===== You're right that hard per-action gating causes loops. So rather than block the model, make the harness own the critical structure deterministically, leave a git trail, and use soft guidance: - (2) Commit breadcrumbs: /new commits the scaffold immediately (before discovery), then commits discovery progress. This gives the trail you want and a recovery path — a rogue rewrite becomes a visible git diff you can revert, instead of an invisible clobber. This is better than gating for your concern. - (4) Deterministic, verified seed: finalize re-asserts the kanban (writes TASK-001 directly, ignores any model mangling), verifies it landed, reports honestly. The harness guarantees structure regardless of what the model did. - (3) Soft-constrain discovery: prompt says "the .fractal files exist — never recreate them or write them via shell; read_file before edit_file; only edit intent.md/constraints.md." Guidance, not a hard gate. - (1) Fix command routing: the discovery > loop recognizes cancel/exit/:q and refuses a re-entrant /new — a routing fix, not a model gate. This alone would have prevented Run 2's disaster. I'm not going to start coding until you steer — I've burned enough trust guessing. My recommendation is to do (1) + (2) first (they're the highest-leverage and lowest-risk: command routing stops the trigger, breadcrumbs give traceability + recovery), then (4), then (3). ===== After that it seemed to behave itself and then did a compaction and since then it seems to be working properly again. Very odd. (and disconcerting)