bot-hermes
66edc74fac
feat(web,ui): per-project git provider API base URL overrides
...
Per provider (github|gitlab|gitea) a project override stored in
~/.config/openchamber/projects/<projectId>.json under gitProviders wins
over the global settings.json value (precedence: project override > global
> built-in default). Server forge routes resolve the override per request
directory (worktree-aware via git-common-dir + containment + path fallback,
60s TTL cache); the override host is also accepted for remote parsing and
client detection. New GET/PUT /api/projects/:projectId/git-providers route;
client openchamberConfig preserves the server-owned gitProviders key;
Projects page gains a Git provider API base URLs section; detection store
hydrates per-project overrides (memory-only, server-authoritative).
2026-08-17 09:57:54 +00:00
..
2026-07-18 00:11:05 +03:00
2026-06-23 21:52:51 +03:00
2026-08-04 14:40:44 -07:00
2026-08-07 00:25:57 +03:00
2026-08-15 01:59:26 +03:00
2026-08-15 01:59:26 +03:00
2026-06-02 00:43:05 +03:00
2026-06-02 00:43:05 +03:00
2026-06-26 19:27:53 +03:00
2026-08-03 06:40:01 +00:00
2026-08-03 12:03:37 +00:00
2026-08-03 06:56:38 +00:00
2026-08-13 22:44:13 +03:00
2026-08-13 22:44:13 +03:00
2026-08-17 09:55:11 +00:00
2026-08-05 11:24:14 +03:00
2026-08-05 11:24:14 +03:00
2026-08-03 09:12:35 +00:00
2026-08-03 09:12:35 +00:00
2026-08-17 09:57:54 +00:00
2026-06-11 01:06:25 +03:00
2026-06-11 01:06:25 +03:00
2026-08-07 10:08:50 +03:00
2026-08-07 10:08:50 +03:00
2026-06-24 16:51:17 +03:00
2026-08-10 20:23:45 +03:00
2026-04-21 20:46:51 +03:00
2026-07-05 23:19:10 +03:00
2026-07-07 19:49:11 +03:00
2026-07-07 19:49:11 +03:00
2026-06-26 19:27:53 +03:00
2026-05-25 19:20:04 +03:00
2026-08-07 00:10:29 +03:00
2026-08-07 00:10:29 +03:00
2026-04-11 22:29:09 +03:00
2026-04-26 16:24:07 +03:00
2026-04-26 16:24:07 +03:00
2026-08-03 06:40:01 +00:00
2026-08-03 06:40:01 +00:00
2026-05-25 19:20:04 +03:00
2026-05-25 19:20:04 +03:00
2026-05-25 19:20:04 +03:00
2026-05-25 19:20:04 +03:00
2026-06-24 00:43:11 +03:00
2026-06-24 00:43:11 +03:00
2026-05-12 11:10:39 +03:00
2026-05-12 11:10:39 +03:00
2026-08-03 13:57:05 +00:00
2026-08-03 13:18:27 +00:00
2026-08-03 13:18:27 +00:00
2026-08-02 11:40:02 +00:00
2026-08-03 08:22:30 +00:00
2026-08-10 20:23:45 +03:00
2026-06-24 00:43:11 +03:00
2026-05-13 10:35:12 +03:00
2026-05-13 10:35:12 +03:00
2026-08-10 16:10:03 +03:00
2026-07-29 19:59:41 +03:00
2026-08-15 01:59:26 +03:00
2026-08-14 12:45:35 +03:00
2026-08-14 12:45:35 +03:00
2026-07-29 17:26:11 +03:00
2026-06-05 13:36:39 +03:00
2026-07-21 20:52:20 +03:00
2026-07-21 20:52:20 +03:00
2026-08-17 09:55:11 +00:00
2026-08-17 09:55:11 +00:00
2026-07-13 01:43:35 +03:00
2026-07-13 01:43:35 +03:00
2026-07-21 20:52:20 +03:00
2026-07-21 20:52:20 +03:00
2026-08-05 11:48:31 +03:00
2026-08-05 11:48:31 +03:00
2026-07-17 10:30:45 +03:00
2026-05-12 11:00:45 +03:00
2026-08-09 19:30:25 +03:00
2026-08-03 11:05:27 +00:00
2026-08-03 09:25:25 +00:00
2026-08-03 09:55:56 +00:00
2026-06-26 19:27:53 +03:00
2026-05-23 20:51:45 +03:00
2026-07-31 12:51:15 +03:00
2026-07-31 12:51:15 +03:00
2026-07-31 12:51:15 +03:00
2026-07-24 21:54:28 +03:00
2026-06-02 00:43:05 +03:00
2026-06-02 00:43:05 +03:00
2026-03-31 18:47:00 +03:00
2026-07-12 00:46:41 +03:00
2026-03-31 18:47:00 +03:00
2026-07-30 20:07:08 +03:00
2026-07-29 19:59:41 +03:00
2026-04-24 12:30:11 +03:00
2026-04-24 12:30:11 +03:00