Skip to content

Sanitize pomodoro descriptions and cleanup CI#34

Merged
dirtyhenry merged 6 commits into
mainfrom
sanitize-description
Feb 9, 2026
Merged

Sanitize pomodoro descriptions and cleanup CI#34
dirtyhenry merged 6 commits into
mainfrom
sanitize-description

Conversation

@dirtyhenry
Copy link
Copy Markdown
Owner

@dirtyhenry dirtyhenry commented Jan 23, 2026

Summary

  • Fix single quote escaping in shell hook scripts to prevent SQL injection issues
  • Add AI coding agent instructions (AGENTS.md)
  • Remove super-linter workflow (maintenance overhead outweighs benefits)
  • Fix shell script formatting (tabs, trailing whitespace)

🤖 Generated with Claude Code

@dirtyhenry
Copy link
Copy Markdown
Owner Author

@codex review

Copy link
Copy Markdown

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

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: b89aa7e7c5

ℹ️ 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".


# Insert the 4 arguments into the table
# Escape single quotes for SQL (replace ' with '')
SAFE_MESSAGE="${4//\'/\'\'}"
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 Replace plain single quotes, not backslash-quote

The pattern in SAFE_MESSAGE="${4//\'/\'\'}" only matches the two-character sequence \' (backslash + quote) because the backslash is preserved inside double quotes. Messages like Maxime's contain a bare single quote, so this replacement is a no-op and the SQL literal still breaks (or can be exploited) when the message includes ' without a preceding backslash. Consider matching the literal ' (e.g., ${4//"'"/"''"}) or using sqlite parameters to avoid relying on manual escaping.

Useful? React with 👍 / 👎.

dirtyhenry and others added 2 commits January 23, 2026 22:53
Add AGENTS.md with build commands and architecture overview for coding
agents. Add CLAUDE.md that references AGENTS.md. Update .gitignore to
exclude Claude Code local settings.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Prevents SQL syntax errors when pomodoro messages contain apostrophes
(e.g., "Ed's questions") by escaping single quotes before insertion.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@dirtyhenry dirtyhenry force-pushed the sanitize-description branch from 5404c77 to 7cdad0a Compare January 23, 2026 21:54
@dirtyhenry
Copy link
Copy Markdown
Owner Author

@codex review

@chatgpt-codex-connector
Copy link
Copy Markdown

Codex Review: Didn't find any major issues. 🚀

ℹ️ 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".

The previous escaping pattern `${4//\'/\'\'}` doesn't work inside double
quotes because `\'` is not a valid escape sequence - bash preserves the
backslash literally. Using a variable to hold the single quote character
ensures proper matching and replacement.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@dirtyhenry dirtyhenry force-pushed the sanitize-description branch from 7cdad0a to 67de3f5 Compare January 23, 2026 22:04
dirtyhenry and others added 3 commits February 9, 2026 19:03
The maintenance overhead outweighs the benefits for this project.
Existing make lint/format commands provide sufficient linting.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Use tabs for indentation and remove trailing whitespace.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@dirtyhenry dirtyhenry changed the title Escape single quotes in message for SQL insertion Sanitize pomodoro descriptions and cleanup CI Feb 9, 2026
@dirtyhenry
Copy link
Copy Markdown
Owner Author

@codex review

@chatgpt-codex-connector
Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Chef's kiss.

ℹ️ 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".

@dirtyhenry dirtyhenry merged commit c8a2f8d into main Feb 9, 2026
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