Unicode Character Encoding Inconsistency in Test Assertions

Resolved 💬 3 comments Opened Jul 11, 2025 by tadaspetrikas Closed Jan 5, 2026

Bug Description
63 - XCTAssertEqual(ctaButton.label, "Let’s do it!", "CTA button should display 'Let’s do it!'")
63 + XCTAssertEqual(ctaButton.label, "Let's do it!", "CTA button should display 'Let's do it!'")

Cloud intentionally wants to change the encoding of the character.
It leads to failing tests. That happens when I'm writing a new one, and it just tries to change our tests' encoding.

Visually, you probably don't see that change, but it's underway and coding. Unicode is different here. So basically, there is a feeling during that change. I think something on Claude is not taking that into account. You probably should look at this.

Environment Info

  • Platform: darwin
  • Terminal: iTerm.app
  • Version: 1.0.48
  • Feedback ID: 86747172-d6c1-496e-b481-1efe025873cc

Errors

[{"error":"Error: Command failed: security find-generic-password -a $USER -w -s \"Claude Code\"\nsecurity: SecKeychainSearchCopyNext: The specified item could not be found in the keychain.\n\n    at genericNodeError (node:internal/errors:984:15)\n    at wrappedFn (node:internal/errors:538:14)\n    at checkExecSyncError (node:child_process:891:11)\n    at execSync (node:child_process:963:15)\n    at $D (file:///Users/tadaspetrikas/.nvm/versions/node/v20.19.3/lib/node_modules/@anthropic-ai/claude-code/cli.js:704:4293)\n    at file:///Users/tadaspetrikas/.nvm/versions/node/v20.19.3/lib/node_modules/@anthropic-ai/claude-code/cli.js:623:9350\n    at Q (file:///Users/tadaspetrikas/.nvm/versions/node/v20.19.3/lib/node_modules/@anthropic-ai/claude-code/cli.js:526:14406)\n    at dC (file:///Users/tadaspetrikas/.nvm/versions/node/v20.19.3/lib/node_modules/@anthropic-ai/claude-code/cli.js:623:8496)\n    at mC (file:///Users/tadaspetrikas/.nvm/versions/node/v20.19.3/lib/node_modules/@anthropic-ai/claude-code/cli.js:623:7361)\n    at wB (file:///Users/tadaspetrikas/.nvm/versions/node/v20.19.3/lib/node_modules/@anthropic-ai/claude-code/cli.js:623:11970)","timestamp":"2025-07-11T07:48:49.047Z"},{"error":"Error: Request was aborted.\n    at Ge._createMessage (file:///Users/tadaspetrikas/.nvm/versions/node/v20.19.3/lib/node_modules/@anthropic-ai/claude-code/cli.js:1315:7931)\n    at processTicksAndRejections (node:internal/process/task_queues:95:5)\n    at runNextTicks (node:internal/process/task_queues:64:3)\n    at process.processTimers (node:internal/timers:516:9)","timestamp":"2025-07-11T09:35:54.315Z"},{"error":"Error: Request was aborted.\n    at dq.makeRequest (file:///Users/tadaspetrikas/.nvm/versions/node/v20.19.3/lib/node_modules/@anthropic-ai/claude-code/cli.js:1324:3838)\n    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)","timestamp":"2025-07-11T09:36:39.637Z"},{"error":"Error: Error opening file /Users/tadaspetrikas/.claude/projects/-Users-tadaspetrikas-Developer-readmo-project-Readmo/808fcddb-0f7d-4c1f-acff-19aa6ee049c6.jsonl: Error: ENOENT: no such file or directory, open '/Users/tadaspetrikas/.claude/projects/-Users-tadaspetrikas-Developer-readmo-project-Readmo/808fcddb-0f7d-4c1f-acff-19aa6ee049c6.jsonl'\n    at tj1 (file:///Users/tadaspetrikas/.nvm/versions/node/v20.19.3/lib/node_modules/@anthropic-ai/claude-code/cli.js:619:176)\n    at async Nu1 (file:///Users/tadaspetrikas/.nvm/versions/node/v20.19.3/lib/node_modules/@anthropic-ai/claude-code/cli.js:626:3326)\n    at async file:///Users/tadaspetrikas/.nvm/versions/node/v20.19.3/lib/node_modules/@anthropic-ai/claude-code/cli.js:626:3741\n    at async RU0.appendEntry (file:///Users/tadaspetrikas/.nvm/versions/node/v20.19.3/lib/node_modules/@anthropic-ai/claude-code/cli.js:624:43)\n    at async RU0.insertMessageChain (file:///Users/tadaspetrikas/.nvm/versions/node/v20.19.3/lib/node_modules/@anthropic-ai/claude-code/cli.js:623:26123)\n    at async xF1 (file:///Users/tadaspetrikas/.nvm/versions/node/v20.19.3/lib/node_modules/@anthropic-ai/claude-code/cli.js:626:1903)","timestamp":"2025-07-11T09:38:57.002Z"},{"error":"Error: Request was aborted.\n    at dq.makeRequest (file:///Users/tadaspetrikas/.nvm/versions/node/v20.19.3/lib/node_modules/@anthropic-ai/claude-code/cli.js:1324:3838)\n    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)","timestamp":"2025-07-11T09:40:57.943Z"},{"error":"Error: Request was aborted.\n    at Ge._createMessage (file:///Users/tadaspetrikas/.nvm/versions/node/v20.19.3/lib/node_modules/@anthropic-ai/claude-code/cli.js:1315:7931)\n    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)","timestamp":"2025-07-11T09:45:53.959Z"},{"error":"Error: Request was aborted.\n    at Ge._createMessage (file:///Users/tadaspetrikas/.nvm/versions/node/v20.19.3/lib/node_modules/@anthropic-ai/claude-code/cli.js:1315:7931)\n    at processTicksAndRejections (node:internal/process/task_queues:95:5)\n    at runNextTicks (node:internal/process/task_queues:64:3)\n    at process.processTimers (node:internal/timers:516:9)","timestamp":"2025-07-11T10:35:50.097Z"},{"error":"Error: Request was aborted.\n    at Ge._createMessage (file:///Use

Note: Error logs were truncated.

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗