odysseus/static/js
Léo 40678bc466 feat(settings): show the running build's version and commit in the admin panel
Nothing in the UI said which build was loaded. /api/version has reported
version, build and source_commit since the harness started versioning itself
apart from the public semver, but the only way to read it was to curl the
endpoint — so "is the preview actually running the commit I just merged?" took
a terminal to answer.

Pins a footer under the settings sidebar nav showing the registered version
(plus the harness build when it differs) and the short source commit, with the
full hash on hover. It sits outside the nav's scroll container so it stays at
the bottom-left, and it is .admin-only, so syncAdminVisibility() hides it from
non-admins the same way it hides the Admin nav group.

The commit resolves at import via `git rev-parse HEAD` and is the string
"unknown" when that fails — a read-only Docker tree with no .git. The footer
treats "unknown" as absent and stays hidden when nothing is left to show,
rather than printing it. The collapsed rail and the two narrow tab-rail
layouts hide it too: neither has a bottom-left to write in.
2026-09-30 22:59:58 +02:00
..
calendar Consolidate Odysseus agent harness and tool contracts 2026-09-17 10:07:40 +00:00
color fix: theme color parsing breaks on #rgb shorthand hex (#1213) 2026-06-03 00:30:03 +09:00
compare Harden maintainer-preview harness and review fixes 2026-09-21 06:54:03 +00:00
editor Consolidate Odysseus agent harness and tool contracts 2026-09-17 10:07:40 +00:00
emailLibrary Squash Odysseus development history 2026-09-11 06:04:19 +00:00
markdown Ignore non-string markdown table rows (#1648) 2026-06-03 14:17:02 +09:00
model fix: model cost/info matches first substring key (gpt-4o-mini billed as gpt-4o) (#1439) 2026-06-04 03:05:37 +01:00
research Consolidate Odysseus agent harness and tool contracts 2026-09-17 10:07:40 +00:00
settings feat(settings): show the running build's version and commit in the admin panel 2026-09-30 22:59:58 +02:00
util fix: monthly schedule label shows 21th/22th/31th (ordinal suffix for days >20) (#1577) 2026-06-03 08:57:47 +09:00
a11y.js Improve accessibility across core flows (#86) 2026-06-01 22:04:00 +02:00
actionMenuOrder.js Squash Odysseus development history 2026-09-11 06:04:19 +00:00
admin.js fix(mcp): reject malformed Args on Add MCP Server instead of defaulting to [] 2026-09-30 12:54:09 +02:00
appConfig.js perf(frontend): share one cached fetch for /api/auth/settings and /api/tools (#5997) 2026-08-16 21:03:05 +01:00
assistant.js Consolidate Odysseus agent harness and tool contracts 2026-09-17 10:07:40 +00:00
backgroundToolJobs.js Consolidate Odysseus agent harness and tool contracts 2026-09-17 10:07:40 +00:00
calendar.js Consolidate Odysseus agent harness and tool contracts 2026-09-17 10:07:40 +00:00
censor.js Ignore censor preference storage errors (#1652) 2026-06-03 14:16:55 +09:00
chat.js feat(ui): refine subscription model and usage controls 2026-09-22 13:12:19 +01:00
chatgptSubscriptionUsage.js feat(ui): refine subscription model and usage controls 2026-09-22 13:12:19 +01:00
chatModelProvenance.js refactor(model-routing): centralize explicit foreground fallback policy (#6020) 2026-08-14 08:10:30 +01:00
chatRenderer.js Harden maintainer-preview harness and review fixes 2026-09-21 06:54:03 +00:00
chatStream.js Harden maintainer-preview harness and review fixes 2026-09-21 06:54:03 +00:00
chatStreamErrors.js refactor(model-routing): centralize explicit foreground fallback policy (#6020) 2026-08-14 08:10:30 +01:00
chipScroll.js Squash Odysseus development history 2026-09-11 06:04:19 +00:00
codeRunner.js Consolidate Odysseus agent harness and tool contracts 2026-09-17 10:07:40 +00:00
colorPicker.js Squash Odysseus development history 2026-09-11 06:04:19 +00:00
composerArrowUpRecall.js fix(chat): stop ArrowUp from eating an unsent multi-line prompt (#5875) 2026-08-07 19:34:50 +02:00
cookbook-deps-recipes.js Merge verified Odysseus fixes 2026-07-23 14:49:02 +00:00
cookbook-diagnosis.js Consolidate Odysseus agent harness and tool contracts 2026-09-17 10:07:40 +00:00
cookbook-hwfit.js Consolidate Odysseus agent harness and tool contracts 2026-09-17 10:07:40 +00:00
cookbook.js Consolidate Odysseus agent harness and tool contracts 2026-09-17 10:07:40 +00:00
cookbookDownload.js Consolidate Odysseus agent harness and tool contracts 2026-09-17 10:07:40 +00:00
cookbookPorts.js fix(cookbook): only block model launch on real port collisions (#4760) 2026-06-24 19:44:09 +02:00
cookbookProgressSignal.js Don't falsely declare a dependency build stale (#1568) (#1768) 2026-06-03 13:23:35 +09:00
cookbookRunning.js Consolidate Odysseus agent harness and tool contracts 2026-09-17 10:07:40 +00:00
cookbookSchedule.js Consolidate Odysseus agent harness and tool contracts 2026-09-17 10:07:40 +00:00
cookbookServe.js Harden maintainer-preview harness and review fixes 2026-09-21 06:54:03 +00:00
document.js fix(ui): restore rich text controls and accessible research map 2026-09-22 23:26:43 +01:00
documentLibrary.js Consolidate Odysseus agent harness and tool contracts 2026-09-17 10:07:40 +00:00
documentOutline.js Squash Odysseus development history 2026-09-11 06:04:19 +00:00
documentStats.js Squash Odysseus development history 2026-09-11 06:04:19 +00:00
dragSort.js Squash Odysseus development history 2026-09-11 06:04:19 +00:00
emailInbox.js Consolidate Odysseus agent harness and tool contracts 2026-09-17 10:07:40 +00:00
emailLibrary.js Harden maintainer-preview harness and review fixes 2026-09-21 06:54:03 +00:00
emailShared.js Polish mobile UI and editor workflows 2026-06-27 13:05:44 +00:00
emojiPicker.js fix(modal): keep body-portaled dropdowns above their tool modal at any stack depth (#4720) (#4724) 2026-06-23 10:24:31 +02:00
emojiShortcodes.js Render emoji shortcodes as icons in chat (#345) (#629) 2026-06-05 02:28:42 +02:00
escMenuStack.js Squash Odysseus development history 2026-09-11 06:04:19 +00:00
fileHandler.js Consolidate Odysseus agent harness and tool contracts 2026-09-17 10:07:40 +00:00
gallery.js Harden maintainer-preview harness and review fixes 2026-09-21 06:54:03 +00:00
galleryEditor.js Consolidate Odysseus agent harness and tool contracts 2026-09-17 10:07:40 +00:00
group.js Harden maintainer-preview harness and review fixes 2026-09-21 06:54:03 +00:00
init.js Consolidate Odysseus agent harness and tool contracts 2026-09-17 10:07:40 +00:00
keyboard-shortcuts.js Squash Odysseus development history 2026-09-11 06:04:19 +00:00
langIcons.js Squash Odysseus development history 2026-09-11 06:04:19 +00:00
liveThinkingThrottle.js perf(chat): batch live thinking rendering and bound timer updates (#5931) 2026-08-10 20:11:48 +01:00
markdown.js Consolidate Odysseus agent harness and tool contracts 2026-09-17 10:07:40 +00:00
memory.js Consolidate Odysseus agent harness and tool contracts 2026-09-17 10:07:40 +00:00
mobileBulkSelect.js Squash Odysseus development history 2026-09-11 06:04:19 +00:00
modalManager.js Squash Odysseus development history 2026-09-11 06:04:19 +00:00
modalSnap.js Merge remote-tracking branch 'origin/dev' into test-main-dev-merge-20260615 2026-06-15 21:20:15 +09:00
modelPicker.js feat(ui): refine subscription model and usage controls 2026-09-22 13:12:19 +01:00
models.js Harden maintainer-preview harness and review fixes 2026-09-21 06:54:03 +00:00
modelSort.js Ignore invalid model sort inputs (#1653) 2026-06-03 14:16:52 +09:00
MODULE_SUMMARY.md perf(chat): batch live thinking rendering and bound timer updates (#5931) 2026-08-10 20:11:48 +01:00
notes.js Consolidate Odysseus agent harness and tool contracts 2026-09-17 10:07:40 +00:00
package.json Fix test suite: ESM module loading and stub isolation (#844) 2026-06-02 11:29:29 +09:00
panels.js Squash Odysseus development history 2026-09-11 06:04:19 +00:00
platform.js Ignore AltGr keystrokes in Ctrl+Alt keyboard shortcuts (#825) 2026-06-02 11:12:54 +09:00
presets.js Squash Odysseus development history 2026-09-11 06:04:19 +00:00
providerDeviceFlow.js feat: add ChatGPT Subscription provider (#2876) 2026-06-08 10:19:18 +02:00
providers.js feat(provider): add lazy Featherless model discovery 2026-09-22 13:12:19 +01:00
rag.js Consolidate Odysseus agent harness and tool contracts 2026-09-17 10:07:40 +00:00
researchSynapse.js fix(ui): restore rich text controls and accessible research map 2026-09-22 23:26:43 +01:00
search-chat.js Consolidate Odysseus agent harness and tool contracts 2026-09-17 10:07:40 +00:00
search.js perf(frontend): share one cached fetch for /api/auth/settings and /api/tools (#5997) 2026-08-16 21:03:05 +01:00
searchProviderIcons.js Squash Odysseus development history 2026-09-11 06:04:19 +00:00
section-management.js Squash Odysseus development history 2026-09-11 06:04:19 +00:00
sessions.js Harden maintainer-preview harness and review fixes 2026-09-21 06:54:03 +00:00
settings.js fix(mcp): show the route's rejection reason on the Integrations form too 2026-09-30 17:15:52 +02:00
sidebar-layout.js Harden maintainer-preview harness and review fixes 2026-09-21 06:54:03 +00:00
signature.js Squash Odysseus development history 2026-09-11 06:04:19 +00:00
skills.js Consolidate Odysseus agent harness and tool contracts 2026-09-17 10:07:40 +00:00
skillsMetrics.js Squash Odysseus development history 2026-09-11 06:04:19 +00:00
slashAutocomplete.js feat(provider): support multiple ChatGPT subscriptions with usage 2026-09-22 13:12:19 +01:00
slashCommands.js feat(provider): support multiple ChatGPT subscriptions with usage 2026-09-22 13:12:19 +01:00
spinner.js fix(ui): stop the whirlpool spinner animating when it is never attached (#5990) 2026-08-12 00:25:03 +01:00
startupShell.js perf(ui): stop session loading from blocking shell (#5927) 2026-08-10 19:37:21 +01:00
storage.js feat(a11y): add a Text size control and an OpenDyslexic font option (#4210) 2026-06-22 13:53:46 +02:00
streamingRenderer.js fix(chat): stop code-block button flicker during streaming (#3023) 2026-06-06 04:08:54 -06:00
streamingSegmenter.js fix(chat): stop code-block button flicker during streaming (#3023) 2026-06-06 04:08:54 -06:00
tasks.js Harden maintainer-preview harness and review fixes 2026-09-21 06:54:03 +00:00
theme.js Harden maintainer-preview harness and review fixes 2026-09-21 06:54:03 +00:00
tileManager.js Squash Odysseus development history 2026-09-11 06:04:19 +00:00
toolWindowZOrder.js fix(modal): keep body-portaled dropdowns above their tool modal at any stack depth (#4720) (#4724) 2026-06-23 10:24:31 +02:00
tourAutoplay.js feat(provider): support multiple ChatGPT subscriptions with usage 2026-09-22 13:12:19 +01:00
tourHints.js Odysseus v1.0 2026-05-31 23:58:26 +09:00
tts-ai.js perf(frontend): share one cached fetch for /api/auth/settings and /api/tools (#5997) 2026-08-16 21:03:05 +01:00
turnRendering.js Squash Odysseus development history 2026-09-11 06:04:19 +00:00
ui.js Consolidate Odysseus agent harness and tool contracts 2026-09-17 10:07:40 +00:00
ui_visibility.js Squash Odysseus development history 2026-09-11 06:04:19 +00:00
voiceRecorder.js Odysseus v1.0 2026-05-31 23:58:26 +09:00
windowDrag.js Squash Odysseus development history 2026-09-11 06:04:19 +00:00
windowResize.js Squash Odysseus development history 2026-09-11 06:04:19 +00:00
workspace.js Consolidate Odysseus agent harness and tool contracts 2026-09-17 10:07:40 +00:00