Repository navigation
fix: follow-ups from the review of the R9lab rename changes - #453
Merged
Merged
Conversation
- TODO(drop-by 2027-01-31) on every infra TODO and the smoke-redirects default - README says when to flip and then delete legacy_zone_name - zone allowlist is the set of infra/cloudflare-zone/<zone>.tfvars files - camera skip test reads local.camera_plugin_paths instead of a second list
- add paths: usr/bin/caddy to every waiver so backup and postgres image scans still report them - state why the net/http Range DoS is accepted: file_server answers Range requests over HTTP/1.1 - add a drop-by TODO ahead of the 2026-11-01 expiry, which would block image publishing
- fail on TODO(drop-by YYYY-MM-DD) dates in the past, and on compat TODOs without a date - fail on trivyignore entries with neither paths nor purls - run it from check-root, which CI already calls
…ed changes - breaking upgrade steps for self-hosters, ssh aliases and developers - images-verify wording, removed duplicate env var and salt fallback, restore behaviour - removed legacy admin path and the role-less restore fix
…he host move - volume copy fails fast, refuses while relab containers run and fails on a size mismatch - database and role renames run only if the old name exists - the prod host move guards each step - prod and staging link to the install guide instead of repeating the window - fix the timers step number, a stale checkout path and the telemetry host note
- retitle the user guide and sidebar labels - date the rpi-cam redirects and the schema pin TODO to 2027-01-31
- Mount the pre-rename /plugins/rpi-cam prefix only for the camera and user routes; no client calls the admin routes there - Test that /v1/admin/plugins/rpi-cam/... is a 404 while the current admin path answers - Pin the device assertion audience strings paired cameras sign with - Date the rename compatibility TODOs as TODO(drop-by 2027-01-31)
- Reject salts shorter than 32 characters: the salt fingerprint is public, so a short salt could be guessed offline from it - Read the salt only from R9LAB_PSEUDONYM_SALT; drop the RELAB_PSEUDONYM_SALT fallback - Pin the fingerprint of a known salt and the encrypted-value prefix, so changing either fails a test instead of a release or every stored secret
* fix/review-ci: ci: add a lint for expired and undated compat TODOs ci(trivy): scope caddy waivers to the caddy binary
* fix/review-infra: chore(infra): date the shim TODOs and derive allowed zones from tfvars
* fix/review-docs: docs: name the camera pages r9cam and date the compatibility notes docs(deploy): make the rename window resumable and keep one copy of the host move docs(changelog): add the deployment rename upgrade steps and unreleased changes
* fix/review-backend: refactor(scripts): reuse the parsed CITATION.cff for codemeta and zenodo output fix(backend): require a 32-character dataset pseudonym salt fix(backend): stop serving r9cam admin routes on the legacy path
- refuse up, migrate, rollback and backups while a relab_<env> container runs or while either data volume (database_data, user_uploads) exists only under the old project name - leave the API stopped when a restore fails, and print the command that starts it; the database is only partly restored then - pass `just stack` arguments through "$@" so a quoted argument with spaces stays one argument - trust the CMLPlatform/relab signer in images-verify only for sha-8697ebf, the one published tag built before the repository rename, and verify every other tag against a single repository - build every Compose project name through compose_project() in the scripts and project_prefix in the justfile, with a test that no script spells out -p r9lab_ - drop RELAB_ENVIRONMENT: every r9lab-backup image reads R9LAB_ENVIRONMENT - rename the env policy check's throwaway project to r9lab_env_policy, and note why the relab-backup hostname, .relab-volume marker, relab_unaccent, otel.cml-relab.org and the old role prefix in the roles smoke stay
- placeholder:text-input painted the stroke grey (4.03:1 on the card); pass tokens.text.placeholder like TextInput - date the r9cam service-name compat TODO
- raise the secondary text mix to 72% and darken light-mode orange, yellow and red - assert the 24px target-size fixes in the API reference e2e
- read relab-theme when r9lab-theme is unset - format the hero date in UTC so it does not depend on the build host zone - remove the font-size that duplicated .section h3
* fix/review-frontend: fix(www): keep saved theme, build date in UTC, drop duplicate h3 size fix(docs): clear 4.5:1 on Scalar background-3 fix(app): use the AA placeholder token in ui Input
* fix/review-deploy: fix(deploy): tighten the rename guard, restore and stack passthrough
- Changelog: name the one tag that still verifies against the old repository, and add the stack quoting and rename guard fixes - A failed restore leaves the API stopped - The rename guard waits for both volumes and the old stack to be down
- Restore restarts the API when it fails before the replay touches the database - The TODO lint matches only upper-case TODO, drops "delete" as a keyword and reports invalid dates - The caddy re-check TODO falls due with the waivers' own expiry, so it cannot block PRs earlier - The zone test pins the r9cam and legacy camera paths literally - The staging host move keeps the uv sync steps - The stack recipe docs list the compose action
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Follow-ups from a review of the 13 October changes (#420 to #452): rename leftovers, deploy safety and a few UI fixes.
compose_projecthelper replaces about 20 hard-codedr9lab_<env>names.just stackkeeps quoted arguments whole.images-verifytrusts the old repository name only forsha-8697ebf, the image prod runs now.rpi-camadmin path is gone. The device and user paths stay until 2027-01-31.check_todo_dates.pyincheck-rootfails on expired or undated compatibility TODOs. Every compatibility TODO is nowTODO(drop-by YYYY-MM-DD).Inputplaceholder meets 4.5:1.Tests:
just check,check-root,policy-check,cloudflare-checkandtest-scriptspass locally, andtest_ops.shpasses 239/239. I ran the rename window's steps 4 and 5 against throwaway volumes and Postgres 18. Backend integration and the full app and docs suites run here in CI.