Versions
Where to find what changed, how the numbering works, and why the changelog reads like reasoning rather than a list of fixes.
Every release carries its packages, its source archive and its documentation.
How to read a version number
1.23.0 — the middle number moves when something is added, the last one when
something is fixed without adding. A breaking change is announced in the
release notes rather than encoded in the number, because a number cannot say
what breaks.
The Debian package appends its own revision: diwall_1.23.0-1_all.deb. The
-1 is the packaging iteration, not a Diwall version.
Two changelogs, two purposes
The Debian changelog ships inside the package. It is the one an administrator reads to decide whether to upgrade, and it says what changed and why in plain terms.
The development journal is longer and reads differently: it records the reasoning, including decisions that were reversed and mechanisms that were kept only because a measured failure justified them. Where the changelog says what the version does, the journal says why it does it that way.
Both are in the repository. Neither is written after the fact from memory — they are written as the work happens, which is why they contain things a retrospective account would have tidied away.
Upgrading
sudo apt install ./diwall_1.24.4-1_all.deb # Debian 13, Ubuntu 24.04, Ubuntu 26.04
sudo dnf install ./diwall-1.24.4-1.fc44.noarch.rpm # Fedora 44
sudo zypper install --allow-unsigned-rpm ./diwall-1.24.4-1.leap160.noarch.rpm # openSUSE Leap 16.0
sudo pacman -U ./diwall-1.24.4-1-any.pkg.tar.zst # Arch LinuxThe same command with the newer file upgrades in place, and your configuration is preserved. Removal depends on the family of your system: Install →.
One thing to check after any upgrade: the guide’s version token. If it moved,
your agent’s stored marker is stale and the next call will fail with
guide_non_lu — deliberately, so that nobody runs a new version against
instructions from the previous one.
grep notice-version /opt/diwall/docs/GUIDE_LLM.md
What changes when you upgrade
One line per version that changes something a scenario or an agent can observe. The reasons behind each change are in the Debian changelog.
| Version | What a scenario or an agent notices |
|---|---|
| 1.24.4 — 26 September 2026 | Packages for Fedora 44, openSUSE Leap 16.0 and Arch Linux beside the .deb. On those three, removal keeps the configuration, the journal and the reference captures with the diwall account, and prints the command that erases them. apt remove now keeps the diwall account with the files it protects; apt purge leaves nothing under /opt/diwall. install.sh, deploy.sh and uninstall.sh refuse to run on a machine where any of these packages is installed. |
| 1.24.3 — 25 September 2026 | A number or a boolean returned by evaluer keeps its type (false, 2) in the output and the journal; shot.py returned it as text ("False", "2") until 1.24.2. A reference recorded with --sauver-verifier-reference before this version holds such a value as text and is reported as a regression on replay: record it again. --stealth was never affected. uninstall.sh refuses to run on a machine with the package installed; use sudo apt purge diwall. |
| 1.24.2 — 25 September 2026 | Paths, anchors, file names and other strings made of words are no longer masked as secrets in evaluer output or refused in a script; hexadecimal digests and UUIDs still are. diwall-watch --llm claude works, and --llm-en-complement follows --llm. On a machine with the package installed, install.sh and deploy.sh refuse to run. apt purge diwall also deletes /opt/diwall/references/: save your watch.py baselines first. |
| 1.24.1 — 25 September 2026 | The browser declares the operator’s language: Accept-Language and navigator.language carry the same tag, taken from LANGUAGE, LC_ALL, LC_MESSAGES or LANG (en-US when none is usable). A site that negotiates its language now serves the operator’s, so a scenario that checks a text on such a site can give a different result. An evaluer script chaining properties such as navigator.languages.join is no longer refused as a secret. |
| 1.24.0 — 8 September 2026 | Guide token 1.2 → 1.3: the next call fails with guide_non_lu until the new token is passed. cliquer_som and remplir_som resolve a number by the marker an earlier Set-of-Mark capture in the same scenario left, and fall back to re-indexing without one; the output reports which path ran (boussole.respect.som_resolution) and any disagreement between the two (som_derive_detectee). --som-brut restores pure re-indexing; --som-rafraichir is still accepted and does nothing. |
| 1.23.1 — 21 August 2026 | The boussole reports which encrypted credential directory was resolved, and where that choice came from (secrets_dir_effectif, secrets_dir_source). |
| 1.23.0 — 8 August 2026 | Guide token 1.1 → 1.2. A scenario action carrying a plaintext value on a password-like field is rejected before the browser starts (action_secret_en_clair); --secrets and --http-credentials apply only to the page origin they were declared for; values that look like secrets are neutralised in stdout and in the operations log. |
What a release contains
Since the multilingual documentation landed, a release is not only a package: it carries the four reference PDFs, the manual pages in four languages, and the source archive of that exact version.
The site is updated in the same movement. A release whose site has not followed would leave the previous version documented online — which is precisely the kind of quiet drift the rest of this project is built to avoid.