Speak LXX2012+WEB in the Alexa skill instead of the King James Version - #231
Merged
Merged
Conversation
The readings page has defaulted to the modern LXX2012+WEB pairing for a while; the skill was never switched and still spoke KJV. It passed no translation at all, so it fell through to bible.DEFAULT_TRANSLATIONS['en']. That default stays KJV: the API and the RSS feeds resolve through it and are deliberately unchanged, as calendarium/views.py already notes. The choice is made in alexa.speech.TRANSLATION instead, and every call site that reads scripture has to pass it, because Pericope.get_passage takes the translation per call rather than inheriting it from the Day. Six sites: three get_passage calls and the four Day constructors, the latter so that a future fetch_content=True path cannot silently fall back to KJV. Two tests pinned KJV phrasing and now pin the new text -- "deceives his heart" for "deceiveth his own heart", and "The Spirit who lives in us yearns jealously" for "The spirit that dwelleth in us lusteth to envy". Both carry the old wording in a comment so the reason for the change stays legible. help.ssml and the Alexa page both claimed the King James Version. The spoken one avoids the "LXX2012 & WEB" label, which Alexa would mangle, and names the two translations the way a listener would recognise them; the web page links them the same way the about page does. Also changes "follow OCA rubrics" to "follow OCA practices" in those two places and in the API description, matching the about page, which already says "the practice of the Orthodox Church in America". Left alone: the about page's "because the rubrics use Septuagint versification", which is the lectionary's rubrics in the technical sense rather than a claim about whose practice we follow. The API description also gained a space between two implicitly concatenated strings -- it rendered as "for a given day.The API" -- and "The API follow" became "follows". 197 tests pass. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_019nQRjJpPqW89xqzAf1vsEX
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The readings page has defaulted to the modern LXX2012+WEB pairing for a while. The Alexa skill was never switched and still spoke the King James Version — it passed no translation at all, so it fell through to
bible.DEFAULT_TRANSLATIONS['en'].The change
The choice now lives in
alexa.speech.TRANSLATION. It has to be passed at six call sites — threeget_passage()calls and the fourDay()constructors — becausePericope.get_passagetakes the translation per call rather than inheriting it from the Day.The four Day constructors don't strictly matter today, since nothing in the skill uses
fetch_content=True. They're set so that a future change there can't silently fall back to KJV.DEFAULT_TRANSLATIONS['en']stays KJV. The API and the RSS feeds resolve through it and are deliberately unchanged, ascalendarium/views.pyalready notes.Help text
help.ssmland the Alexa page both claimed the King James Version.The spoken one avoids the
LXX2012 & WEBlabel — Alexa would mangle it — and names the translations the way a listener would recognise them: "read from the World English Bible, with an Old Testament translated from the Septuagint." The web page links them the same way the about page does.Rubrics → practices
"Follow OCA rubrics" becomes "follow OCA practices" in both of those places and in the API description, matching the about page, which already says "the practice of the Orthodox Church in America".
Left alone: the about page's "because the rubrics use Septuagint versification" — that's the lectionary's rubrics in the technical sense, not a claim about whose practice we follow.
Two incidental fixes
Both in the API description, which I was editing anyway:
"...for a given day.The API follow..."Tests
Two tests pinned KJV phrasing and now pin the new text —
deceives his heartfordeceiveth his own heart, andThe Spirit who lives in us yearns jealouslyforThe spirit that dwelleth in us lusteth to envy. Both keep the old wording in a comment so the reason for the change stays legible.197 tests pass.
🤖 Generated with Claude Code
https://claude.ai/code/session_019nQRjJpPqW89xqzAf1vsEX