Merge remote-tracking branch 'origin/master' into v2
This commit is contained in:
@@ -67,3 +67,18 @@ reason.
|
|||||||
2's fp differs from turn 1's, yet the test expects reuse") and the session ended on a
|
2's fp differs from turn 1's, yet the test expects reuse") and the session ended on a
|
||||||
malformed tool call. Test fault (mine): later turns are now appended after the first user
|
malformed tool call. Test fault (mine): later turns are now appended after the first user
|
||||||
message. Resumed from the working tree.
|
message. Resumed from the working tree.
|
||||||
|
- 2026-09-25, learned from titan's router (llama-server b10964) while v2 ran: in router mode a
|
||||||
|
plain `GET /props` answers `n_ctx: 0` (`role: router`), and `GET /props?model=X` **autoloads X**
|
||||||
|
when `models_autoload` is on — the same trap as `/slots?model=X`. Task 01's poller therefore
|
||||||
|
learns nothing on a real router and the guard stays inert there. Follow-up for v2.1: query
|
||||||
|
`/props?model=X` only for models `/v1/models` lists as loaded, never for others. Not a defect
|
||||||
|
in what the tasks asked for; a gap in what the owner knew when writing them.
|
||||||
|
- 2026-09-25, task 05, first session: ended after 12 seconds. It misspelled the repository path
|
||||||
|
(`/home/kyle/src/crossar/Makefile`), the sandbox refused the out-of-repository read, and it
|
||||||
|
ended its turn — the sixth refusal-ending tonight, this one triggered by its own typo. Model
|
||||||
|
fault; no change to the task. Restarted.
|
||||||
|
- 2026-09-25, task 05, second session (30 min in, wiring written, smoke check 3 failing): the given
|
||||||
|
`tools/smoke.sh` passed a 300 KB prompt as one `curl -d` argument, which Linux caps at 128 KiB
|
||||||
|
per argv element, so check 3 could never pass. Test fault (mine): the body now goes through a
|
||||||
|
file (`-d @file`). Ornith diagnosed it correctly. Resumed from the working tree with the
|
||||||
|
corrected script.
|
||||||
|
|||||||
@@ -33,7 +33,9 @@ curl -s "$base/_crossbar/hosts" | grep -q '"beta":{"healthy":true' || fail "beta
|
|||||||
|
|
||||||
# 3. with beta awake, a prompt that fits nowhere is a 400 (both slots too small? no — beta fits):
|
# 3. with beta awake, a prompt that fits nowhere is a 400 (both slots too small? no — beta fits):
|
||||||
# check the guard's refusal with a prompt beyond beta's 65536-per-slot too
|
# check the guard's refusal with a prompt beyond beta's 65536-per-slot too
|
||||||
h=$(curl -s -o "$tmp/toolarge.json" -w '%{http_code}' -X POST -H 'Content-Type: application/json' -d "$(printf '{"model":"ornith-1.5-35b-a3b","messages":[{"role":"user","content":"%s"}]}' "$(head -c 300000 /dev/zero | tr '\0' 'x')")" "$base/opencode-a/v1/chat/completions")
|
# (the body goes through a file: a 300 KB string cannot be a single argv element on Linux)
|
||||||
|
{ printf '{"model":"ornith-1.5-35b-a3b","messages":[{"role":"user","content":"'; head -c 300000 /dev/zero | tr '\0' 'x'; printf '"}]}'; } > "$tmp/toolarge-req.json"
|
||||||
|
h=$(curl -s -o "$tmp/toolarge.json" -w '%{http_code}' -X POST -H 'Content-Type: application/json' -d @"$tmp/toolarge-req.json" "$base/opencode-a/v1/chat/completions")
|
||||||
[ "$h" = "400" ] && grep -q '"prompt too large"' "$tmp/toolarge.json" || fail "300 KB prompt should be 400 prompt too large, got $h $(cat "$tmp/toolarge.json")"
|
[ "$h" = "400" ] && grep -q '"prompt too large"' "$tmp/toolarge.json" || fail "300 KB prompt should be 400 prompt too large, got $h $(cat "$tmp/toolarge.json")"
|
||||||
|
|
||||||
# 4. identity: hermes-x is locked to peer talos (header mode)
|
# 4. identity: hermes-x is locked to peer talos (header mode)
|
||||||
|
|||||||
Reference in New Issue
Block a user