VoiceFlow 0.3.1: reliable delivery and quiet product finish - #18
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 733a79523a
ℹ️ 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".
| self.sidebar = QListWidget() | ||
| self.sidebar.setObjectName("sidebar") | ||
| for label in ("状态", "听写", "词典", "历史"): | ||
| for label in ("状态", "词典", "历史", "设置"): |
There was a problem hiding this comment.
Route View all to the History row
The reordered sidebar puts History at row 2 and Settings at row 3, but the home page's 查看全部 handler still calls self.sidebar.setCurrentRow(3). Clicking it now opens Settings instead of the full dictation history; update that handler alongside the new row mapping.
Useful? React with 👍 / 👎.
| re.IGNORECASE, | ||
| ) | ||
| terms.append((term, pattern)) | ||
| return sorted(terms, key=lambda item: len(item[0]), reverse=True) |
There was a problem hiding this comment.
Deduplicate case-insensitive normalization terms
When a user adds an ASCII term that differs only by case from a bundled or existing term—for example OPENAI alongside OpenAI—both entries produce the same re.IGNORECASE pattern. Because Vocabulary.terms is a set and this sort breaks ties only by length, whichever spelling runs first varies with Python's hash seed, so identical dictation can normalize differently across launches. Deduplicate by a case-insensitive key with an explicit precedence before compiling these patterns.
AGENTS.md reference: AGENTS.md:L44-L44
Useful? React with 👍 / 👎.
What changed
Why
This release closes the chat-editor delivery regression, removes redundant success UI, and keeps every public surface aligned with the behavior in the installer.
Verification
scripts\\verify.py --release: 360 tests plus UI, motion, one-hour recovery, 10,000 state-machine, 5,000 delivery-fault, 50,000 safe-text, and performance gatesD:\\Apps\\VoiceFlow: version0.3.1+260812.1, user-data hash differences05c0a79010ba68a99fa497413c59d21b83012a201ab72a8db30b0954af7d70ce0Known limitation
The Windows installer is not Authenticode signed; README, website, and Release notes disclose this and publish the exact SHA-256.