Skip to content

fix: Full repo review, bugs, dead code, docs, hardening#3

Merged
TsekNet merged 1 commit intomainfrom
repo-review
Mar 14, 2026
Merged

fix: Full repo review, bugs, dead code, docs, hardening#3
TsekNet merged 1 commit intomainfrom
repo-review

Conversation

@TsekNet
Copy link
Copy Markdown
Owner

@TsekNet TsekNet commented Mar 14, 2026

Summary

  • Fix Validate() double-escaping HTML on repeated calls (queue drain path)
  • Fix quoteArg dropping backslashes on Windows broadcast
  • Fix broadcast temp file unreadable by target user sessions
  • Fix loadFromArg rejecting inline YAML args
  • Fix deferred timer TOCTOU race launching UI for completed notifications
  • Fix ApplyEscalation assuming sorted steps
  • Cap waitForDND at 24h in local mode
  • Isolate launchSubprocess child process group from daemon signals
  • Replace deprecated LoadJSON with Load (5 call sites)
  • Extract DefaultPriority const, move Platform default to ApplyDefaults
  • Compile dayRe once at package level
  • Remove dead code: Ping(), Classify(), init() in motd.go
  • Fix Enter key targeting dropdown triggers without data-value
  • Fix docs: add motd subcommand, fix flag scopes, fix positioning algorithm, fix deck description

Test plan

  • go test -race ./internal/... ./cmd/... passes (14 packages)
  • Verify Windows broadcast with backslash paths
  • Verify inline YAML: hermes --local 'heading: Test\nmessage: Body'

Ref #2

🤖 Generated with Claude Code

Ref #2

- Separate SanitizeText from Validate to prevent double-escaping
- Fix quoteArg backslash drop on Windows broadcast
- Fix broadcast temp file permissions (0644 for cross-session reads)
- Fix loadFromArg to accept inline YAML args
- Fix ApplyEscalation to pick highest threshold regardless of order
- Cap waitForDND at 24h in local mode
- Isolate launchSubprocess child with Setsid
- Fix deferred timer TOCTOU race in manager
- Add DefaultPriority const, move Platform default to ApplyDefaults
- Replace deprecated LoadJSON with Load
- Compile dayRe once at package level
- Remove dead Ping, Classify, init in motd
- Fix Enter key targeting dropdown triggers without data-value
- Fix docs: motd subcommand, flag scopes, positioning algorithm, deck
@TsekNet TsekNet merged commit f488953 into main Mar 14, 2026
2 checks passed
@TsekNet TsekNet deleted the repo-review branch March 14, 2026 23:21
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