Hand this page to your AI agent
Give your agent (Claude, ChatGPT or any assistant that can open web pages) this address and ask it to do the task on the page:
https://dbourdeau.github.io/cyphersolver/further/ottobon.html
Or copy the block below into the chat. It is the whole task: the reading, every open gap, what has been tried, the steps, and how to report back.
TASK: take a partial decipherment further: The Doge and Senate of Venice to Giovanni Mocenigo, 27 April 1589
This page: https://dbourdeau.github.io/cyphersolver/further/ottobon.html
You are helping a public research project finish reading historical cipher letters. This one is read in part:
the key works, but some pieces are still open. Your job is to close one or more of the open gaps below.
THE READING
Write-up: https://dbourdeau.github.io/cyphersolver/ottobon.html (read it first: how the text was read, the key, the reading)
Date: 1589
Outcome: external key matched · partial
Read now: 92.6% of the deciphered cipher tokens give sense (pieces below may be untouched)
Files: https://github.com/dbourdeau/cyphersolver/tree/main/targets/ottobon (NOTES.md, key, transcription, reading, scripts)
OPEN GAPS (from NOTES.md, "## Remaining gaps")
1. [needs-physical-access: needs a new source] f. 35v, short connections and line endings hidden in the gutter (e.g. del[la cor]ona l. 1, [tol]togli, col[...] l. 19) - blocker: needs-physical-access; one to three groups at each right edge are under the binding on every available image; needs the volume or a photograph of the opened leaf.
2. [illegible: needs a new source] f. 36r l. 8, two blotted groups before *benissimo*, and the ending after *di nostra* on f. 36v l. 6 - blocker: illegible; blots, no second copy.
3. [illegible: needs a new source] Label disputes f. 35r l. 3 (a84/a94), f. 35v l. 20 (a92/a94), f. 38r l. 9 (f63/f67), and the other 45 alternative or unread signs - blocker: illegible; not separable on the BNE scans (1100 px per page).
4. [needs-physical-access: needs a new source] Literal copyist forms *recessimo*, *[po]tergo*, *soletione*, *giussima*, *crirtissimo*, *tempo* for *tempi* - blocker: needs-physical-access; errors of the cipher clerk, readable in sense but not as written; only the Senate's register copy (ASVe Senato Secreta reg. 87, 27 Apr 1589) would give the intended words.
5. [illegible: needs a new source] f. 37r top-right header (four small groups) - blocker: illegible; too small to transcribe at this resolution.
ALREADY TRIED (from NOTES.md, "## Escalation")
[x] siblings: DECODE R2248-R2262 (Mss/994 items 1-15) opened 9 Oct 2026: the other items are Spanish, French and graphic-sign ciphers (Alençon, Rogers, Longlée, Sertori, Philip III ...), none Venetian, no decipherment of this letter; ff.38v-63v inside R2252 are the address leaf and blanks. Venetian siblings R1790 (Gulf/Zara cipher), R1788 (grille), R1870 (Duodo 1595), R1843 (Lippomano 1590): different systems.
[x] clear-pages: Valle's clear heading on f.34r, the clear passage of ff.36r-36v (postmaster of Lyon, intercepted letters of 28 March), the protocol and the address on f.38v read; none is a decipherment. No clear copy of the letter in the volume or on DECODE.
[x] known-keys: R1789 (Zifra Prima, CX b.4 reg.16) is the key, as it stands (14 Nov 2026: d83 and c86 were misreadings of d53 and h86; first adopted with d83 = a and c86 = o, fourth session; 89 % decoder agreement shows no second key is mixed in); R1790 (same register) and R1788 checked and not this system; the 1590/1595 Venetian ciphers R1843/R1870 are of the zifra-granda family.
[x] print: CSP Venice viii (Mar-June 1589), Hübner *Sixte-Quint* ii-iii (Doge to Badoer 29 April and 13 May 1589: parallel wording only), Desjardins *Négociations* v, A. Morosini *Historia Veneta* XIII, De Thou XCV: no text of the letter or of the answer to the French envoy (Gondi; de Maisse in the text before 14 Nov 2026). Manuscript copies: ASVe Senato Secreta register; BL Add MS 30635-30637.
[x] retry: (14 Nov 2026): issue #552 (aaymeloglu) re-transcribed all seven pages from the public BNE scans (1100 px per page, CC BY 4.0) and read both pieces with R1789 as it stands; 1,537 of 1,585 group slots are plain lookups.
[x] retry: (23 Oct 2026): DECODE images re-fetched, no new material; first piece kept decoded, not read
[x] retry: 9 Oct 2026, every unread line retried computationally: calibrated noisy-channel decoder (dec.py, 89 % agreement with the hand reading on held-out pages) and crib fits of proposed texts (fit.py, chance level 10 % per token vs 80 % on the true lines, fitcontrol.py); 260 tokens gained (46.0 -> 62.7 %). The rest needs a better image or a register copy (above).
STEPS
0. Set up. If you can run a shell, fork and clone the repository and work inside it:
git clone https://github.com/dbourdeau/cyphersolver.git
Then read, in this order: CONTRIBUTING.md (how a contribution is sent and credited); README.md, sections
"Repository layout" and "Conventions" (how readings are measured and named); targets/ottobon/NOTES.md in full, and the
key, transcription and reading files it names; lang/README.md (shared language models).
Work in targets/ottobon/. Add your findings to NOTES.md under a dated heading without rewriting what is there, and
update the "## Remaining gaps" line of every gap you close. Keep WORKLOG.md there: one dated line per step
(hypothesis, value tried, solver run, crib, control), failures included. Do not edit docs/ (the site is generated).
If you cannot run a shell, fetch the files from the links above and keep your work in files you send with the issue.
1. Pick a gap. Start with the ones marked "doable now" (open-codes, not-attempted, left-open): the images and the key
are online, so they need only work. A gap marked "needs a new source" (no-key-material, too-short, illegible,
needs-physical-access) can be closed only by something new: a key
or a deciphered sibling found elsewhere, a better image, a printed edition or calendar, a photograph from the archive.
For those, search for that material first, and say where you looked even when you find nothing.
2. Start from the existing key and transcription in the folder. Do not rebuild the key from scratch, and do not
re-read parts that are already read unless you find an error in them.
3. For a code group or sign value: list every place the group occurs, show how each reads with the value you propose,
and say what still does not fit. For a passage: re-read it at the image and give the folio and line. For a missing
letter or leaf: say where it is held and how it can be reached.
4. Measure again. Apply the key to the whole text, write the reading file, and count the share of cipher tokens that
give sense (not an estimate). The reading is "complete" only when (1) at least 95% of its cipher tokens give sense;
(2) no gap is left untried; (3) every letter in it is covered; (4) what stays open is scattered code groups or names,
or pieces blocked from outside. Otherwise it stays "partial": say which gaps are still open and why.
5. Be honest. Mark every uncertain word with [?], leave unread groups as their numbers or signs, and never fill a gap
with a plausible guess. A gap retried and still open, with what was ruled out, is worth reporting.
REPORT BACK
With a clone: open a pull request with your changes to targets/ottobon/. Say in the description which gaps you worked on,
the share read before and after, and how you want to be credited (name, initials or handle, and a link).
Without one: open an issue: https://github.com/dbourdeau/cyphersolver/issues/new?template=further-reading.yml&title=Further+reading%3A+ottobon&page=ottobon.html
Give the write-up, the gap you worked on (its line in Remaining gaps, or the code group, folio and line), what you
propose, the evidence (every occurrence, the images or sources), the share read before and after, your step log,
and the tools and AI model you used.
If you cannot open issues or pull requests, write this report for your human to send. Credit goes to the person who sends it.Open gaps
gold can be done now: the images and the key are online, it needs only work. grey needs a new source first: a key, a better scan, an edition or the archive.
- needs the archive f. 35v, short connections and line endings hidden in the gutter (e.g. del[la cor]ona l. 1, [tol]togli, col[...] l. 19) - blocker: needs-physical-access; one to three groups at each right edge are under the binding on every available image; needs the volume or a photograph of the opened leaf.
- hard to read on the scan f. 36r l. 8, two blotted groups before *benissimo*, and the ending after *di nostra* on f. 36v l. 6 - blocker: illegible; blots, no second copy.
- hard to read on the scan Label disputes f. 35r l. 3 (a84/a94), f. 35v l. 20 (a92/a94), f. 38r l. 9 (f63/f67), and the other 45 alternative or unread signs - blocker: illegible; not separable on the BNE scans (1100 px per page).
- needs the archive Literal copyist forms *recessimo*, *[po]tergo*, *soletione*, *giussima*, *crirtissimo*, *tempo* for *tempi* - blocker: needs-physical-access; errors of the cipher clerk, readable in sense but not as written; only the Senate's register copy (ASVe Senato Secreta reg. 87, 27 Apr 1589) would give the intended words.
- hard to read on the scan f. 37r top-right header (four small groups) - blocker: illegible; too small to transcribe at this resolution.
Already tried
- ☑ siblings DECODE R2248-R2262 (Mss/994 items 1-15) opened 9 Oct 2026: the other items are Spanish, French and graphic-sign ciphers (Alençon, Rogers, Longlée, Sertori, Philip III ...), none Venetian, no decipherment of this letter; ff.38v-63v inside R2252 are the address leaf and blanks. Venetian siblings R1790 (Gulf/Zara cipher), R1788 (grille), R1870 (Duodo 1595), R1843 (Lippomano 1590): different systems.
- ☑ clear-pages Valle's clear heading on f.34r, the clear passage of ff.36r-36v (postmaster of Lyon, intercepted letters of 28 March), the protocol and the address on f.38v read; none is a decipherment. No clear copy of the letter in the volume or on DECODE.
- ☑ known-keys R1789 (Zifra Prima, CX b.4 reg.16) is the key, as it stands (14 Nov 2026: d83 and c86 were misreadings of d53 and h86; first adopted with d83 = a and c86 = o, fourth session; 89 % decoder agreement shows no second key is mixed in); R1790 (same register) and R1788 checked and not this system; the 1590/1595 Venetian ciphers R1843/R1870 are of the zifra-granda family.
- ☑ print CSP Venice viii (Mar-June 1589), Hübner *Sixte-Quint* ii-iii (Doge to Badoer 29 April and 13 May 1589: parallel wording only), Desjardins *Négociations* v, A. Morosini *Historia Veneta* XIII, De Thou XCV: no text of the letter or of the answer to the French envoy (Gondi; de Maisse in the text before 14 Nov 2026). Manuscript copies: ASVe Senato Secreta register; BL Add MS 30635-30637.
- ☑ retry (14 Nov 2026): issue #552 (aaymeloglu) re-transcribed all seven pages from the public BNE scans (1100 px per page, CC BY 4.0) and read both pieces with R1789 as it stands; 1,537 of 1,585 group slots are plain lookups.
- ☑ retry (23 Oct 2026): DECODE images re-fetched, no new material; first piece kept decoded, not read
- ☑ retry 9 Oct 2026, every unread line retried computationally: calibrated noisy-channel decoder (dec.py, 89 % agreement with the hand reading on held-out pages) and crib fits of proposed texts (fit.py, chance level 10 % per token vs 80 % on the true lines, fitcontrol.py); 260 tokens gained (46.0 -> 62.7 %). The rest needs a better image or a register copy (above).
Needs the archive
These gaps can only be closed from the original or a book out of reach. If you can visit or order, take one: all archive requests.
- ar-075 Biblioteca Nacional de España, Madrid: ff.35v-36v, 316 tokens (f.35v ll.3-6, 10-11, 15, 20; f.36r ll.4, 6, 8-11, 14-16; f.36v ll.2-3, 5-6, and gaps in the read lines) (open, I can do this)
- ar-076 British Library, London: ff.37r-38r (decoded, not read since 23 Oct 2026), 199 unread tokens (f.37r ll.1-2, 7, 10, 22, 24; f.37v ll.1, 3; gaps in read lines) and 155 tokens valued by the crib fit on sense alone (open, I can do this)
Send a result
One closed gap counts: a code group valued, a passage re-read, a key or clear copy found elsewhere. It is credited to you on the write-up.