WF-1 · Weather automation

Weather and neck-discomfort index

Turns public weather forecasts into a transparent educational discomfort index compared across several cities.

Active · educationalMonday, Wednesday and FridayWeather · automation
Multi-city grid and a D+1–D+3 detail card.
1 · In one sentence

A rule-based 0–100 index combines temperature range, wind, humidity, rain and pressure.

2 · Why it exists

Make several weather factors readable without making a diagnosis or predicting an individual symptom.

3 · What it produces

Multi-city grid and a D+1–D+3 detail card.

How to read the latest output: A high value means several adverse weather factors occur together; it does not measure personal pain and is not a medical forecast.

A high value means several adverse weather factors occur together; it does not measure personal pain and is not a medical forecast.

4 · How it works

From sources to output.

Workflow pipeline diagram
Pipeline diagram: from public sources through checks and computation to the published cards, with human oversight.
2Checks
3Derived variables
40–100 index
5Card
6Publication

5 · Data used

Data used
SourceVariableFrequencyLimitation
Open-MeteoTemperature, humidity, wind, pressure, rainEvery runPublic API; missing values are possible
6 · Models and rules

Models and rules

Rule-based index with capped weighted contributions, wind chill and 24-hour pressure change.

7 · Controls

Controls

Freshness, missing values, exact and visual hashes, UTC watermark and publication blocking when inputs are incomplete.

8 · Results and metrics

Results and metrics

Run continuity, missing data caught and duplicates prevented. No clinical performance metric is claimed.

9 · Limits

Limits

No causal claim; individual response is not modelled; educational use only.

Possible applications of the pattern

Rule-based weather index

Possible applications: transparent indices for comfort, operational risk, maintenance or multi-site prioritisation. Thresholds require domain validation and must not be presented as clinical inference.

Transferable components

  • Open-Meteo and local timezones
  • derived weather features
  • weighted rules with saturation
  • multi-city and D+1–D+3 cards

Research questions

  • weight sensitivity
  • geographic stability
  • comparison with a naïve index
  • uncertainty communication

Workflow technical dossier

IMPLEMENTEDDescribes behaviour present in the workflow.EXTENSIONIndicates a possible check or evolution, not an operating feature.

Implementation detail and assessment criteria.

This section connects the visible output to data-engineering, modelling, validation and delivery choices present in the repository.

Architecture and data

  • Multi-city Open-Meteo acquisition with local time zones and HTTP retry.
  • Daily CSV history and JSON publication state.
  • Separation of index calculation, recommendations, graphics, PDF and social publisher.

Features and methods

  • Tmax−Tmin range, thresholded wind, wind chill, humidity, rain, 24-hour pressure change and absolute pressure.
  • Deterministic score with a 20-point baseline, capped contributions and Low/Medium/High thresholds.
  • Advice engine with categories, priority, deduplication and trend versus a 7-day mean.

Validation and failure modes

  • Scenario and deterministic-output tests; missing-data and date checks.
  • Exact and visual hashes prevent duplicates; watermark and alt text are separate.
  • No clinical label: the system does not claim medical accuracy or causality.

Runtime and delivery

  • Python 3.11, requests, tenacity, matplotlib, Pillow, ReportLab, pytz and atproto.
  • GitHub Actions with dispatch, schedules, artifacts and strict/non-strict Bluesky modes.

10 · Operating timeline

Operating timeline

  • Status: Active · educational
  • Frequency: Monday, Wednesday and Friday
  • Page updated: July 2026

11 · Technical detail

Method and assumptions

Rule-based index with capped weighted contributions, wind chill and 24-hour pressure change.

Main failure modes

No causal claim; individual response is not modelled; educational use only.

Publication governance

Freshness, missing values, exact and visual hashes, UTC watermark and publication blocking when inputs are incomplete.

See real outputs

The Publications page reads the public Bluesky feed and shows up to three recent runs, including multiple images in one post.

Open publications