Commit Graph
195 Commits
Author SHA1 Message Date
Sycun 27c1ff6573 feat: give the update source a page, and the adopt flow its preview
The console page grows an update-source section: what is in effect and where it
comes from (config.yaml or the tree's own tracking), an edit form for the three
fields, and - for a directory that is not a git installation - the adopt entry.
Adopt is preview-first: the plan lists what would be replaced and what would be
kept, the confirm dialog carries the counts, and the restart tick is the same one
an update uses. A refused save shows the server's own sentence (a remote name and
an address together, an ext:: address) instead of a generic failure, and the typed
values survive the failed save and the polling redraws.

zh/EN/RU dictionaries carry the 27 new keys; the console page's contract tests
grow to 29 (source rendering and save body, the refusal path, adopt gating by
installation kind, preview-then-confirm); docs/README describe choosing a source
and connecting an unpacked installation.
2026-10-07 12:49:15 +08:00
Sycun dc5c4d6a75 fix: build the server through the package, not one file
The CLI now lives in two files (main.go and update_cli.go), so
`go build cmd/server/main.go` compiles only main.go and leaves
updateCommandIfNeeded undefined - which is exactly how run.sh (twice) and both
READMEs built. `go build ./cmd/server` compiles the whole package; run.sh's
rebuild check already scans internal/ and cmd/ for newer sources, so nothing
else needed adjusting.
2026-10-07 12:11:50 +08:00
Sycun cb8bc6b824 feat: update this installation's own source in one action
An operator running a fork has no honest way to upgrade: upgrade.sh downloads the
Release tarball of one hard-coded third-party repository and rsyncs it over the
tree, so "upgrade" means "overwrite yourself with somebody else's code", and the
safe alternative is to pull by hand and remember the build command.

internal/update drives the remote the directory already tracks: fetch, fast-forward,
go build into .update-staging, atomic rename of the binary (the previous one kept as
cyberstrike-ai.prev), and a .update-state.json so a rollback has a target that is
not guessed at. Refusals are the point - local source edits and a diverged branch
stop with the file names and commit counts in the error rather than being reset to
match, and operator-owned content (roles/skills/tools/agents/data/config.yaml) is put
aside before the merge and restored over it, with what was kept listed in keptContent
instead of quietly dropped.

Consumers: GET/POST /api/system/update* behind update:read / update:apply (mutations
are process-global, so they need a global-scope session); a console page at
#system-update with an apply button that names why it is blocked, a job polled from
the server and a rollback control; the same three actions as -check-update / -update
/ -update-rollback on the binary; OpenAPI entries for all five endpoints. Permission
gating no longer re-enables a control a page disabled for a reason of its own
(data-state-disabled), which every state-disabled, permission-gated button in the
console was subject to. upgrade.sh becomes a thin shell over the same implementation
and only falls back to the tarball path for installs that are not git work trees.

Docs and the zh/EN/RU dictionaries are updated. The package runs 13 tests against
real temporary git repositories; the HTTP layer, RBAC and the console page each
carry their own contract tests.
2026-10-07 12:07:26 +08:00
Ed1s0nZ e9b6e0d86e docs: update WeCom group QR references 2026-09-23 18:02:00 +08:00
Ed1s0nZ f7882be546 feat: manage task process lifetimes and preserve turn history 2026-09-16 17:52:58 +08:00
Ed1s0nZ eca26f0e4d docs: remove sponsorship content and QR image 2026-09-14 13:48:42 +08:00
Ed1s0nZ 6ad9ea2d13 feat: add configurable tool call blocking and monitoring 2026-09-08 09:44:32 +08:00
temp c70da22de7 Remove conversation grouping feature 2026-08-26 15:00:09 +08:00
公明 f285d47404 Add files via upload 2026-07-23 19:14:09 +08:00
公明 c4a56c1ada Add files via upload 2026-07-21 21:04:53 +08:00
公明 ef2c3474fe Add files via upload 2026-07-20 16:54:50 +08:00
公明 c915abf310 Add files via upload 2026-07-17 17:17:10 +08:00
公明 4349742b12 Add files via upload 2026-07-16 21:37:30 +08:00
公明 4df916cfc5 Update README.md 2026-07-14 17:59:03 +08:00
公明 16be9edf51 Update README.md 2026-07-14 17:58:32 +08:00
公明 7d73530538 Update README.md 2026-07-14 17:58:07 +08:00
公明 10e606742b Update README.md 2026-07-14 17:57:36 +08:00
公明 2924d6636c Add files via upload 2026-07-14 15:11:50 +08:00
公明 f77cc09477 Add files via upload 2026-07-13 17:25:30 +08:00
公明 5423bd5e1e Add files via upload 2026-07-13 17:22:31 +08:00
公明 a64c18df6d Add files via upload 2026-07-13 17:12:48 +08:00
公明 23ec222b77 Add files via upload 2026-07-13 16:53:08 +08:00
公明 1cf10981ef Add files via upload 2026-07-11 11:30:50 +08:00
公明 c33e5f2026 Add files via upload 2026-07-10 21:35:49 +08:00
公明 7522bab98c Add files via upload 2026-07-08 15:28:38 +08:00
公明 cdd1894737 Add files via upload 2026-07-07 14:20:55 +08:00
公明 caf4cf61c1 Add files via upload 2026-07-07 14:06:29 +08:00
公明 00802a275c Add files via upload 2026-07-07 14:04:18 +08:00
公明 60ba6b8eb3 Add files via upload 2026-07-07 11:48:53 +08:00
公明 1dc43083b0 Add files via upload 2026-07-06 16:20:29 +08:00
公明 33d6f8bb0c Add files via upload 2026-07-06 14:56:46 +08:00
公明 4af5e2691e Update README.md 2026-07-03 19:35:28 +08:00
公明 a3739210e4 Add files via upload 2026-07-03 17:10:03 +08:00
公明 1ff2df68ac Add files via upload 2026-07-02 23:32:48 +08:00
公明 7e764df0e8 Add files via upload 2026-07-02 18:02:45 +08:00
公明 926491b746 Add files via upload 2026-07-02 12:08:14 +08:00
公明 d9ed36cfb1 Add files via upload 2026-06-20 19:45:29 +08:00
公明 508de5fad0 Add files via upload 2026-06-18 12:47:24 +08:00
公明 96ccbff77c Add files via upload 2026-06-12 21:28:51 +08:00
公明 9857003018 Add files via upload 2026-06-11 01:38:25 +08:00
公明 c2892ccd33 Add files via upload 2026-06-08 15:55:03 +08:00
公明 3a6bc60276 Add files via upload 2026-06-03 17:09:56 +08:00
公明 b8b1e8431b Add files via upload 2026-06-02 13:34:12 +08:00
公明 44ced98863 Add files via upload 2026-05-26 14:24:32 +08:00
公明 9b82f265fd Add files via upload 2026-05-20 18:24:17 +08:00
公明 d961ba1ec7 Add files via upload 2026-05-15 11:43:33 +08:00
公明 4a11ba8f14 Add files via upload 2026-05-13 10:40:56 +08:00
公明 d603060511 Add files via upload 2026-05-04 03:52:47 +08:00
公明 913115d1fb Add files via upload 2026-04-26 04:26:29 +08:00
公明 e03bdf8044 Add files via upload 2026-04-24 01:51:25 +08:00