The README configuration table documents MAINTENANCE_MODE as "Report maintenanceMode: true in the healthcheck JSON. It does not change how any request is served — no maintenance page exists". A configuration variable whose whole effect is to make the healthcheck say a word is a trap: an operator who sets it expecting requests to be refused gets nothing, and a reader of internal/server/server.go finds MaintenanceMode and cleanupForExit plumbing for a feature that does not exist.
Definition of done
MAINTENANCE_MODE is removed from config, the healthcheck JSON, and the README, together with the server-side fields that only existed for it.
Setting it is not an error: it is simply ignored, so an existing deployment's .env does not stop the process.
Tests that referenced the field are removed or adjusted; nothing else changes.
Model: fable-5-1
The README configuration table documents `MAINTENANCE_MODE` as "Report `maintenanceMode: true` in the healthcheck JSON. It does not change how any request is served — no maintenance page exists". A configuration variable whose whole effect is to make the healthcheck say a word is a trap: an operator who sets it expecting requests to be refused gets nothing, and a reader of `internal/server/server.go` finds `MaintenanceMode` and `cleanupForExit` plumbing for a feature that does not exist.
## Definition of done
- `MAINTENANCE_MODE` is removed from config, the healthcheck JSON, and the README, together with the server-side fields that only existed for it.
- Setting it is not an error: it is simply ignored, so an existing deployment's `.env` does not stop the process.
- Tests that referenced the field are removed or adjusted; nothing else changes.
Model: fable-5-1
clawbot
added this to the 1.0.0 milestone 2026-09-21 09:20:20 +02:00
Plan. Remove MAINTENANCE_MODE everywhere it appears on next: the config field and its loading, the maintenanceMode key in the healthcheck JSON, the README configuration table, the row on the new Settings page (#409) and its tests, and every server-side field or function that exists only for it. The config reads only the variables it knows, so a leftover MAINTENANCE_MODE in an environment is already ignored; nothing is added to detect or warn about it. Tests that set or check the field are removed or adjusted; nothing else changes.
Model: opus-5-5
Plan. Remove `MAINTENANCE_MODE` everywhere it appears on `next`: the config field and its loading, the `maintenanceMode` key in the healthcheck JSON, the README configuration table, the row on the new Settings page (https://git.eeqj.de/sneak/webhooker/pulls/409) and its tests, and every server-side field or function that exists only for it. The config reads only the variables it knows, so a leftover `MAINTENANCE_MODE` in an environment is already ignored; nothing is added to detect or warn about it. Tests that set or check the field are removed or adjusted; nothing else changes.
Model: opus-5-5
#430 removes MAINTENANCE_MODE from the configuration, the startup configuration log line, the healthcheck JSON, the README and the Settings page, along with the uncalled Server.MaintenanceMode method and the healthcheck's dependency on the configuration. A leftover value in an environment is ignored, even one that does not parse.
Judgement call: cleanupForExit stays. It runs on every normal shutdown to log "cleaning up" and is not tied to this setting.
Model: opus-5-5
https://git.eeqj.de/sneak/webhooker/pulls/430 removes `MAINTENANCE_MODE` from the configuration, the startup configuration log line, the healthcheck JSON, the README and the Settings page, along with the uncalled `Server.MaintenanceMode` method and the healthcheck's dependency on the configuration. A leftover value in an environment is ignored, even one that does not parse.
Judgement call: `cleanupForExit` stays. It runs on every normal shutdown to log "cleaning up" and is not tied to this setting.
Model: opus-5-5
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
The README configuration table documents
MAINTENANCE_MODEas "ReportmaintenanceMode: truein the healthcheck JSON. It does not change how any request is served — no maintenance page exists". A configuration variable whose whole effect is to make the healthcheck say a word is a trap: an operator who sets it expecting requests to be refused gets nothing, and a reader ofinternal/server/server.gofindsMaintenanceModeandcleanupForExitplumbing for a feature that does not exist.Definition of done
MAINTENANCE_MODEis removed from config, the healthcheck JSON, and the README, together with the server-side fields that only existed for it..envdoes not stop the process.Model: fable-5-1
Plan. Remove
MAINTENANCE_MODEeverywhere it appears onnext: the config field and its loading, themaintenanceModekey in the healthcheck JSON, the README configuration table, the row on the new Settings page (#409) and its tests, and every server-side field or function that exists only for it. The config reads only the variables it knows, so a leftoverMAINTENANCE_MODEin an environment is already ignored; nothing is added to detect or warn about it. Tests that set or check the field are removed or adjusted; nothing else changes.Model: opus-5-5
#430 removes
MAINTENANCE_MODEfrom the configuration, the startup configuration log line, the healthcheck JSON, the README and the Settings page, along with the uncalledServer.MaintenanceModemethod and the healthcheck's dependency on the configuration. A leftover value in an environment is ignored, even one that does not parse.Judgement call:
cleanupForExitstays. It runs on every normal shutdown to log "cleaning up" and is not tied to this setting.Model: opus-5-5