Skip to content

chore: tech-debt tier 1-2 — hygiene, audit refresh, F018/F041 fixes#121

Merged
On1x merged 2 commits into
masterfrom
chore/tech-debt-tier1-2
Jun 19, 2026
Merged

chore: tech-debt tier 1-2 — hygiene, audit refresh, F018/F041 fixes#121
On1x merged 2 commits into
masterfrom
chore/tech-debt-tier1-2

Conversation

@chiliec

@chiliec chiliec commented Jun 17, 2026

Copy link
Copy Markdown
Member

Tier 1 (hygiene/docs) + the two cheapest Tier 2/3 code fixes from the refreshed tech-debt audit.

Changes

  • .gitignore — ignore .DS_Store.
  • docs/TECH_DEBT_AUDIT.md — refresh against the working tree (May audit was 6 weeks stale): dated 2026-06-17 banner, tick completed quick-wins, update god-file LOC, mark F002 as partially split. Flags F012 as obsolete — the remaining database.cpp std::cerr is the deliberate stall-watchdog (must not block on node locks); converting it to fc logging would defeat the watchdog.
  • F041 (plugins/chain/plugin.cpp) — replace std::exit(0) ×2 on the corrupted-db error path with appbase::app().quit(), per the existing TODO, so shutdown goes through the appbase sequence instead of bypassing it. (Fixes the bypassed-shutdown bug; quit() likely still exits 0, so this is not an exit-code change.)
  • F018 (wallet.hpp) — replace using namespace std; with targeted using std::{string,vector,map,pair}; (verified the only bare std names used; optional/flat_set are fc types resolving via existing usings).

Deferred

  • F019 (remote_node_api.hpp plugin-namespace usings) — narrowing needs a local compiler: dozens of bare types (incl. bare set<> with no using std::set) resolve through those usings via transitive leaks, so a blind edit would break the build across consumers.

Verification

Relying on this PR's docker-pr-build for build verification — the two code edits were not compiled locally. Both are high-confidence: F041 reuses an appbase::app().quit() call already present ~10× in the same TU; F018 was validated against a full template-token sweep of the header.

chiliec added 2 commits June 17, 2026 16:54
- Add .DS_Store to .gitignore (macOS Finder metadata).
- Refresh docs/TECH_DEBT_AUDIT.md against the working tree: dated
  2026-06-17 banner, tick completed quick-wins (F008/F009/F017/F029/
  F046-F048/F051), mark F002 as partially split, update god-file LOC.
- Flag F012 as obsolete: the remaining database.cpp std::cerr is the
  deliberate stall-watchdog (must not block on node locks); converting
  it to fc logging would defeat the watchdog.
- F041: replace std::exit(0) on the corrupted-db error path in
  plugins/chain/plugin.cpp (x2) with appbase::app().quit() so shutdown
  goes through the appbase sequence instead of bypassing it.
- F018: replace 'using namespace std;' in wallet.hpp with targeted
  using std::{string,vector,map,pair}; (the only bare std names used).
  optional/flat_set are fc types and resolve via existing usings.

@On1x On1x left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

ok

@On1x On1x merged commit bfd2f43 into master Jun 19, 2026
1 check passed
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.

2 participants