Commit Graph
67 Commits
Author SHA1 Message Date
ДмитрийandClaude Opus 5.5 f126cb4ed0 preview 0.9.11: real Server Migration page, world settings carried by the modular copy
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 09:28:00 +05:00
ДмитрийandClaude Opus 5.5 71ffd568bb Merge feat/rust-launcher into preview/modules-v2
The Manager starts servers with coa-core::launcher (no Python bridge),
the bug-report relay runs as coa-launcher relay-worker, and manage.py is
no longer edited. Preview identity in tauri.conf.json is kept.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-10 13:29:27 +05:00
ДмитрийandClaude Opus 5.5 ee36692db7 launcher (Rust): services, world supervisor, SQUID provisioning, coa-launcher.exe
- services: exclusive-bind port check, readiness by listener row or the server side of a
  loopback connection, MySQL client, start MySQL/auth, stop-all (world through its console,
  database last), status.
- world: start-world through a supervisor process (coa-launcher watch-world) that keeps the
  bug-report relay (still BugReport/relay.py via the repack's Python) alive; detailed logging.
- squid: squid_playerbots.py in Rust with the same journals (coa_squid_migrations,
  coa_squid_pending, coa_bots_installed).
- coa-launcher.exe: the manage.py commands and error texts (the Manager reads them).
- Services no longer inherit the launcher's stdin/stdout/stderr: a server holding the
  output pipe kept whoever read the launcher's output waiting.

E2E (examples/launcher_e2e, disposable stable repack on free ports): coa-launcher start-all ->
manage.py sees and stops it; manage.py start-all -> coa-launcher sees and stops it; a second
Rust-only cycle leaves nothing running.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-10 07:29:55 +05:00
Дмитрий d63e85bb18 Prepare Manager 0.9.10 with reviewed notes and signing of local installers [skip ci] 2026-11-08 01:20:32 +05:00
ДмитрийandClaude Opus 5.5 3987f1b2ff preview: simpler Modules screen, catalogue as a compact list with categories
- Header is just "Modules" with "Add from a link" (the GitHub URL bar is folded
  away until asked for) and a menu for builds/logs, build tools and the
  diagnostics export. The build-tools bar shows only when something is missing.
- Two tabs (Installed, Catalog) styled like the settings page.
- Catalogue: one list of rows (name, owner, category, stars, one action); CoA's
  own modules first. Compatibility and sort are drop-downs; 20 functional
  categories as chips with counts. "Checked by CoA" is the curated list only.
- Categories: owner's reviewed list (181 modules, high/medium confidence) plus
  keyword rules for every other module (coa-module-categories.json).
- Catalogue statuses come from the current overlay on every read (a cached copy
  kept the old Verified marks), and no more made-up entries for overlay rules
  the public catalogue does not list (fake AGPL-3.0, 0 stars, duplicate mod-cfbg).
- Window size, position and maximized state persist (tauri-plugin-window-state,
  visibility left to the app).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-07 10:05:58 +05:00
ДмитрийandClaude Opus 5.5 9f48cfc8d5 preview 0.9.10: bare modular core for new servers, modular copy of classic servers
- A new server goes on to the preview core without compiling any module
  (recommended modules are declined once; modules come from the Modules page).
- Choosing a server with the classic core makes a modular copy next to it:
  every acore_* database (read from the running database, or from a private
  copy of the stopped data files opened by the new server's own mysqld),
  module configs and realm profiles, ports and console login. The old server
  is only read. The copy then takes the preview core with the modules the old
  server had switched on.
- Installs and the preview update run on unused ports, so a server running on
  the shipped ports (the old one, or any other) no longer stops them; the
  schema check after "Preparing database" used the shipped port before.
- Dungeon Clear is part of SQUID's Playerbots: no card of its own (it said
  "Always on" while SQUID was off), switched with SQUID, settings on the SQUID card.

E2E (examples/preview_bare_and_copy_e2e, disposable servers, another server
running on the shipped ports): fresh install committed with no plugins and a
clean boot report; copy of a stopped and of a running classic server: data
identical, old server's files byte-for-byte unchanged, Content Scaling and
Companions built on the copy, preview core committed.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-06 23:49:03 +05:00
ДмитрийandClaude Opus 5.5 2bec907fa7 Merge Manager 0.9.9 (master) into the Modules Preview
Stable packages from 0.261104.94 need Manager 0.9.8; the preview was 0.9.7.
Conflicts kept the preview's module screen and plugin-aware module logic, took
master's requires-squid compatibility value and version 0.9.9 under the
preview's own product name and identifier.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-05 16:23:05 +05:00
Дмитрий 173248efbe Prepare Manager 0.9.9 with isolated login validation and translated release notes 2026-11-03 19:44:03 +05:00
Дмитрий 7d062faa1a merge: bring preview/modules-v2 up to date with master (base 0.9.7) 2026-11-03 12:01:47 +05:00
Дмитрий bd98d3eb73 feat(preview): implement CSM Modules Preview standalone edition with Controlled Build Engine, SQL review gate, and test realm integration 2026-11-01 16:29:35 +05:00
Дмитрий 23cbb108ad Prepare Manager 0.9.8 with isolated validation and SQUID module controls 2026-10-31 20:00:11 +05:00
Дмитрий 56faaa3a2a Qualify translations against the exact upcoming server notes including SQUID 2.8.2 2026-10-30 20:32:31 +05:00
Дмитрий 7e7216979a Refresh release notes for the offered update instead of reusing incomplete history 2026-10-30 15:08:29 +05:00
Дмитрий 30d2f56997 Stabilize server lifecycle, client settings and release qualification 2026-10-30 14:04:18 +05:00
Дмитрий dad10d8a5d Integrate settings and release history for Manager 0.9.4 2026-10-29 16:10:43 +05:00
Дмитрий e7b76137d1 Prepare Manager 0.9.3 and verify platform-specific realm restriction 2026-10-29 10:07:33 +05:00
Дмитрий ce83f04d9d Prepare Manager 0.9.2 with database startup and configuration fixes 2026-10-28 22:17:26 +05:00
Дмитрий 8bbf16ed4f Prepare Manager 0.9.1 hotfix without settings redesign 2026-10-28 17:46:38 +05:00
Дмитрий dc97095bd6 Prepare Manager 0.9.0 candidate and translate integrated realm controls 2026-10-28 08:25:41 +05:00
Дмитрий 5fdee1d658 Prepare matching CoA Custom 1.9.2 client installation 2026-10-26 23:14:39 +05:00
Дмитрий 8addc97bc5 Prepare compatible CoA Custom 1.9.1 client installation 2026-10-25 11:41:15 +05:00
Дмитрий d5f1e9cc83 Integrate isolated rulesets, portable admission, and compatible relay authentication 2026-10-24 06:04:26 +05:00
Дмитрий 2715170622 Fix portable schema 9 compatibility and prepare Manager 0.7.3 2026-10-24 01:00:27 +05:00
Дмитрий 4d59ce8cb1 Prepare Manager 0.7.2 for candidate-only qualification 2026-10-23 18:52:22 +05:00
Дмитрий 8d2befd7f0 Update Custom Races client package to 1.8.3 for Manager 0.7.1 2026-10-22 10:41:52 +05:00
Дмитрий e60b5e2e5a feat(client): add native login & password prefill for Ascension client (0.7.0)
- Implement LibSerialize v1, raw DEFLATE and print base64 codec in glue_config
- Prefill login credentials in join_realm, portable_launch and play
- Preserve all existing saved client accounts without loss
- Rebuild production 0.7.0 NSIS artifacts and update SHA-256 checksums
2026-10-11 18:13:01 +05:00
Дмитрий d828c982de chore(release): promote release candidate to v0.7.0 2026-10-10 11:27:15 +05:00
Дмитрий 65ace578f7 Merge origin/master into feat/portable-characters 2026-10-09 14:41:53 +05:00
ДмитрийandClaude Sonnet 5.5 5328709826 Release Manager 0.6.7
Version bump only. Collects: the update check no longer fails after a crash and no longer
starts MySQL in the background, the Wildcard table repair checksum error, same-version files
edited by hand are not an update, a stopped server stays stopped after an update, the layout
fixes, one card per realm, remove-server and backup-folder settings, the Accounts tab
(bot accounts hidden), a world server started from the coa-bots folder, and the new
SQUID bot Dashboard tab.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-08 09:41:37 +05:00
ДмитрийandClaude Sonnet 5.5 2caa687490 Phase 12: Coordinator deployment files, join/claim commands and UI, access options for published realms
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 22:35:07 +05:00
ДмитрийandClaude Sonnet 5.5 71e1488336 Phase 12: control module in coa-core (SecretStore, PlayerIdentity, HostService, host/player links, claim export/adopt) and e2e tests
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 22:26:20 +05:00
ДмитрийandClaude Sonnet 5.5 6fa3c9ccf4 Phase 12: control protocol crate (Noise channel, coordinator frames, app messages) and Coordinator service
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 22:12:57 +05:00
ДмитрийandClaude Sonnet 5.5 95ab5dd9ef Phase 11: public realm list and detail, Player Mode server browser
Registry: GET /registry/v2/realms (keyset cursors, bounded filters and sorts, indexes per sort,
ETag and a short server-side cache, per-address limit) and /realms/{id}; migrations 3 and 4.
Manager: Servers page (table, filters, sortable columns, detail drawer, module tooltips from the
local catalog, players and bots apart, ping unknown), compatibility of the chosen character with
an advertised realm through the Phase 7/8 rules.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 21:56:09 +05:00
ДмитрийandClaude Sonnet 5.5 1267bcc41e Phase 10: central realm Registry, Host publishing lifecycle, deployment
crates/coa-registry-proto (protocol 1: types, limits, signed-request canonicalisation, test vectors),
services/coa-registry (axum + PostgreSQL, migrations, rate limits, Dockerfile, deploy files),
services/coa-registry-e2e (Host lifecycle against the real service, live VPS gate),
coa-core realm_registry (identity keys, client, publishing loop on its own thread),
Settings -> Public listing card, docs REGISTRY_PROTOCOL.md and REGISTRY_DEPLOYMENT.md.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 20:23:13 +05:00
ДмитрийandClaude Sonnet 5.5 d05bfe8b09 Merge master (0.6.6) into feat/portable-characters
Conflicts were additive only: the rusqlite and if-addrs dependencies sit side by side, and the
portable.* and fr.lan.* translation blocks are both kept in en and ru.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 17:54:17 +05:00
ДмитрийandClaude Sonnet 5.5 f22cedd963 Release Manager 0.6.6
Version bump only. Collects: one-click diagnostics and report routing, LAN
address selector, Auction House Bot card without a GUID, experimental Linux
Docker installer, and the fixes already on master since 0.6.5.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 10:20:40 +05:00
ДмитрийandClaude Sonnet 5.5 8490dc9983 Let the person choose and keep the LAN address friends connect to
Sharing on the local network used to take whatever address the Manager found
first, which is often a virtual adapter. The Friends page now lists the usable
IPv4 addresses of the computer (the automatic one marked) and accepts a custom
one. The choice is kept independently of the sharing mode, so it survives
restarts and switching to other modes. A chosen address that is not available
is reported instead of silently switching to another adapter.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 06:44:34 +05:00
ДмитрийandClaude Sonnet 5.5 efd4b8bbf2 feat(portable): local canonical storage for portable characters (Phase 1)
Adds crates/coa-core/src/portable: UUIDv7 identities, namespaced content ids,
the v1 portable character model (validated, bounded, canonical), compressed
hashed snapshots, a union-only collection set, and a SQLite (WAL) store with
revisions, stale-revision rejection, rollback-as-new-revision, configurable
history, realm/item mappings and forward-only migrations.

No realm database, network or UI is touched; no existing behaviour changes.
45 new tests. Format documented in docs/PORTABLE_FORMAT.md.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-06 07:13:14 +05:00
Дмитрий 0d6d8a0db8 Harden server update history, recovery guards and repeated checks 2026-10-06 07:01:13 +05:00
Дмитрий cfe0889a4f Fix embedded launcher startup and retry applied updates safely 2026-10-05 13:53:32 +05:00
Дмитрий 5d865fcaea Prepare Manager 0.6.3 with remote clients and scaling settings 2026-10-05 03:15:05 +05:00
Дмитрий a02130f587 Prepare Manager 0.6.2 release 2026-10-05 02:31:56 +05:00
Дмитрий 146b1c50b9 Release Manager 0.6.1 and preserve Docker lifecycle compatibility 2026-10-04 15:43:29 +05:00
Дмитрий 162bfd1e04 Release Manager 0.6.0 with Chinese localization, realm sync and Linux preview 2026-10-03 22:50:01 +05:00
Дмитрий 46ba3fa3dc Merge branch 'review/pr9' into release/0.6.0 2026-10-03 22:45:37 +05:00
Corfirean 1bcef5f8c2 Add CoA / Wildcard realm profiles for v0.5.0 (#10)
* Add isolated Wildcard realm profiles and release v0.5.0

* Document realm validation and align npm lock version
2026-10-03 11:12:04 +05:00
Дмитрий c0c414f5a8 fix(report): open GitHub reports with the system URL opener (#8) 2026-10-03 06:22:49 +05:00
CorfireanandClaude Sonnet 5.5 cc5363b385 Release 0.4.0: modules page, one settings panel, collections, account delete, bot economy switches
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-02 20:41:25 +05:00
ДмитрийandClaude Sonnet 5.5 d01e401f3c Layout fixes (fluid main card, password field), no emoji in reports, empty modules page; Release 0.3.1
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-01 16:30:12 +05:00
ДмитрийandClaude Sonnet 5.5 c8f6d61b98 Release 0.3.0
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-01 07:59:59 +05:00