Version 6.0.0 is finished and sits on the :latest channel, which makes it the official release for everyone running Chastity Tracker themselves.
The most visible part of v6 is the interface, and that already has a post of its own: why color now reports state explains why green means locked, pink means open, indigo is the keyholder area — and why the light/dark switch is gone. This post is about the rest of the release. There is more to it than color.
Fewer boxes, fewer announcements
Up to version 5, every piece of information sat in its own frame, with a border, a shadow and padding. With two cards that looks tidy. With twelve, everything looks equally important, which is the same as nothing looking important. In v6 the ordering is done by spacing, not by outlines.
The inspection and lock notices show it most clearly. They are no longer colored boxes but sections like the rest of the page: the deadline is shown large, with the exact time and the code to copy below it, and "Record now" is a real button.
The same rule applies to the box block. It speaks up only when something is wrong; normally its state is a single line below the wear time. Serial number, firmware, cleaning windows and battery sit behind an ⓘ. None of that was ever wrong — it was simply always there, and attention spent scrolling past a firmware version every day is attention missing where something actually needs it.
One honest note: the rebuild is not finished. A few corners still look the way they did, the penalty log most obviously. They follow in the next point releases.
One word per thing
Grown over years, the same thing went by different names in different places, depending on when that area was built. To the person who built it, those are synonyms. To someone seeing it for the first time, they are separate things.
v6 settles on one term each. "Locked" now refers to you and not to the hardware — the box has a bolt. A lock period reads "Locked until", because there is a date behind it anyway. A "training requirement" is now a training goal. "EXIF" is simply capture time, because that is what is meant and nobody should need to know a file format to submit a photo. And the app is now named after the product: Chastity Tracker.
It is the kind of change nobody notices when it works. The only person who would notice is someone arriving new — and they no longer have to learn three words for one thing.
Sections you can collapse
Tap a heading to collapse a section. Under "Customise dashboard" you decide which ones start collapsed when you open the app.
The reason is unglamorous and therefore convincing: no single dashboard fits everyone. If you do not use tasks, you do not want to scroll past the task block every day. If you wear several categories in parallel, you want them near the top. Until now the order in the code decided what mattered to you. Now you decide, and you lose nothing doing it — collapsed is not disabled. The block is one tap away; it just no longer claims the first half of your screen every morning.
The goal line: "2h 40min to go" instead of 43 percent
Training goals used to count: so many hours out of so many, plus a percentage. But a percentage only becomes information once you know how much of the day is left. The same 43 percent is good in the morning and not enough in the evening.
So v6 puts a line above it that does the arithmetic for you: "done", "2h 40min to go" or "tight". The goal itself is calculated exactly as before; it is stated differently — stated so that you either act on it or go back to what you were doing. Both are outcomes. A percentage on its own is neither.
Locking can hang on the box's bolt
New, and deliberately optional: your keyholder can enable, per wearer, that a lock hangs on the box's bolt. Your entry is then no longer the statement of fact but the request — you are locked once the box reports the bolt shut.
That shifts something fundamental, at exactly this one point. Otherwise the tracker documents rather than measures: what gets recorded is what applies, and the commitment comes from an agreement between two adults, not from technical impossibility. Turning on the bolt condition trades that principle, for locking only, against a condition there is no arguing with.
Whether that is an improvement depends entirely on what two people have agreed on. Which is why it is a setting rather than something that simply happens: leave it off and you will not notice it exists.
Cleaning and inspections now know the weekday
Two rules that used to apply flatly across the whole week can now be set per weekday. The reason is the same as with the goal line: a week is not the same on every day, and a rule cut to fit the most awkward day is too blunt on the other six.
Cleaning windows now apply per weekday. One rule here is worth reading twice: once any window exists at all, a day without one is a closed day. That is the cautious reading, on purpose. Setting a window on Tuesday and Friday does not quietly open the other five days.
Automatic inspections now know rest days as well as per-weekday sleep and trigger windows. The sleep window no longer has to be aligned to the earliest alarm of the week just because it rings once in seven days. How automatic inspections work in general is covered in their own post. One thing is unaffected: the inspection following a relock still always happens, rest day or not. It hangs on an event, not on the daily schedule.
Release now
The keyholder overview has a new button: "Release now". It ends the lock period, opens the box and records the opening — in one tap, optionally with an orgasm allowed.
That used to be three actions in three places, and the third one, the record, was the one most likely to be forgotten. A spontaneous release then left a gap in the history that nobody could account for weeks later. Whoever makes the decision should not also have to do the bookkeeping — otherwise nobody does the bookkeeping.
When the connection stalls
The least conspicuous part of this release is the one you notice on a train. A tap on "New entry" on poor reception could previously go nowhere: nothing happened, so you tapped again.
Now "New entry", the bottom tabs and the sidebar show that they are loading, and report "connection stalling" when it takes a while. Saving no longer waits forever; it queues the entry and delivers it later — without creating a duplicate, even if you did tap twice in the meantime. The gain is not speed, it is information: you know where you stand instead of guessing whether the entry made it.
Two smaller fixes go with it. "Request lock" now works without a stored e-mail address — the sub sees the request in the inbox and on the dashboard. And the quick actions appear on every sub in the keyholder overview, including the ones with nothing currently pending.
How to get v6
If you run the tracker as a Docker container on your own server, pull the new image from the :latest channel and restart the container. There is no migration and nothing to configure. The two old design switches are gone from the settings; everything else stays where it was. The new rules — bolt-dependent locking, per-weekday windows, collapsed sections — only take effect once somebody sets them.
If your instance runs through the portal, v6 arrives with that instance's next update, and you do not choose when that is. Which comes with the caveat that belongs in every one of these posts and is meant seriously: the portal is a favour, not a service. Your instance is isolated, with its own database and its own subdomain, but it runs on trublue's server, not yours. There is no availability guarantee, no support entitlement and no liability. That is not self-hosting and should not be called that. If you want control over your data and over when you update, run the container on your own server.
Either way it stays free, and it stays non-commercial. Version 6 does not change that. It changes how long you have to look to know where you stand — and, in two places, what counts in the first place.
The full list of all fourteen changes is in the changelog inside the app, under version 6.0.0. An overview of the features lives on the website.