CycladesGo
Diese Seite ist noch nicht übersetzt. Die geprüfte englische Fassung ist die maßgebliche.

Woher unsere Daten kommen

Änderungsprotokoll

Zuletzt aktualisiert:

Everything that changes the published timetables gets an entry here, including the times we got something wrong and took an island offline because of it. Newest first.

What this page is in its current state

This is a design prototype. Two entries — the Naxos unmapped-destination outage of 26 September and the Paros coordinate collision of 19 September — are the real incidents the project had, written up as they happened. The surrounding entries are illustrative: they are plausible reconstructions of the release and fix history, not a verified record of it.

We have left them in rather than deleting them, because a changelog that only contains wins is a marketing page, and because it is better for a reader to know which parts of a document are reconstructed. Before launch, each entry is either confirmed against the commit history or removed.

  1. Incident Naxos

    A new destination label took Naxos offline for two days

    KTEL Naxos added a destination label reading "AIRPORT (300meters)" to a published service. It is a perfectly good destination. It is not, however, the name of a place, and our stop matcher looks for places.

    The matcher found nothing, and the build treated an unresolved destination as a fatal error. Naxos therefore stopped publishing, its dataset passed its validity date, and the island went offline on the evening of 26 September. It was back on 28 September, and the two days in between are the reason this entry exists.

    Two things were wrong. The immediate fault was that an unknown string was allowed to stop a build. A destination we cannot place is a question to answer later, not a reason to withdraw the whole network from a traveller who needs the other four lines.

    The fix records unmapped destinations as data gaps: they are counted, logged and listed, and the rest of the dataset publishes. A stop name that cannot be placed is now a warning rather than a failure. The airport label is still not mapped, and it is visible as a gap rather than silently present or silently absent.

  2. Incident Paros

    Two Paros stops were placed at the wrong coordinates

    Two stops on Paros were given the coordinates of the wrong place. Pounta and Punda collide on a name match: both names appear more than once in the OpenStreetMap extract for the island, and the matcher took the first acceptable candidate without asking how far away it was.

    The visible effect was that a traveller following the app would have walked to the wrong end of the island, which on Paros is the difference between a bus stop and a boat. The times were right; the positions were wrong, which is worse, because a wrong position looks authoritative.

    The fix is distance-bounded alias matching. A name match must also be within a bound of the corridor the line runs along, and where a name has several candidates the ambiguity is recorded rather than resolved by guessing. An ambiguous stop is now visible as a gap in the build log.

  3. Fare report Milos

    Fare drift found on two Milos lines and corrected by hand

    The monthly fare reconciliation found that two Milos fares no longer matched the operator's published table. Both were corrected by hand, after checking, on the day the drift was found.

    Nothing was auto-updated. Fares are curated deliberately rather than scraped, because a fare is a claim about money and an automatic edit that mis-parses a table makes us wrong in a way somebody acts on with real cash.

  4. Release Santorini, Milos, Ios

    golf-1: three more islands go live

    SantoriniGo, MilosGo and IosGo went live, taking the family to five islands. Each shipped with its own operator adapter, a validity window, and a known-limits list written before the publish rather than after it.

    Ios shipped with three stops and one line, which is the whole of the local service. We published it anyway, with the line and journey detail pages suppressed, because a small honest network is more use to somebody on the island than an absent one.

  5. Fix Portal

    New islands stopped disappearing from the registry

    The island registry is generated from the engine repository. A path change in the sync script meant a newly added island was read but not written, so a new planner could be live and absent from this site. Fixed, and the generated file is now verified against the engine in CI.

    The rule behind the fix is the one that has held throughout: if a fact about an island can be read from the engine's dataset, it is read from there and never restated as a hand-kept number on the portal.

  6. Fix Milos

    Curated-mode adapter for operators that publish a printable timetable

    Milos Buses publishes a printable timetable rather than a machine-readable one, so the times are transcribed and verified by hand through a curated-mode adapter instead of being extracted. The adapter records who verified what and when, so a transcription is never anonymous.

    This is slower than extraction and we would rather it was. A hand-checked table with a name attached is defensible in a way an automatic parse of a PDF is not.

  7. Fix All islands

    Validity windows cut from 90 days to 7 days

    A dataset used to be publishable for three months after it was built, which is long enough to outlive a whole season. The window is now seven days, and the build fails when it closes.

    This makes the site fail more often. That is the intended trade: a departure time that is a week stale is not a departure time, and a visible failure is more useful than a confident wrong answer.

  8. Release Naxos, Paros

    This changelog was published

    The first version of this page, written because the Naxos and Paros incidents above had happened and nobody outside the project could see them. The point of a changelog here is not to look careful. It is that a site asking to be believed has to be checkable.

Found something wrong? The corrections this changelog is built from start as reports. Report a problem or a timetable source, and read what our data cannot tell you before you rely on a time.