From 6587aa002f999c119097fe3ba01f81dd93a82c6a Mon Sep 17 00:00:00 2001 From: Duncan Leo Date: Sat, 31 Oct 2026 22:50:09 +1100 Subject: [PATCH 1/4] docs: review Expo and LRT platform allocations Record dated station signage, exact affected trip populations and remaining allocation questions for Expo, Choa Chu Kang and Sengkang East. Co-Authored-By: Codex --- docs/gtfs-mapping-review-inventory.md | 6 +- ...s-platform-allocation-review-2026-10-31.md | 163 ++++++++++++++++++ 2 files changed, 166 insertions(+), 3 deletions(-) create mode 100644 docs/gtfs-platform-allocation-review-2026-10-31.md diff --git a/docs/gtfs-mapping-review-inventory.md b/docs/gtfs-mapping-review-inventory.md index 91b0e77b..9841731c 100644 --- a/docs/gtfs-mapping-review-inventory.md +++ b/docs/gtfs-mapping-review-inventory.md @@ -95,10 +95,10 @@ dates, trip records and literal platform evidence. | Jurong East EWL `EW24_A` | Source label B / C; both candidates support the direction. | Preserve the alternatives rather than infer an allocation from direction. | | Tanah Merah `CG_A`/`CG_B` and Changi Airport `CG2_A`/`CG2_B` | Literal D / E and A / B groups. | Review complete alternative sets and resulting occurrence semantics. | | Ang Mo Kio `NS16_A`/`NS16_B` | Source groups A / C and B / D. The 29 October correction adds physical C/D with `not_in_service` status following review of their depot role. | Complete physical groups still need every member to pass passenger boarding checks; see the [AMK correction and regenerated diagnostics](gtfs-amk-platform-evidence-2026-10-28.md). Choosing A/B alone would hide the source alternatives. | -| Expo airport services | Six patterns conflict with current literal-label/service scopes, overlapping grouped endpoint blockers. | Resolve dated allocation evidence or a source correction; grouped-platform support alone does not resolve these conflicts. | +| Expo airport services | Six patterns conflict with current literal-label/service scopes. Dated photographs support canonical A/east and B/west. | Follow the [allocation evidence review](gtfs-platform-allocation-review-2026-10-31.md); investigate the source's reverse labels without matching by suffix. | | CCL | Revision/code gaps, multiple candidates and conflicts with undated current platform scopes, including unresolved dates in all 119 patterns. | Review these causes separately; do not choose the latest revision or use current records as historical proof. | -| Sengkang East | Six patterns conflict at the five intermediate stations. West patterns have supported proposals. | Verify intermediate-station labels and service allocations without applying town-centre evidence to other stations. | -| Bukit Panjang LRT | All six patterns conflict at both Choa Chu Kang occurrences; their ordered station geometry is valid. | Verify physical allocations and preserve both endpoint occurrences. Dropping the return occurrence would leave the initial conflict. | +| Sengkang East | Six patterns conflict at five intermediate stations; eight of ten canonical bindings trace to two observation roots. | Recheck Bakau 1 and Rumbia 2, then the inferred members, as described in the [allocation evidence review](gtfs-platform-allocation-review-2026-10-31.md). | +| Bukit Panjang LRT | Six patterns conflict at both Choa Chu Kang occurrences. Historical signage distinguishes boarding platforms 1/2 from platform 4. | Review current per-platform service and boarding allocations using the [station evidence](gtfs-platform-allocation-review-2026-10-31.md); preserve both endpoint occurrences. | | Marina South Pier | Four geometric NSL patterns conflict at their terminal physical platform; two no-geometry skip paths also have that endpoint concern. | Distinguish terminal arrival and source occurrence rules before changing service scope or diagnostics. | | Five source-path disagreements | Three NSL patterns contain skipped/excursion occurrences; two TEL patterns omit Gardens by the Bay. | Obtain service-specific evidence or a provider correction. No interpolation, reversal, deleted occurrence or implicit exclusion is supplied. | | Unused `LTA` agency | The source declares it but no route references it. | Record a reviewed explicit disposition rather than infer an operator alias or automatic ignore. | diff --git a/docs/gtfs-platform-allocation-review-2026-10-31.md b/docs/gtfs-platform-allocation-review-2026-10-31.md new file mode 100644 index 00000000..46af0724 --- /dev/null +++ b/docs/gtfs-platform-allocation-review-2026-10-31.md @@ -0,0 +1,163 @@ +# Expo and LRT platform allocation review — 31 October 2026 + +The next 18 unresolved pattern/date cells cover Expo, both Choa Chu Kang +occurrences and Sengkang East's five intermediate stations. Photographs support +Expo's existing canonical directions. The LRT evidence has narrower limits: +Choa Chu Kang's signs distinguish boarding from alighting, while the inspected +Sengkang East photos do not establish all five stations' directions. + +This packet records evidence and the remaining decisions. It changes no source +rows, canonical platforms, mappings, calendars or eligibility rules. + +## Exact affected population + +Regenerated against merged [PR #444](https://github.com/foldaway/mrtdown-data/pull/444), +commit `1788292457da1f02ddaf29b4209f4ed5c178def7`, using the pinned +[21 October capture](https://sources.mrtdown.org/captures/schedule/9a4271536f4bee1d690b10c887fcd0063875a36f3918543d2e32e21ac4dc7e4a.json) +and [original ZIP](https://sources.mrtdown.org/blobs/schedule/9a4271536f4bee1d690b10c887fcd0063875a36f3918543d2e32e21ac4dc7e4a.zip). +The source SHA-256 is +`9a4271536f4bee1d690b10c887fcd0063875a36f3918543d2e32e21ac4dc7e4a` +(2,981,645 bytes). LTA attribution and licence are in the +[public handoff](gtfs-public-handoff.md). + +| Scope | Pattern/date cells | Recurring trips | Pattern/date pairs | Trip/date pairs | Conflicting occurrence indices | +| --- | ---: | ---: | ---: | ---: | --- | +| Expo | 6 | 675 | 730 | 80,453 | 1, between Tanah Merah and Changi Airport | +| Choa Chu Kang | 6 | 1,248 | 730 | 159,364 | **0 and 18**, preserving both terminal visits | +| Sengkang East | 6 | 1,491 | 730 | 180,151 | 1–5, preserving both Sengkang town-centre visits | + +These disjoint sets total **18 cells, 3,414 trips and 419,968 trip/date pairs**. +All remain unresolved. Every trip's route, calendar and complete ordered stop +list was joined back to the ZIP. Affected occurrences have ordinary/default +pickup and drop-off, with no source instruction prohibiting boarding. +WD contributes 261 dates, WE 52 and PH 52 over literal 2026 calendars; the +accepted Sunday-on-public-holiday policy is still a separate implementation. +The [cross-line appendix](gtfs-cross-line-mapping-review-2026-10-28.md#no-path-traces-and-exact-smaller-exception-cells) +lists all 18 cell keys and representative trips. + +## Expo: evidence supports retaining the canonical allocation + +Canonical [Expo](../data/station/XPO.json) assigns A to `EWL_CG_E` toward +Changi Airport and B to `EWL_CG_W` toward Tanah Merah. Both are directly +maintained records, without a same-line inference. Their last review date is +21 July 2026, not a dated observation of every supplied service. + +| First-hand photograph | Visible operator signage | +| --- | --- | +| [ZKang123 / zhenkang, 27 June 2020, platform A](https://commons.wikimedia.org/wiki/File:CG1_Expo_Platform_A.jpg) | A beside an onward route strip to Changi Airport. | +| [ZKang123 / zhenkang, 27 June 2020, platform B](https://commons.wikimedia.org/wiki/File:CG1_Expo_Platform_B.jpg) | B beside the route strip through Tanah Merah toward the main EWL. | +| [LN9267, 12 August 2025](https://commons.wikimedia.org/wiki/File:Expo_Station_East_West_Line_Changi_Airport_Branch_Line_platform_12-08-2025%281%29.jpg) | B and the direction Tanah Merah on the same platform-door sign; Changi Airport appears behind the origin on the route strip. | + +The October source does the reverse: eastbound `CG1_A` explicitly labels B, +and westbound `CG1_B` labels A. Its parent is `CG1` in both cases. Physical +identity follows those literal labels; the stop-ID suffix cannot replace them. + +**Recommendation:** retain the canonical A/east and B/west bindings and keep all +six source conflicts visible. These observations strengthen a provider-label +investigation; they do not prove an unchanged allocation on every 2026 date or +authorize rewriting the source. A dated change notice or provider clarification +would be needed to explain the reverse assertion. + +## Choa Chu Kang: separate service allocation from boarding infrastructure + +Canonical [Choa Chu Kang](../data/station/CCK.json) assigns platforms 1/3 to +`BPLRT_B` via Petir and 2/4 to `BPLRT_A` via Senja, without boarding restrictions. +The feed instead uses literal platform 1 at both ends of every Service A trip, +and literal platform 2 at both ends of every Service B trip. + +Two photographs by ZKang123 / zhenkang, dated 17 February 2021, narrow the question: + +- [Platform 1](https://commons.wikimedia.org/wiki/File:BP1_Choa_Chu_Kang_LRT_Platform_1_20210217_155346.jpg) + displays Service B via Petir, with passengers boarding. This supports one + observed B/1 departure, not an exclusive or permanent B/1 allocation. +- [Platform 4](https://commons.wikimedia.org/wiki/File:BP1_Choa_Chu_Kang_LRT_Platform_4_20210217_155442.jpg) + has a notice directing passengers to board at platform 1 or 2. The temporary + out-of-service display in the image supplies no permanent status for 2026. + +**Recommendation:** obtain current station-specific confirmation of which +services can board at **each of 1 and 2**, and separately review the restrictions +on **each of 3 and 4**. The current service-only records do not describe the +observed boarding distinction. Do not swap A/B, grant both services to both +boarding platforms, or mark both outer faces from one photograph alone. + +The initial occurrence already conflicts. An alighting-only rule at the final +occurrence cannot resolve that initial conflict, and the feed's repeated 1/2 +must not be silently changed to 3/4. Any subsequent correction must preserve +the complete 19-occurrence path and assess pickup/drop-off at both ends. + +## Sengkang East: revisit the two observation roots + +The canonical clockwise service runs +`SKG → CPV → RMB → BAK → KGK → RNG → SKG`; counterclockwise reverses it. +At every intermediate station, platform 1 lists `SKLRT_E_CW` and 2 lists +`SKLRT_E_CCW`. Eight of those ten bindings are inferred: platform 1 traces to +directly maintained `BAK_SKLRT_1`, and platform 2 to `RMB_SKLRT_2`. +The October feed uses literal 2 clockwise and 1 counterclockwise at all five. + +The inspected [Bakau photograph, 21 July 2020](https://commons.wikimedia.org/wiki/File:SE3_Bakau_Platform_1_20200721_111814_1.jpg) +shows station identity but no readable platform-direction pairing. The +[Rumbia photograph, 30 May 2018](https://commons.wikimedia.org/wiki/File:SE2_Rumbia_Platform_2.jpg) +shows platform 2; its small route diagram is insufficient here to authenticate +the complete direction and date allocation. Both photographs are by +ZKang123 / zhenkang. Their titles alone cannot supply the missing directions. + +**Recommendation:** recheck the Bakau 1 and Rumbia 2 observation roots with +readable station-specific signs, then verify the inferred members at Compassvale, +Kangkar and Ranggung. Sengkang town-centre changes do not establish these +allocations. Keep all five intermediate conflicts and both town-centre visits; +neither a blanket label swap nor a town-centre platform rule is supported. + +## Reproduction and evidence integrity + +All seven cited photographs were downloaded and their pixels inspected. +Dates are author-recorded metadata; they are observations, not operator-issued +all-year allocation statements. Each linked file page identifies its author +and CC BY-SA 4.0 licence. Originals and inspection crops remain outside Git. +Newer Choa Chu Kang/Rumbia originals returned HTTP 429 and were not inspected; +no conclusion relies on their captions or thumbnails. + +| Original | SHA-256 | Bytes | +| --- | --- | ---: | +| Expo A, 2020 | `ed1ea9b145ae8079606a6679810a386ee74f963d2f1286089a7fb599b0b13675` | 3,952,173 | +| Expo B, 2020 | `e003e12157d575534f39fce34eccb68fcd1fb24117dda2ccb80b5707966115e4` | 3,914,833 | +| Expo B, 2025 | `da38e813958b4141a297111ea3d0461776d8e16c60afdef9ec18b81a4b66d800` | 11,961,759 | +| Choa Chu Kang 1, 2021 | `77d72d0d04bd72afcc6f4e0a5d4cda0127c856eebcc88b6c533d2820496d3801` | 3,774,631 | +| Choa Chu Kang 4, 2021 | `fa6489a08eb3954f1ba43b615a19616fd9a8e9a584349d4604194f16853f7e95` | 3,380,155 | +| Bakau, 2020 | `39077e92f3a4325af37a09b29d4a2d26de8d789c2bb46765d8a551c1bd825953` | 4,421,003 | +| Rumbia 2, 2018 | `99a953f3411bacb52240ef2c357fd32f824f45de04326b810bc1e35ef6865824` | 5,499,307 | + +With the pinned receipt/ZIP downloaded as in the [NEL instructions](gtfs-nel-mapping-review-2026-10-28.md), +build the CLI and regenerate using committed data at the merge above: + +```sh +npm run build:cli +TZ=UTC node scripts/draft-gtfs-scoped-review.mjs \ + /tmp/amk-correction-input-20261029/schedule.zip \ + /tmp/amk-correction-input-20261029/capture.json \ + NSL,EWL,NEL,CCL,DTL,TEL,BPLRT,SKLRT,PGLRT \ + /tmp/platform-allocation-review-20261031 \ + --canonical-commit 1788292457da1f02ddaf29b4209f4ed5c178def7 \ + --platform-groups --blockers --assignments +``` + +Select blocker patterns containing `CG1_A/B`, `BP1_A/B` or `SE1_A/B` in +`stopIds`; join `dateSetId` to the full draft's `dateSets`. Join **every** +`tripIds` member to source trips and stop-times, sorting occurrences by numeric +`stop_sequence`. This reproduces the population above without selecting only +convenient examples. Generated packets remain outside Git. + +| Regenerated identity | SHA-256 | +| --- | --- | +| Topology projection 1 | `02ebd83efd71e0facbe7b34ecb374ec0fbec62b581db56417bfc4ede88b3365f` | +| Normalized full draft | `9b5219384f880c13984d74ad71d4b2a8a8dc6dba33cb6f9a4275837bb4c37aa4` | +| Blocker bytes, 4,244,923 bytes | `920e426a56f04f25c0b51c53ea336238204d829542d3866aed9ce03214172ee2` | +| Normalized assignments | `ad4756a9ba792ac3afeb0af55efaed2eff3387e7613413687db73d2989a351b9` | + +Full accounting and assignment validation pass. There are still **189 unresolved +decisions and 990,143 unassigned trip/date pairs**. Mapping review and generation +eligibility remain false. This evidence review recovers no departures; canonical +corrections, occurrence semantics, holiday overrides and publication need their +own reviewed changes. + +Validation: CLI build, lint, documentation links and 74 existing grouped-platform, +grouped-review and blocker tests passed with Node 24 and `TZ=UTC`. From 792a537e7ed5f75186d0e129b481ce30ca38375b Mon Sep 17 00:00:00 2001 From: Duncan Leo Date: Sat, 31 Oct 2026 23:06:24 +1100 Subject: [PATCH 2/4] docs: record maintainer platform review input Preserve tentative CCK and Expo recollections and the unresolved East Loop direction clarification. Align reproduction inputs with the linked acquisition instructions. Co-Authored-By: Codex --- ...fs-platform-allocation-review-2026-10-31.md | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/docs/gtfs-platform-allocation-review-2026-10-31.md b/docs/gtfs-platform-allocation-review-2026-10-31.md index 46af0724..8a9ea907 100644 --- a/docs/gtfs-platform-allocation-review-2026-10-31.md +++ b/docs/gtfs-platform-allocation-review-2026-10-31.md @@ -107,6 +107,20 @@ Kangkar and Ranggung. Sengkang town-centre changes do not establish these allocations. Keep all five intermediate conflicts and both town-centre visits; neither a blanket label swap nor a town-centre platform rule is supported. +## Maintainer input — 31 October + +| Scope | Supplied review input | Effect on this review | +| --- | --- | --- | +| Choa Chu Kang | “I believe so” in response to both services boarding at either 1/2 and 3/4 being alighting-only. | Tentative recollection of that arrangement, retained for a later canonical correction review. It does not establish an exclusive service allocation or historical validity over all 2026 dates. | +| Bakau | “Platform 1 is East Loop.” | Confirms the loop association as supplied review context; the next station/direction remains unspecified. | +| Rumbia | “same, Platform 1 is East Loop.” | Same limit: both canonical directions serve the East Loop. It does not yet select clockwise versus counterclockwise or revise the platform 2 observation root. | +| Expo | “I think so?” about A toward Changi Airport and B toward Tanah Merah. | Tentative agreement, alongside the independent photographs above; the source conflict remains unresolved. | + +These are maintainer statements, with their expressed uncertainty preserved. +For Sengkang East the remaining clarification is the next station from platform 1: +Bakau toward Kangkar or Rumbia, and Rumbia toward Bakau or Compassvale. +No canonical allocation or digest-bound mapping approval is supplied here. + ## Reproduction and evidence integrity All seven cited photographs were downloaded and their pixels inspected. @@ -132,8 +146,8 @@ build the CLI and regenerate using committed data at the merge above: ```sh npm run build:cli TZ=UTC node scripts/draft-gtfs-scoped-review.mjs \ - /tmp/amk-correction-input-20261029/schedule.zip \ - /tmp/amk-correction-input-20261029/capture.json \ + /tmp/nel-review-input-20261028/schedule.zip \ + /tmp/nel-review-input-20261028/capture.json \ NSL,EWL,NEL,CCL,DTL,TEL,BPLRT,SKLRT,PGLRT \ /tmp/platform-allocation-review-20261031 \ --canonical-commit 1788292457da1f02ddaf29b4209f4ed5c178def7 \ From 34540055a021c45d62d4af3948ba036aceb8b79d Mon Sep 17 00:00:00 2001 From: Duncan Leo Date: Sat, 31 Oct 2026 23:09:46 +1100 Subject: [PATCH 3/4] docs: record Bakau platform board evidence Record the maintainer-supplied board crop and the direction interpretation supported by its highlighted route arms. Preserve provenance limits and leave Rumbia direction unresolved. Co-Authored-By: Codex --- docs/gtfs-mapping-review-inventory.md | 2 +- ...s-platform-allocation-review-2026-10-31.md | 31 ++++++++++++++----- 2 files changed, 24 insertions(+), 9 deletions(-) diff --git a/docs/gtfs-mapping-review-inventory.md b/docs/gtfs-mapping-review-inventory.md index 9841731c..5429cc32 100644 --- a/docs/gtfs-mapping-review-inventory.md +++ b/docs/gtfs-mapping-review-inventory.md @@ -97,7 +97,7 @@ dates, trip records and literal platform evidence. | Ang Mo Kio `NS16_A`/`NS16_B` | Source groups A / C and B / D. The 29 October correction adds physical C/D with `not_in_service` status following review of their depot role. | Complete physical groups still need every member to pass passenger boarding checks; see the [AMK correction and regenerated diagnostics](gtfs-amk-platform-evidence-2026-10-28.md). Choosing A/B alone would hide the source alternatives. | | Expo airport services | Six patterns conflict with current literal-label/service scopes. Dated photographs support canonical A/east and B/west. | Follow the [allocation evidence review](gtfs-platform-allocation-review-2026-10-31.md); investigate the source's reverse labels without matching by suffix. | | CCL | Revision/code gaps, multiple candidates and conflicts with undated current platform scopes, including unresolved dates in all 119 patterns. | Review these causes separately; do not choose the latest revision or use current records as historical proof. | -| Sengkang East | Six patterns conflict at five intermediate stations; eight of ten canonical bindings trace to two observation roots. | Recheck Bakau 1 and Rumbia 2, then the inferred members, as described in the [allocation evidence review](gtfs-platform-allocation-review-2026-10-31.md). | +| Sengkang East | Six patterns conflict at five intermediate stations; eight of ten canonical bindings trace to two observation roots. A maintainer-supplied Bakau board crop supports its existing directions. | Resolve Rumbia's direction and the inferred members, retaining the image limits in the [allocation evidence review](gtfs-platform-allocation-review-2026-10-31.md). | | Bukit Panjang LRT | Six patterns conflict at both Choa Chu Kang occurrences. Historical signage distinguishes boarding platforms 1/2 from platform 4. | Review current per-platform service and boarding allocations using the [station evidence](gtfs-platform-allocation-review-2026-10-31.md); preserve both endpoint occurrences. | | Marina South Pier | Four geometric NSL patterns conflict at their terminal physical platform; two no-geometry skip paths also have that endpoint concern. | Distinguish terminal arrival and source occurrence rules before changing service scope or diagnostics. | | Five source-path disagreements | Three NSL patterns contain skipped/excursion occurrences; two TEL patterns omit Gardens by the Bay. | Obtain service-specific evidence or a provider correction. No interpolation, reversal, deleted occurrence or implicit exclusion is supplied. | diff --git a/docs/gtfs-platform-allocation-review-2026-10-31.md b/docs/gtfs-platform-allocation-review-2026-10-31.md index 8a9ea907..78384a4c 100644 --- a/docs/gtfs-platform-allocation-review-2026-10-31.md +++ b/docs/gtfs-platform-allocation-review-2026-10-31.md @@ -101,24 +101,34 @@ shows platform 2; its small route diagram is insufficient here to authenticate the complete direction and date allocation. Both photographs are by ZKang123 / zhenkang. Their titles alone cannot supply the missing directions. -**Recommendation:** recheck the Bakau 1 and Rumbia 2 observation roots with -readable station-specific signs, then verify the inferred members at Compassvale, -Kangkar and Ranggung. Sengkang town-centre changes do not establish these -allocations. Keep all five intermediate conflicts and both town-centre visits; -neither a blanket label swap nor a town-centre platform rule is supported. +The maintainer subsequently supplied a crop identified as Bakau's platform board. +It shows both platform headings and opposite highlighted arms of the East Loop. +Reading those arms against the canonical station order supports platform 1 via +Kangkar and Ranggung (`SKLRT_E_CW`), and platform 2 via Rumbia and Compassvale +(`SKLRT_E_CCW`). This is an interpretation of the route highlighting; the small +station text is blurred. The crop's capture date, author and original URL were +not supplied, and its station identity comes from the maintainer's description. +It supports retaining Bakau's current binding, without authenticating every +2026 date or the other stations' allocations. + +**Recommendation:** retain Bakau's current direction binding on this evidence, +and resolve Rumbia's direction before revisiting its platform 2 observation root +and the inferred members at Compassvale, Kangkar and Ranggung. Keep all five +source conflicts and both town-centre visits. Sengkang town-centre changes and +the Bakau crop do not establish other stations' allocations. ## Maintainer input — 31 October | Scope | Supplied review input | Effect on this review | | --- | --- | --- | | Choa Chu Kang | “I believe so” in response to both services boarding at either 1/2 and 3/4 being alighting-only. | Tentative recollection of that arrangement, retained for a later canonical correction review. It does not establish an exclusive service allocation or historical validity over all 2026 dates. | -| Bakau | “Platform 1 is East Loop.” | Confirms the loop association as supplied review context; the next station/direction remains unspecified. | +| Bakau | “Platform 1 is East Loop,” followed by a crop identified as Bakau's platform board. | The opposite highlighted route arms support the existing 1/clockwise and 2/counterclockwise bindings, with the image limits above. | | Rumbia | “same, Platform 1 is East Loop.” | Same limit: both canonical directions serve the East Loop. It does not yet select clockwise versus counterclockwise or revise the platform 2 observation root. | | Expo | “I think so?” about A toward Changi Airport and B toward Tanah Merah. | Tentative agreement, alongside the independent photographs above; the source conflict remains unresolved. | These are maintainer statements, with their expressed uncertainty preserved. -For Sengkang East the remaining clarification is the next station from platform 1: -Bakau toward Kangkar or Rumbia, and Rumbia toward Bakau or Compassvale. +For Sengkang East the remaining clarification is Rumbia's next station from +platform 1: Bakau or Compassvale. No canonical allocation or digest-bound mapping approval is supplied here. ## Reproduction and evidence integrity @@ -127,6 +137,11 @@ All seven cited photographs were downloaded and their pixels inspected. Dates are author-recorded metadata; they are observations, not operator-issued all-year allocation statements. Each linked file page identifies its author and CC BY-SA 4.0 licence. Originals and inspection crops remain outside Git. +The separately supplied Bakau board crop is identified by SHA-256 +`2bd25076506e474759caf36b5d2b4d20ef2cccbcf8fe1a4af6134dece972abab` +(2,098,446 bytes), filename +`codex-clipboard-8d0224f1-01f0-410e-b4eb-a4eaded682a8.png`. +Its licence is unspecified; the image remains outside Git and is not republished. Newer Choa Chu Kang/Rumbia originals returned HTTP 429 and were not inspected; no conclusion relies on their captions or thumbnails. From badf67231b9d17f1af4841d71cb5b86b3e164b36 Mon Sep 17 00:00:00 2001 From: Duncan Leo Date: Sat, 31 Oct 2026 23:12:03 +1100 Subject: [PATCH 4/4] docs: record Rumbia platform board evidence Record the supplied Rumbia diagram and its direction interpretation, supporting the existing observation root while preserving image limits and inferred bindings. Co-Authored-By: Codex --- docs/gtfs-mapping-review-inventory.md | 2 +- ...s-platform-allocation-review-2026-10-31.md | 43 ++++++++++++------- 2 files changed, 29 insertions(+), 16 deletions(-) diff --git a/docs/gtfs-mapping-review-inventory.md b/docs/gtfs-mapping-review-inventory.md index 5429cc32..6244bfd2 100644 --- a/docs/gtfs-mapping-review-inventory.md +++ b/docs/gtfs-mapping-review-inventory.md @@ -97,7 +97,7 @@ dates, trip records and literal platform evidence. | Ang Mo Kio `NS16_A`/`NS16_B` | Source groups A / C and B / D. The 29 October correction adds physical C/D with `not_in_service` status following review of their depot role. | Complete physical groups still need every member to pass passenger boarding checks; see the [AMK correction and regenerated diagnostics](gtfs-amk-platform-evidence-2026-10-28.md). Choosing A/B alone would hide the source alternatives. | | Expo airport services | Six patterns conflict with current literal-label/service scopes. Dated photographs support canonical A/east and B/west. | Follow the [allocation evidence review](gtfs-platform-allocation-review-2026-10-31.md); investigate the source's reverse labels without matching by suffix. | | CCL | Revision/code gaps, multiple candidates and conflicts with undated current platform scopes, including unresolved dates in all 119 patterns. | Review these causes separately; do not choose the latest revision or use current records as historical proof. | -| Sengkang East | Six patterns conflict at five intermediate stations; eight of ten canonical bindings trace to two observation roots. A maintainer-supplied Bakau board crop supports its existing directions. | Resolve Rumbia's direction and the inferred members, retaining the image limits in the [allocation evidence review](gtfs-platform-allocation-review-2026-10-31.md). | +| Sengkang East | Six patterns conflict at five intermediate stations; eight of ten canonical bindings trace to two observation roots. Maintainer-supplied Bakau and Rumbia boards support both roots' existing directions. | Retain current bindings and recorded inferences, with the image limits and unresolved source conflicts in the [allocation evidence review](gtfs-platform-allocation-review-2026-10-31.md). | | Bukit Panjang LRT | Six patterns conflict at both Choa Chu Kang occurrences. Historical signage distinguishes boarding platforms 1/2 from platform 4. | Review current per-platform service and boarding allocations using the [station evidence](gtfs-platform-allocation-review-2026-10-31.md); preserve both endpoint occurrences. | | Marina South Pier | Four geometric NSL patterns conflict at their terminal physical platform; two no-geometry skip paths also have that endpoint concern. | Distinguish terminal arrival and source occurrence rules before changing service scope or diagnostics. | | Five source-path disagreements | Three NSL patterns contain skipped/excursion occurrences; two TEL patterns omit Gardens by the Bay. | Obtain service-specific evidence or a provider correction. No interpolation, reversal, deleted occurrence or implicit exclusion is supplied. | diff --git a/docs/gtfs-platform-allocation-review-2026-10-31.md b/docs/gtfs-platform-allocation-review-2026-10-31.md index 78384a4c..5a60a81b 100644 --- a/docs/gtfs-platform-allocation-review-2026-10-31.md +++ b/docs/gtfs-platform-allocation-review-2026-10-31.md @@ -3,8 +3,9 @@ The next 18 unresolved pattern/date cells cover Expo, both Choa Chu Kang occurrences and Sengkang East's five intermediate stations. Photographs support Expo's existing canonical directions. The LRT evidence has narrower limits: -Choa Chu Kang's signs distinguish boarding from alighting, while the inspected -Sengkang East photos do not establish all five stations' directions. +Choa Chu Kang's signs distinguish boarding from alighting. Maintainer-supplied +boards support Bakau's and Rumbia's existing directions; the remaining Sengkang +East bindings retain their recorded same-line inference. This packet records evidence and the remaining decisions. It changes no source rows, canonical platforms, mappings, calendars or eligibility rules. @@ -85,7 +86,7 @@ occurrence cannot resolve that initial conflict, and the feed's repeated 1/2 must not be silently changed to 3/4. Any subsequent correction must preserve the complete 19-occurrence path and assess pickup/drop-off at both ends. -## Sengkang East: revisit the two observation roots +## Sengkang East: supplied boards support the two observation roots The canonical clockwise service runs `SKG → CPV → RMB → BAK → KGK → RNG → SKG`; counterclockwise reverses it. @@ -108,14 +109,22 @@ Kangkar and Ranggung (`SKLRT_E_CW`), and platform 2 via Rumbia and Compassvale (`SKLRT_E_CCW`). This is an interpretation of the route highlighting; the small station text is blurred. The crop's capture date, author and original URL were not supplied, and its station identity comes from the maintainer's description. -It supports retaining Bakau's current binding, without authenticating every -2026 date or the other stations' allocations. - -**Recommendation:** retain Bakau's current direction binding on this evidence, -and resolve Rumbia's direction before revisiting its platform 2 observation root -and the inferred members at Compassvale, Kangkar and Ranggung. Keep all five -source conflicts and both town-centre visits. Sengkang town-centre changes and -the Bakau crop do not establish other stations' allocations. +It supports retaining Bakau's current binding. + +The second supplied crop, identified as Rumbia's board, supports platform 1 +via Bakau, Kangkar and Ranggung (`SKLRT_E_CW`), and platform 2 via Compassvale +(`SKLRT_E_CCW`). Platform 1's highlighted path continues around the longer arm; +platform 2 highlights the shorter arm through Compassvale to Sengkang. This is +also a route-diagram interpretation, with blurred text and part of platform 2's +board obscured. Its capture date, author and original URL were not supplied; +station identity again comes from the maintainer. + +**Recommendation:** retain both stations' existing direction bindings. These +boards support the two directly maintained observation roots; the eight inferred +bindings retain their existing provenance, including those at Compassvale, +Kangkar and Ranggung. The supplied images do not independently verify those +three stations or every 2026 date. Keep all five source conflicts and both +town-centre visits; no source label swap is authorized by this evidence review. ## Maintainer input — 31 October @@ -123,12 +132,12 @@ the Bakau crop do not establish other stations' allocations. | --- | --- | --- | | Choa Chu Kang | “I believe so” in response to both services boarding at either 1/2 and 3/4 being alighting-only. | Tentative recollection of that arrangement, retained for a later canonical correction review. It does not establish an exclusive service allocation or historical validity over all 2026 dates. | | Bakau | “Platform 1 is East Loop,” followed by a crop identified as Bakau's platform board. | The opposite highlighted route arms support the existing 1/clockwise and 2/counterclockwise bindings, with the image limits above. | -| Rumbia | “same, Platform 1 is East Loop.” | Same limit: both canonical directions serve the East Loop. It does not yet select clockwise versus counterclockwise or revise the platform 2 observation root. | +| Rumbia | “same, Platform 1 is East Loop,” followed by a crop identified as Rumbia's platform board. | The highlighted routes support 1 via Bakau (clockwise) and 2 via Compassvale (counterclockwise), retaining the existing platform 2 observation root and the image limits above. | | Expo | “I think so?” about A toward Changi Airport and B toward Tanah Merah. | Tentative agreement, alongside the independent photographs above; the source conflict remains unresolved. | These are maintainer statements, with their expressed uncertainty preserved. -For Sengkang East the remaining clarification is Rumbia's next station from -platform 1: Bakau or Compassvale. +Both supplied boards answer the requested direction clarification at their +identified stations; the other bindings remain recorded inferences. No canonical allocation or digest-bound mapping approval is supplied here. ## Reproduction and evidence integrity @@ -141,7 +150,11 @@ The separately supplied Bakau board crop is identified by SHA-256 `2bd25076506e474759caf36b5d2b4d20ef2cccbcf8fe1a4af6134dece972abab` (2,098,446 bytes), filename `codex-clipboard-8d0224f1-01f0-410e-b4eb-a4eaded682a8.png`. -Its licence is unspecified; the image remains outside Git and is not republished. +The supplied Rumbia board crop hashes to +`2cae51cd9a544537e6442eb024fa1de8bbd14af53d543a5f3da0cd439af194ec` +(1,740,092 bytes), filename +`codex-clipboard-5b15a8e2-6671-4b14-9032-cd0416dcd10b.png`. +Both crops have unspecified licences; they remain outside Git and are not republished. Newer Choa Chu Kang/Rumbia originals returned HTTP 429 and were not inspected; no conclusion relies on their captions or thumbnails.