Skip to content

feat: add customize.enabled option and complete env var docs#207

Merged
fank merged 7 commits intomainfrom
docs/complete-env-vars
Feb 13, 2026
Merged

feat: add customize.enabled option and complete env var docs#207
fank merged 7 commits intomainfrom
docs/complete-env-vars

Conversation

@fank
Copy link
Member

@fank fank commented Feb 13, 2026

Summary

  • List all supported environment variables in README, split into grouped tables (Server & Paths, Customization, Conversion)
  • Add customize.enabled option to gate the /api/v1/customize endpoint — returns 204 No Content when disabled (default)
  • Handle 204 in the UI ApiClient.getCustomize() so it returns an empty config without console errors
  • Move the customize logo from a floating map overlay into the playback TopBar, matching the MissionSelector's integrated approach
  • Show headerTitle and headerSubtitle in the playback TopBar between branding and mission info

Test plan

  • Backend: TestGetCustomize/enabled and TestGetCustomize/disabled pass
  • UI: ApiClient.getCustomize 204 test passes
  • UI: All 671 tests pass
  • Verify env var tables render correctly on GitHub

The environment variables table was missing most options. Added all
variables derived from setting.go: server/path settings, logger,
customize options (disableKillCount, headerTitle, headerSubtitle),
and conversion settings (batchSize, chunkSize, retryFailed).
@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello @fank, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request significantly enhances the project's documentation by providing a comprehensive list of all supported environment variables in the README.md file. This update ensures that users have a complete reference for configuring the application, covering server, path, logging, customization, and conversion settings, with accurate default values.

Highlights

  • Documentation completeness: The environment variables table in the README.md was significantly expanded to include most configurable options previously missing.
  • New variables documented: Variables related to server/path settings (LISTEN, PREFIXURL, DB, DATA, MAPS, MARKERS, AMMO, FONTS), logging (LOGGER), customization options (DISABLEKILLCOUNT, HEADERTITLE, HEADERSUBTITLE), and conversion settings (BATCHSIZE, CHUNKSIZE, RETRYFAILED) have been added to the documentation.
  • Default values: The documented default values for these environment variables now accurately reflect those used in the Docker images, as defined in the Dockerfile.
Changelog
  • README.md
    • Expanded the environment variables table to include previously undocumented options.
    • Added default values for newly listed environment variables.
Activity
  • No specific activity has been recorded for this pull request yet.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request significantly improves the documentation by listing all supported environment variables in the README. The added information is clear, accurate, and will be very helpful for users setting up the application with Docker. I've suggested a minor formatting improvement to enhance readability, but overall this is a solid contribution.

fank added 4 commits February 13, 2026 18:18
When disabled (the default), GET /api/v1/customize returns 204 No Content.
When enabled, it returns the customize settings as before.
When customize is disabled, the backend returns 204. The fetchJson
helper would try to parse the empty body as JSON, causing a console
error. Now getCustomize handles 204 explicitly by returning an empty
config object.
@github-actions
Copy link

github-actions bot commented Feb 13, 2026

Coverage Report for ui

Status Category Percentage Covered / Total
🔵 Lines 74.76%
⬆️ +0.07%
2901 / 3880
🔵 Statements 71.75%
⬇️ -0.07%
3603 / 5021
🔵 Functions 71.83%
⬇️ -0.11%
885 / 1232
🔵 Branches 60.23%
⬆️ +0.11%
1412 / 2344
File Coverage
File Stmts Branches Functions Lines Uncovered Lines
Changed Files
ui/src/data/api-client.ts 71.87%
⬆️ +0.69%
78.26%
⬇️ -0.68%
92.3%
🟰 ±0%
70%
⬆️ +0.91%
120-122, 146-150, 197-233
ui/src/pages/recording-playback/RecordingPlayback.tsx 0%
🟰 ±0%
0%
🟰 ±0%
0%
🟰 ±0%
0%
🟰 ±0%
45-168
ui/src/pages/recording-playback/components/TopBar.tsx 72.81%
⬇️ -11.80%
62.5%
⬇️ -4.16%
65.62%
⬇️ -17.35%
78.12%
⬇️ -6.42%
82-83, 96-99, 113-114, 125-133, 143, 156-166, 172-174, 181-182, 233, 281-282
Generated in workflow #56 for commit f7f7828 by the Vitest Coverage Report Action

fank added 2 commits February 13, 2026 20:01
The standalone CustomizeLogo component floated over the map and looked
out of place. Move the logo into the TopBar left section (between the
back button and mission info), matching the MissionSelector's approach.

Delete the now-unused CustomizeLogo component and its CSS module.
Display the branding between the logo and mission info, separated by
a subtle divider. Only renders when headerTitle is configured.
@github-actions
Copy link

Merging this branch will increase overall coverage

Impacted Packages Coverage Δ 🤖
github.com/OCAP2/web/internal/server 85.32% (+0.09%) 👍

Coverage by file

Changed files (no unit tests)

Changed File Coverage Δ Total Covered Missed 🤖
github.com/OCAP2/web/internal/server/handler.go 83.05% (+0.19%) 177 (+2) 147 (+2) 30 👍
github.com/OCAP2/web/internal/server/setting.go 92.68% (+0.18%) 41 (+1) 38 (+1) 3 👍

Please note that the "Total", "Covered", and "Missed" counts above refer to code statements instead of lines of code. The value in brackets refers to the test coverage of that file in the old version of the code.

Changed unit test files

  • github.com/OCAP2/web/internal/server/handler_test.go

@fank fank changed the title docs: list all supported environment variables feat: add customize.enabled option and complete env var docs Feb 13, 2026
@fank fank merged commit afce101 into main Feb 13, 2026
3 checks passed
@fank fank deleted the docs/complete-env-vars branch February 13, 2026 19:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant