Document water temperature production workflow

This commit is contained in:
b0txec
2026-08-19 21:45:48 +03:00
parent 3aba9b4a40
commit 33409e8947
5 changed files with 53 additions and 2 deletions
+7 -1
View File
@@ -36,7 +36,7 @@ Staging currently exercises the PostgreSQL → API → frontend path with synthe
### SolidJS frontend ### SolidJS frontend
- Queries the backend using the same origin in production builds. - Queries the backend using the same origin in production builds.
- Provides Stations, City Analysis, Faktiskā, Latvia overview, Database, HARMONIE, and LVGMC forecast workspaces. - Provides Stations, City Analysis, Faktiskā, Latvia overview, Database, HARMONIE, and LVGMC forecast workspaces. A separate Ūdens temperatūra production workspace is planned.
- Uses HTML canvas for broadcast maps and PNG export. - Uses HTML canvas for broadcast maps and PNG export.
- Uses the bundled `ltv_meteo.otf` font for weather symbols; the glyphs are font characters, not emoji. - Uses the bundled `ltv_meteo.otf` font for weather symbols; the glyphs are font characters, not emoji.
@@ -74,6 +74,12 @@ Faktiskā has a fixed 13-position station configuration. On page entry the front
Weather-font glyphs and wind values remain manual editorial inputs. One glyph can be applied to all fixed stations and exceptions changed individually. The browser composes these values on the fixed wind-template canvas and exports exactly 3840×1440 pixels. The production master images define the required output geometry; final Monta typography and pixel-level comparison remain pending. Weather-font glyphs and wind values remain manual editorial inputs. One glyph can be applied to all fixed stations and exceptions changed individually. The browser composes these values on the fixed wind-template canvas and exports exactly 3840×1440 pixels. The production master images define the required output geometry; final Monta typography and pixel-level comparison remain pending.
The glyph renderer measures each finished temperature badge, attaches the selected Daira glyph automatically, then applies a fixed optical correction shared by the Faktiskā template. The configuration also permits per-station offsets when later production comparison requires them. Operator input selects the symbol but never controls its coordinates.
### Ūdens temperatūra (planned)
Ūdens temperatūra will be an independent fixed-template renderer. Its temperatures are manual editorial inputs rather than station-query results. A Latvian-named field configuration will map each water area to locked canvas coordinates. The same workflow must produce explicit 1920×1080 and 3840×1440 canvases and filenames; each size must be verified against newsroom requirements.
## What the repository does not provide by itself ## What the repository does not provide by itself
- Authorized provider accounts and credentials. - Authorized provider accounts and credentials.
+2 -1
View File
@@ -97,7 +97,8 @@ At minimum, verify:
4. City Analysis can query synthetic observations. 4. City Analysis can query synthetic observations.
5. Each map resolution renders and downloads. 5. Each map resolution renders and downloads.
6. Faktiskā automatically loads the latest fixed-station temperatures, allows overrides, assigns font symbols, supports exceptions, and downloads a 3840×1440 PNG. 6. Faktiskā automatically loads the latest fixed-station temperatures, allows overrides, assigns font symbols, supports exceptions, and downloads a 3840×1440 PNG.
7. Browser developer tools show no new runtime errors. 7. Faktiskā symbols remain automatically attached to their corresponding temperature badges when several different Daira glyphs are tested.
8. Browser developer tools show no new runtime errors.
Known limitation: direct browser refreshes on newer client-side routes such as `/faktiska` can return 404 because the backend static-route list does not yet provide a general SPA fallback. Navigate from the home page until that backend behavior is fixed. Known limitation: direct browser refreshes on newer client-side routes such as `/faktiska` can return 404 because the backend static-route list does not yet provide a general SPA fallback. Navigate from the home page until that backend behavior is fixed.
+35
View File
@@ -2,6 +2,10 @@
This document records the current understanding of the visible workspaces. It should be updated when workplace users clarify the real operational purpose. This document records the current understanding of the visible workspaces. It should be updated when workplace users clarify the real operational purpose.
## Operator language
Operator-facing workspace names, map names, export names, and production labels should use the established Latvian newsroom terminology. Development discussion and internal code may remain in English where useful, but that must not force English wording into the interface used by Latvian operators.
## Home ## Home
Entry point and navigation overview. It identifies the development dataset and links to each workspace. Entry point and navigation overview. It identifies the development dataset and links to each workspace.
@@ -69,8 +73,39 @@ The weather symbols are not automatically derived from the historical temperatur
Symbol selection is manual, but placement is automatic. Each Faktiskā position owns a fixed marker layout that attaches the selected font glyph to the actual rendered edge of its temperature badge. Operators do not position symbols for each export; per-station offsets can be refined centrally against the production master. Symbol selection is manual, but placement is automatic. Each Faktiskā position owns a fixed marker layout that attaches the selected font glyph to the actual rendered edge of its temperature badge. Operators do not position symbols for each export; per-station offsets can be refined centrally against the production master.
Completed Faktiskā checkpoint:
- fixed 13-position station set with no repeated city selection;
- automatic latest-temperature loading with observation time and stale/missing states;
- manual temperature correction and reset to the fetched value;
- manual wind direction, speed, and gust values;
- manual Daira weather-glyph selection with apply-to-all and station exceptions;
- automatic badge-relative glyph placement with shared optical correction;
- guarded 3840×1440 export using the fixed wind production artwork.
Valmiera is included in the development seed so all 13 fixed positions can be exercised. Monta is the production typeface; Rubik remains temporary until the authorized Monta font files are supplied. The export dimensions are locked, but final pixel-level placement must still be compared against the production masters after Monta is installed. Valmiera is included in the development seed so all 13 fixed positions can be exercised. Monta is the production typeface; Rubik remains temporary until the authorized Monta font files are supplied. The export dimensions are locked, but final pixel-level placement must still be compared against the production masters after Monta is installed.
## Ūdens temperatūra
Purpose: prepare the fixed water-temperature newsroom map as a separate production workflow. It must not be mixed into Faktiskā or City Analysis.
Authoritative references:
- `UDENS_TEMPERATURA.png` defines the finished on-air composition;
- `UDENS_TEMP_NOSAUKUMI.png` defines the operator-facing names of the manually entered water areas/fields.
Required behavior:
1. Open the dedicated **Ūdens temperatūra** workspace.
2. Display the fixed set of Latvian-named water-temperature fields.
3. Enter or correct every water temperature manually.
4. Place values automatically at their locked production positions.
5. Preview and download either a 1920×1080 or 3840×1440 PNG.
The background, title, source, field set, and value positions remain fixed. Only the water-temperature values are routinely edited. Both output sizes are production requirements and must be validated independently; implementation must not assume that browser preview dimensions define export geometry.
Implementation status: documented and approved as the next separate workspace; not yet coded.
## Latvia overview ## Latvia overview
Purpose: aggregate selected fields across Latvia for a selected time range. Purpose: aggregate selected fields across Latvia for a selected time range.
+3
View File
@@ -10,6 +10,8 @@ This directory contains the working documentation for the WeatherTool modernizat
- Scheduled external-provider jobs are disabled in development and staging. - Scheduled external-provider jobs are disabled in development and staging.
- PostgreSQL is private to the project Compose network; only the Scala application publishes a host port. - PostgreSQL is private to the project Compose network; only the Scala application publishes a host port.
- UI modernization is in progress. City Analysis retains custom analytical map outputs, while Faktiskā is a fixed 13-position, latest-temperature newsroom workflow with a locked 3840×1440 export. - UI modernization is in progress. City Analysis retains custom analytical map outputs, while Faktiskā is a fixed 13-position, latest-temperature newsroom workflow with a locked 3840×1440 export.
- Faktiskā symbol placement is automatic after manual glyph selection and is anchored to each rendered temperature badge.
- The next planned production workspace is **Ūdens temperatūra**, with manual Latvian-named fields and required 1920×1080 and 3840×1440 exports.
- This is not yet approved or hardened for workplace production. - This is not yet approved or hardened for workplace production.
## Documents ## Documents
@@ -26,3 +28,4 @@ This directory contains the working documentation for the WeatherTool modernizat
2. Document the behavior that exists separately from behavior that is proposed. 2. Document the behavior that exists separately from behavior that is proposed.
3. Update these documents in the same commit when a change alters deployment, data flow, or a user workflow. 3. Update these documents in the same commit when a change alters deployment, data flow, or a user workflow.
4. Keep synthetic/development instructions clearly distinguished from workplace production procedures. 4. Keep synthetic/development instructions clearly distinguished from workplace production procedures.
5. Preserve established Latvian names in operator-facing workspaces and production files even when development notes are written in English.
+6
View File
@@ -119,6 +119,9 @@ Status: pending
- [x] Establish the first responsive layout, typography, spacing, and component-system foundation. - [x] Establish the first responsive layout, typography, spacing, and component-system foundation.
- [x] Add an explicit PNG download workflow for broadcast map assets. - [x] Add an explicit PNG download workflow for broadcast map assets.
- [x] Implement the fixed Faktiskā station set, latest-temperature loading, manual overrides, and locked 3840×1440 export. - [x] Implement the fixed Faktiskā station set, latest-temperature loading, manual overrides, and locked 3840×1440 export.
- [x] Make Faktiskā weather-symbol selection manual while keeping placement automatic and badge-relative.
- [ ] Add a separate Latvian-named Ūdens temperatūra workspace with fixed manual fields.
- [ ] Validate independent Ūdens temperatūra exports at 1920×1080 and 3840×1440 against the production specification.
- [ ] Install the authorized Monta font and perform pixel-level comparison against the authoritative production masters. - [ ] Install the authorized Monta font and perform pixel-level comparison against the authoritative production masters.
- [ ] Test target resolutions and real workplace display conditions. - [ ] Test target resolutions and real workplace display conditions.
- [ ] Check keyboard navigation, contrast, focus states, and screen-reader labeling. - [ ] Check keyboard navigation, contrast, focus states, and screen-reader labeling.
@@ -157,3 +160,6 @@ Record completed work here by date and commit after the Git workflow is establis
| 2026-08-18 | `82199b8` | Separate City Analysis and Faktiskā workflows with direct symbol assignment | Yes | | 2026-08-18 | `82199b8` | Separate City Analysis and Faktiskā workflows with direct symbol assignment | Yes |
| 2026-08-18 | `0c78d3c` | Optical centering for bundled weather-font glyphs | Pending Rocky verification | | 2026-08-18 | `0c78d3c` | Optical centering for bundled weather-font glyphs | Pending Rocky verification |
| 2026-08-19 | `e726291` | Fixed Faktiskā workflow with latest observations, manual overrides, and production-size export | Yes | | 2026-08-19 | `e726291` | Fixed Faktiskā workflow with latest observations, manual overrides, and production-size export | Yes |
| 2026-08-19 | `5913217` | Add Valmiera to the deterministic Faktiskā development data | Yes |
| 2026-08-19 | `632f377` | Arrange manual Faktiskā wind controls horizontally | Yes |
| 2026-08-19 | `340c370``3aba9b4` | Anchor and visually calibrate manually selected Faktiskā symbols | Yes |