← Back to docs

Skånetrafiken weekly planning

Skånetrafiken weekly planning

Transit Planner builds a weekly journey plan from a schedule. Enter the morning origin and destination and use schedule data with the columns date,start,end.

date,start,end
2026-09-28,10:00,14:45
2026-09-29,09:50,16:00

The schedule can be pasted manually or read from one or more schedule images. Multiple uploaded images are analysed together with GPT-5.6 Sol using high reasoning. The model transcribes every timed lesson block per day and Tools derives the first start and final end locally. The two independent visual transcriptions run concurrently, with a third pixel-based adjudication pass when they disagree or one fails validation. If the screenshot does not visibly show a year, Tools normalizes a model-guessed historical year to the nearest current or upcoming occurrence of the same month/day. A year actually visible in the image remains authoritative. The resulting CSV can be reviewed and edited before journey lookup.

Locations are searched against Skånetrafiken while you type. Normal stops, stations, addresses and POIs are supported through the provider Points lookup rather than only the previously hard-coded Klippan/Helsingborg values. By default the morning route is reversed after school: the morning destination becomes the return origin and the morning origin becomes the return destination. Enable a separate after-school route when different locations are required for the return journey.

For every schedule row Tools searches for:

  • a morning journey that provides safe time before start,
  • a return journey departing after end.

The same configured travel margin is applied in both directions.

The primary journey is selected for useful schedule margin. Results show departure, arrival and a compact description of the selected transport modes and lines. Additional alternatives are hidden per date and can be expanded when needed. The "Preferred transport / lines" multiselect is visible before the first lookup. After the first weekly lookup it is populated with the bus and train lines actually returned by Skånetrafiken. The configured travel margin always has priority over the selected lines, and the selection is retained in shared planner links.

Journey lookup has its own progress panel beside the weekly lookup action and above the journey table. It shows the active day, elapsed wait time and completed/failed day counts. Past dates are rejected before Skånetrafiken is contacted. Provider failures are shown as errors rather than as empty successful results.

A share link stores the planner state and automatically restores the result when opened. New links use a short opaque ID instead of embedding the full schedule in the URL. The saved state also includes preferred lines, travel margin, cached schedule images and an optional separate after-school route, and is retained for 30 days. Existing older long share links continue to open. Anyone with the share link can view the shared planner state while the short link is retained.

Journey information is fetched when the lookup runs. Always check current traffic information when the journey is actually going to be made.

See docs/TRANSIT-PLANNER.md for the service overview, docs/transit-planner-openai-schedule-analysis.md for image-analysis implementation notes and docs/transit-planner-changelog.md for the component-focused change history.