müde
58e86a3adf
refactor(hive-c0re): shrink dashboard mod root
...
convert to dashboard/mod.rs; state snapshot, meta inputs, tombstones,
and misc api handlers move to their own files
2026-07-06 21:05:52 +02:00
müde
3ee87d394c
refactor(hive-c0re): split lifecycle into submodules
...
mod.rs keeps the container verbs + priv_run plumbing; git helpers,
repo/dir setup, and host drop-in config move to their own files
2026-07-06 21:05:52 +02:00
müde
9e7af3b6bf
refactor(hive-c0re): split socket_server into submodules
...
mod.rs keeps dispatch + messaging/guards; schedules, reminders,
config approvals, and lifecycle handlers move to their own files
2026-07-06 21:05:52 +02:00
müde
380c6ad47f
refactor(hive-c0re): shared sqlite open helper with busy timeout
...
one db::open owns the parent-dir + connection + busy_timeout dance for
every host-side store (broker/approvals/questions/schedules/power in
broker.sqlite, build_logs, audit_log); schema + migrations stay per
store. same-file connections now wait out concurrent writers instead
of risking SQLITE_BUSY.
2026-07-06 20:46:57 +02:00
müde
604e1c2557
docs: job-DAG queue model; fold agent_power table into broker.sqlite
...
coordinator.md rewrites the queue section (node inventory, DAG shapes,
resources, desired-state reconciliation, boot reconcile); approvals.md
+ persistence.md + hivectl --graceful help updated to match. agent_power
lives in broker.sqlite like approvals/questions (own connection + busy
timeout) instead of a separate db file.
2026-07-06 20:36:57 +02:00
müde
8349e6f621
feat(dashboard): node-aware queue render + buildSlots option
...
each queue card now shows its DAG's node chain (per-node state, step,
build-log link), fixing 'queue jumps don't show on the dashboard'.
live-log panel keys off the running node's log. new
services.hyperhive.c0re.buildSlots option (default 1) threads the
concurrent nix-build count into serve.json.
2026-07-06 20:36:57 +02:00
müde
7946e03fde
feat(hive-c0re): replace rebuild queue with generic job-DAG queue
...
jobs are now DAGs of primitive nodes (prebuild, stop-for-update, swap,
reconcile, signal, drain, ...) driven by one scheduler with N build
slots + per-agent lifecycle leases. per-agent power intent (wanted
up/offline) is durable in agent_power.sqlite; Reconcile nodes converge
observed state to it. kills the graceful-stop watcher thread, the
deferred-start follow-up, and the cascade pre-enqueue (fan-out on
MetaLock completion instead). tracker: #2166
2026-07-06 20:36:57 +02:00
müde
79a3993def
commit the lock file agents forgot about manually like an animal
2026-07-06 19:57:53 +02:00
müde
50d801b6c9
fix(hive-claude): don't scan model-authored assistant/user content for CLI failure markers
2026-07-06 00:15:42 +02:00
müde
25540755f4
fix(hive-claude): match session by parsed top-level customTitle, not transcript substring
2026-07-06 00:09:36 +02:00
müde
8a78b8a464
docs(agent): clarify cred-file set + settings doc pointer, fix forge_notify cross-ref
2026-07-06 00:03:43 +02:00
müde
b4f54a194b
fix(agent): don't eat /compact flag on failed turn; restore ctx fallback; requeue on SessionNotFound
2026-07-06 00:01:15 +02:00
müde
dd51d02bc2
fix(hive-claude): report Progress.created on first-turn overflow, compacted only when compact succeeded
2026-07-05 23:42:57 +02:00
müde
216eb8ae9b
docs(turn-loop): split into index + claude-invocation/config/mcp sub-pages, condense the loop
2026-07-05 23:04:48 +02:00
müde
746f518250
fix(agent): show Compacting state during in-flight operator /compact
2026-07-05 22:54:20 +02:00
müde
59dd7955aa
fix(stats): last_usage orders by id (insertion order); clarify Window default
2026-07-05 22:53:16 +02:00
müde
f2f104627d
refactor(agent): drop vestigial install_configured param, non_empty_env helper, explicit infallible expect in client
2026-07-05 22:49:45 +02:00
müde
9cebc128e2
refactor(web_ui): Bus::effective_context_window, sigint_claude + per-connection hello, relocate fetch_reminder_stats, drop redundant guard
2026-07-05 22:47:14 +02:00
müde
77f31b44bb
refactor(agent): fire_and_forget helper, drop dead default_model + compact_percent fallback, fix stale comment
2026-07-05 22:43:23 +02:00
müde
9721be7bc3
docs(turn_stats): mark unread columns as forward-capture, not consumed
2026-07-05 22:39:45 +02:00
müde
f490e07509
refactor(prompt): drop unreachable role-block defensive branches; keep marker grammar
2026-07-05 22:36:10 +02:00
müde
20ff891962
refactor(forge_notify): share render_body_excerpt across formatters; fix nits + docs
2026-07-05 22:32:00 +02:00
müde
dd7f8c5ebb
docs(turn-loop): document PromptTooLong archive+requeue, TurnOutcome=Result, credential-file session detection
2026-07-05 22:27:09 +02:00
müde
90af3e8d0b
refactor(mcp): split claude launch-config layer into mcp_config.rs
2026-07-05 22:24:46 +02:00
müde
e1e3bda94a
style: apply nix fmt
2026-07-05 22:24:42 +02:00
müde
9a0d525fdf
refactor(mcp): drop vestigial SocketReply, match hive_sh4re::Response directly; remove dead code
2026-07-05 22:12:45 +02:00
müde
543177ed74
refactor(mcp): collapse repeated failure-arm triplet into reply_err helper
2026-07-05 22:05:06 +02:00
müde
785a36b907
refactor(web_ui): share one broker_request helper; /send timeout now 409 not 500
2026-07-05 21:55:28 +02:00
müde
d83d03e4c0
fix(agent): key session detection off credential filenames; own clear_session in login.rs
2026-07-05 21:48:56 +02:00
müde
d004fdc0eb
fix(stats): set busy_timeout on agent snapshot reader so a concurrent write can't blank the page
2026-07-05 21:43:25 +02:00
müde
2b5edef4d1
fix(agent): recover PromptTooLong via archive+requeue; model TurnOutcome as Result
2026-07-05 21:42:13 +02:00
müde
cba3726389
remove redundant todo md
2026-07-05 20:56:15 +02:00
müde
4a404c1128
docs: describe hive-claude split, InfiniteSession, deferred compact, web_ui dir
2026-07-05 20:53:56 +02:00
müde
7c851c5dd3
fix(web_ui): cap bind_with_retry at 12 attempts, then return AddrInUse
2026-07-05 20:41:37 +02:00
müde
bdfeac80a7
refactor(web_ui): split into a module dir by concern, serve stays in mod.rs
2026-07-05 20:40:07 +02:00
müde
efaf56c2d5
refactor(agent): remove vestigial turn_lock (serve loop is single-driver)
2026-07-05 20:26:04 +02:00
müde
66f5b8720d
refactor(agent): use hive_claude::TokenUsage directly, drop the duplicate
2026-07-05 20:21:33 +02:00
müde
c9de2eeb97
refactor(agent): build the InfiniteSession once in the serve loop, thread it
2026-07-05 20:16:06 +02:00
müde
f6977a961a
perf(hive-claude): match rate-limit markers on raw line, drop re-serialize
2026-07-05 20:09:11 +02:00
müde
487e62a9ca
feat(hive-claude): parse turn telemetry in the lib, return it from run
2026-07-05 20:06:30 +02:00
müde
faa7f982af
feat(web_ui): defer operator /compact to turn end, run when idle too
2026-07-05 19:49:00 +02:00
müde
80d819e444
feat(hive-claude): add InfiniteSession (name+store+compaction policy)
2026-07-05 19:38:16 +02:00
müde
bf93a81e1d
refactor(agent): move login-wait into login.rs, dedupe env resolvers
2026-07-05 19:08:48 +02:00
müde
a3b66241d1
refactor(agent): extract claude driver into hive-claude crate
2026-07-05 18:50:12 +02:00
müde
e35acca814
fix(agent): pin claude session by constant title, archive on reset
2026-07-05 18:13:54 +02:00
iris
6528a90233
fix(web_ui): drop stale (max) suffix from xhigh effort label
...
xhigh and max are distinct reasoning-effort levels (see EFFORT_LEVELS
in events.rs); labelling xhigh as '(max)' implied they were the same
level, per issue #2258 .
2026-07-05 12:50:20 +02:00
damocles
788673341c
refactor(term): add mutableRow to terminal api, use it for thinking_tokens
2026-07-05 12:39:26 +02:00
damocles
dc63bfcb23
fix(term): store text node ref for thinking_tokens, drop DOM dance
2026-07-05 12:20:37 +02:00
damocles
758f5ae5a8
fix(term): flex layout for details summary, fix thinking brain icon column
2026-07-05 12:10:24 +02:00
damocles
6d2e56e7c8
fix formatting (treefmt)
2026-07-05 12:00:18 +02:00