Commit Graph

85 Commits

Author SHA1 Message Date
gnezim 63fc6060f2 Verify day-change algorithm per TZ 4.1.17 (per-time-type badges, query-date baseline)
R4 gap fixed: TimeGroup now accepts scheduledDayChange + actualDayChange props
separately so each time type renders its own independent badge. FlightCard
updated to pass them independently (scheduled vs actual/estimated); expanded
row time block also now shows per-type badges.

R5 tooltip fixed: dayChangeBadgeTooltip() uses string-based date extraction
(no TZ reprojection via new Date()) — avoids viewer-TZ shift for SSR and
cross-TZ correctness. Returns "День" for ±1, DD.MM.YYYY for ±2+.

New shared helper dayChange.ts exports computeDayChange(), dayChangeBadgeTooltip(),
formatDayChangeBadge(). 27 unit tests cover +0/+1/+2/-1/-2, null, malformed
input, month/year boundaries, and per-time-type independence (R4).

R1–R3, R6 confirmed correct (API supplies dayChange per ITimesSet; badge
adjacent to time; hidden when 0). R8 (mobile tooltip suppression) deferred.
2026-04-22 00:01:30 +03:00
gnezim df83a587c2 Populate rule rows for P5 subsections 4.1.15/16/17/22/23 in TZ audit spec 2026-04-21 23:45:57 +03:00
gnezim 27fd4ac601 Add P5 implementation plan: flight cards + timeline + aircraft icons + Уточняется 2026-04-21 23:36:46 +03:00
gnezim 8c8022780f Mark P4 (results lists) rules Done in TZ audit spec
32 rules Done + ~142 Implemented across §4.1.13/14. 4 Partial (multi-seg
status-switching, check-in counter, airport-as-link on segment dep/arr).
7 TBD(P5) deferred (airport-as-link OB+Schedule collapsed/expanded,
online check-in button). C8 registered and resolved (week-tabs active
range +210→+330 days). Coverage: 317 Done, ~191 Implemented, 6 Partial,
~138 TBD.
2026-04-21 23:35:11 +03:00
gnezim 4fd1b054a4 Populate rule rows for P4 subsections 4.1.13/14 in TZ audit spec 2026-04-21 22:34:32 +03:00
gnezim 890d575e88 Add P4 implementation plan: results lists (Online-Board + Schedule) 2026-04-21 22:25:06 +03:00
gnezim 793637ffc3 Mark P3 (filter + validation + history + search execution) rules Done in TZ audit spec 2026-04-21 22:21:09 +03:00
gnezim ae061bcaab Populate rule rows for P3 subsections 4.1.9/10/11/12 in TZ audit spec
159 net-new concrete rules extracted from TZ Tables 11-17, §4.1.9.3-4,
§4.1.10/10.1/11/11.1/12, replacing 27 skeleton placeholder rows.
Coverage total: 283 → 494 rules. All new rows Status=TBD, Plan=P3.
2026-04-21 19:48:13 +03:00
gnezim 3b32233b88 Add P3 implementation plan: filter + validation + search history + search execution 2026-04-21 19:40:04 +03:00
gnezim 5362d8d6c4 Mark P2 (start pages + first-entry + popular) rules Done in TZ audit spec 2026-04-21 19:32:14 +03:00
gnezim 2aa831e198 Populate rule rows for P2 subsections 4.1.5/6/7 in TZ audit spec 2026-04-21 18:54:13 +03:00
gnezim a6d8f43e94 Add P2 implementation plan: start pages + first-entry geo + popular sections 2026-04-21 18:50:01 +03:00
gnezim 8f573c15b8 Mark P1 (URLs/breadcrumbs/names/nav) rules Done in TZ audit spec 2026-04-21 18:21:51 +03:00
gnezim 13170eb689 Fix review issues in P1 spec rule rows (bracket notation, cross-refs, typo, R8 split) 2026-04-21 16:26:52 +03:00
gnezim 816028603b Populate full rule enumeration for P1 subsections 4.1.2/3/4/8 in TZ audit spec 2026-04-21 16:18:05 +03:00
gnezim a6f7d3df8c Add P1 implementation plan: URLs, breadcrumbs, page names, cross-section nav 2026-04-21 15:59:04 +03:00
gnezim 8e84c41243 Add TZ РИ-07-2538С compliance-audit spec for 4.1 (Online-Board / Schedule / Flight Map) 2026-04-21 15:45:11 +03:00
gnezim 8005356db5 docs: parity report markdown + auto-memory plan
Companion markdown to the comparison-report/visual/report.html with
the same coverage matrix and per-page findings. Useful for git-based
review without serving the HTML.

Also adds AGENTS.md (subagent role definitions for future sessions)
and the modernjs-v3-upgrade plan stub from the earlier scoping.
2026-04-19 22:06:05 +03:00
gnezim aa7433b50b Add CityAutocomplete + regional picker implementation plan
Seven TDD tasks: buildCountryCityRows helper, CityPickerPopup with
regional tabs + grid, CityAutocomplete composite with popup trigger,
OnlineBoardFilter Route tab integration, FlightsMapFilter integration
with geolocate, time-selector compact view, final verification.
2026-04-17 14:58:05 +03:00
gnezim 0534b373f0 Add design spec for CityAutocomplete + regional picker parity
Cross-feature Angular-parity component: composite CityAutocomplete
(typeahead + clear + regional-picker trigger button) + CityPickerPopup
(regional tabs + country/city grid + optional GPS) + pure
buildCountryCityRows helper. Consumers: OnlineBoardFilter Route tab
and FlightsMapFilter. Time-selector switches to compact view in both.
2026-04-17 14:25:52 +03:00
gnezim 5a18e86bec Add Flights Map C.5 implementation plan
Six TDD tasks: calendarRange pure helpers, useGeolocationDefault hook,
FlightsMapFilter Calendar wiring (minDate/maxDate/disabledDates + snap
effect), Calendar prop capture tests, FlightsMapStartPage geolocation
hook call, final verification.
2026-04-17 12:13:50 +03:00
gnezim 9ee9c6b089 Add design spec for Flights Map C.5 (Calendar + Geolocation)
Final C-gap sub-feature: calendarRange pure helpers
(getMinDate/getMaxDate/buildDisabledDates/findNextEnabledDate), snap-to-
nearest-enabled effect in FlightsMapFilter, and useGeolocationDefault
hook that pre-fills departure from browser position on mount when no
dep/arr is already set.
2026-04-17 12:07:48 +03:00
gnezim 5225df0dd1 Add Flights Map C.4 implementation plan
Six TDD tasks covering filterRoutes, buildBuyTicketUrl + escapeHtml,
routesToPolylines airport-code normalization, FlightsMapStartPage wiring
(effectiveConnections + auto-fallback effects, filteredRoutes + popups
memos), integration tests, and final verification.
2026-04-17 10:48:02 +03:00
gnezim 299b0285b0 Add design spec for Flights Map C.4 (Popups + Filtering + Fallback)
Covers the final four Angular-parity gaps: filterRoutes pure helper,
buildBuyTicketUrl + escapeHtml, routesToPolylines/intermediateCityIds
airport→city normalization, and FlightsMapStartPage wiring for the
auto-fallback effect plus departure/arrival buy-ticket popups.
2026-04-17 10:43:24 +03:00
gnezim 514bae6051 Add Flights Map C.3 implementation plan
Six TDD tasks covering the routes-to-polylines pure helper, IMapPolyline
reshape to cityIds, MapCanvas polyline sync with visibility filtering,
intermediate-tooltip force-open pass, page wiring, and integration tests.
Tasks 1-3 share a commit due to coupling between type and consumer.
2026-04-17 10:00:48 +03:00
gnezim a23513045b Add design spec for Flights Map C.3 (Route + Spider Drawing)
Covers the polyline layer: routesToPolylines pure function, city-code-
based IMapPolyline shape, MapCanvas polyline sync via markerIndexRef
with visibility filtering, intermediate-city tooltip force-open pass.
2026-04-17 09:53:21 +03:00
gnezim 855a7c31e6 Fix POPULATION_1KK size in C.2 spec: Angular source has 30 entries, not 29 2026-04-17 08:36:08 +03:00
gnezim 43f251e177 Add Flights Map C.2 implementation plan
Six TDD tasks: cityCategory port, IMapMarker extension, MapCanvas
10-layer rendering + highlight + tooltip rules (with a fresh Leaflet
mock), FlightsMapStartPage marker wiring, integration tests, final
verification.
2026-04-17 08:32:32 +03:00
gnezim 13bb96fdec Add design spec for Flights Map C.2 (Markers + Zoom Tiers)
Captures the markers-from-dictionaries + zoom-visibility scope:
cityCategory.ts port, IMapMarker extension, MapCanvas 10-LayerGroup
bookkeeping, highlighted-layer, domestic/international toggles, and
the Angular-parity tooltip visibility rules.
2026-04-17 08:27:38 +03:00
gnezim 9f8a3a45f0 Add Flights Map C.1 implementation plan and updated spec
Spec: narrows useCityName handling (leave untouched due to active
consumers). Plan: 10 TDD tasks covering types, api, transform rules,
helpers, hook, barrel, page wiring, and regression tests.
2026-04-17 03:07:30 +03:00
gnezim 397dc2a575 Add design spec for Flights Map C.1 (Dictionaries)
Captures the data-layer scope for the flights-map rebuild: useDictionaries
hook, parallel fetch of world_regions/countries/cities/airports, transform
rules matching Angular DictionariesService, and the testing contract.
2026-04-17 02:51:22 +03:00
gnezim ced66acc7b Add transfer bar + multi-leg timeline (B.5) implementation plan 2026-04-17 02:23:52 +03:00
gnezim c08e7c3c3b Add transfer bar + multi-leg timeline (B.5) design spec 2026-04-17 02:19:33 +03:00
gnezim 888d19f8f3 Add back button + flight schedule timeline (B.6) implementation plan 2026-04-17 01:58:47 +03:00
gnezim df79213186 Add back button + flight schedule timeline (B.6) design spec 2026-04-17 01:55:48 +03:00
gnezim d0fd2cbff3 Add board details header (B.4) implementation plan 2026-04-17 01:16:55 +03:00
gnezim 4927dc3717 Add board details header + action buttons (B.4) design spec 2026-04-17 01:08:20 +03:00
gnezim 1232587774 Add day tabs (B.3) implementation plan 2026-04-17 00:13:23 +03:00
gnezim 95b3a909b0 Add day tabs (B.3) design spec 2026-04-16 23:59:49 +03:00
gnezim 8a2ece333a Add flights mini-list (B.2) implementation plan 2026-04-16 23:20:00 +03:00
gnezim 5759d165c4 Add flights mini-list sidebar (B.2) design spec 2026-04-16 23:14:13 +03:00
gnezim 06bea266c2 Add flight details accordion (B.1) implementation plan 2026-04-16 21:57:13 +03:00
gnezim 45a6cee9d8 Add flight details accordion (B.1) design spec 2026-04-16 21:47:18 +03:00
gnezim c1c65faef3 Add popular requests pre-fill implementation plan 2026-04-16 18:17:34 +03:00
gnezim e8cf655abc Add popular requests form pre-fill design spec 2026-04-16 18:15:16 +03:00
gnezim 018208e84f Add implementation plan for Angular/React comparison pipeline 2026-04-16 17:33:55 +03:00
gnezim 1fc1880644 Add Angular→React comparison pipeline design spec
CI / ci (push) Failing after 27s
Deploy / build-and-deploy (push) Failing after 5s
Defines a Playwright-based pipeline for visual screenshot diffing,
behavioral E2E verification, and gap analysis between the Angular
and React implementations. Documents known gaps in flight details,
popular requests logic, and flights map.
2026-04-16 17:25:48 +03:00
gnezim 936adab6e4 Add Phase 1 README with setup, debugging, and runbook pointers
CI / ci (push) Failing after 39s
Deploy / build-and-deploy (push) Failing after 6s
2026-04-15 16:22:06 +03:00
gnezim 98c6eca90e Add Phase 6 cutover runbook and operational checklist
Comprehensive operational procedure for the Angular-to-React traffic
cutover: pre-cutover gates, proxy config templates (nginx/HAProxy),
72-hour traffic ramp schedule, monitoring checklist, rollback procedure,
1-week soak criteria, and Angular decommission steps. Also adds Phase 6
cross-reference sections to the Phase 1 runbook.
2026-04-15 10:56:34 +03:00
gnezim 7d202b9436 Add Phase 5 Popular Requests master plan
Documents the Angular feature analysis and sub-plan breakdown for
porting popular-requests to React with useSearchHistory hook.
2026-04-15 09:58:14 +03:00