Skip to content

Fix credential exposure, configuration recovery and monitoring bottlenecks - #151

Merged
shedowe19 merged 2 commits into
developfrom
codex/october-optimization-fixes
Oct 13, 2026
Merged

shedowe19 merged 2 commits into
developfrom
codex/october-optimization-fixes

Conversation

@shedowe19

@shedowe19 shedowe19 commented Oct 13, 2026 •

Copy link
Copy Markdown
Owner

Read-only Cloudflare, DDNS and Access List responses exposed service credentials, and configuration failures could leave missing Nginx listeners or permanently unactivated maintenance changes. This change removes those exposures and makes failed activation recoverable while addressing all 13 findings from the October 13 review.

  • Return secret-free service responses and preserve current credentials inside locked writes, including concurrent rotations.
  • Keep Nginx batch backups until every status write settles; persist maintenance retries and serialize activation with startup reloads.
  • Refill five monitor workers within a bounded 100-host scan, refresh Analytics mappings after committed changes, release its timers, and batch GitOps cache refreshes.
  • Revalidate Firewall editing snapshots, bind tunnel results to their dialog generation, debounce server search by 300 ms and propagate cancellation.
  • Serialize native maintenance, replace installation payloads exactly, stage and validate binary downloads before downtime, and promote only smoke-tested image digests to latest.
  • Add focused regressions and update the internal wiki with implementation contracts and recovery limits.

Validation on d1a4598:

  • Quality gates: 2,144 backend tests pass (four skips); 927 frontend tests pass. Backend types, Biome, frontend locales, production build and bundle budget pass (1,118,503 JS gzip bytes / 1,290,000).
  • Real MariaDB migrations and Chromium browser smoke pass. CodeQL, TScanner, Shellcheck, Dockerlint, JSON and spelling checks pass.
  • Native x86_64 and ARM64 Docker builds pass, including GeoIP bootstrap, root/UID1000 startup and Nginx smokes, native installer packages and LXC templates.
  • Backend and frontend audits report zero known vulnerabilities (522 / 632 packages).
  • Local infrastructure: 135 passing cases and 21 environment skips; corresponding native container paths are checked in CI.

The migration adds a private maintenance_pending field. Public service APIs expose configured indicators instead of secret values. Native rollback covers application files before migration startup; system packages, rootfs, binaries and database changes retain their documented recovery limits. The manual latest publishing workflow has not been dispatched.

Redact service credentials, preserve current secrets during concurrent edits,
retain Nginx batch backups, persist maintenance activation retries, refill
monitor workers, refresh Analytics mappings and stabilize editing dialogs.
Harden native maintenance and gate latest image publication on native smokes.
Add regression coverage and update the internal wiki.
Use the repository's pinned Biome formatter, update agent context, and remove
the temporary read-only formatter bootstrap after successful validation.
@shedowe19
shedowe19 marked this pull request as ready for review October 13, 2026 19:17
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 13, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-13T19:27:44.727271Z d1a4598 Draft marked ready
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@shedowe19
shedowe19 merged commit 1fbeb78 into develop Oct 13, 2026
23 checks passed
@shedowe19
shedowe19 deleted the codex/october-optimization-fixes branch October 13, 2026 19:22

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: d1a4598b50

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

)
);
const _saved_row = utils.omitRow(omissions())(new_saved_row);
await notifyProxyHostDomainsChanged();

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Notify analytics after Tor domain writes

Wire the new domain-change notification into the Tor integration as well. syncProxyHost() inserts an onion domain at backend/internal/tor.js:208, and Tor reassignment deletes/inserts domains at lines 314–322, but neither path calls this notifier. After creating or moving an onion service, requests for the affected .onion hostname are therefore attributed to host 0 or the previous host until the ten-minute fallback refresh, producing inaccurate analytics despite the new immediate-refresh mechanism.

Useful? React with 👍 / 👎.

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