F4-dev-01 — Two headline figures and one assertion from a Statistics Canada release
Scientific question
Using only the provided text of Statistics Canada's The Daily release "Labour Force Survey, September 2026", (a) extract two headline national figures for September 2026 — the unemployment rate (seasonally adjusted, in percent) and the monthly change in employment (seasonally adjusted, in persons) — each with a locator naming the section of the release where it is stated; and (b) decide whether the following assertion is supported by the release: "In September 2026, the unemployment rate among core-aged women (aged 25 to 54) rose 0.3 percentage points to 5.3%, and the unemployment rate among core-aged men also rose, by 0.2 percentage points, to 5.8%." The estimands are the figures as printed in the release (no re-computation) and a verdict of supported (every element of the assertion is stated in the release), not_supported (at least one element is contradicted by the release) or not_assessable (the release does not report the quantity needed to judge it).
Inputs
data/sources/statcan-daily-lfs-2026-09.txt— plain-text extract of Statistics Canada, The Daily, "Labour Force Survey, September 2026", released 2026-10-09 (Catalogue no. 11-001-X), retrieved 2026-10-30T03:25:42Z from https://www150.statcan.gc.ca/n1/daily-quotidien/261009/dq261009a-eng.htm; Statistics Canada Open Licence. The extract contains the provenance header, the release title and date, and the full narrative text from "Highlights" to "Next release" (section headings preserved as## …lines; charts and data tables are not reproduced). Estimates are seasonally adjusted unless the text says otherwise; employment changes are in persons.data/README.md— provenance, retrieval times, licence and SHA-256 of the extract.
Information-availability rules
- The extract is the only admissible evidence. Do not use remembered values of the Labour Force Survey or any other release.
- A locator must name the section heading of the release (the
## …line) under which the figure or sentence appears, e.g.statcan-daily-lfs-2026-09 | section "Highlights". - Report printed values exactly (sign and decimals as printed; convert "68,000" to the integer 68000 with the sign given in the text).
Required outputs
out/results.jsonwith the keys:
| key | type | unit | meaning |
|---|---|---|---|
unemployment_rate_sep2026 |
number | percent | national unemployment rate for September 2026 as printed |
employment_change_sep2026_persons |
integer | persons | monthly change in national employment in September 2026 (negative if employment declined) |
locators |
object | — | {"unemployment_rate_sep2026": "<source id |
assertion_verdict |
string | — | "supported", "not_supported" or "not_assessable" for the assertion quoted above |
assertion_locator |
string | — | source id and section heading of the sentence(s) that decide the verdict |
assertion_reason |
string | — | one sentence explaining the verdict, quoting the decisive element |
task_id |
string | — | "F4-dev-01" |
feasibility |
string | — | "complete", "partial" or "infeasible" — refers to the task as a whole |
feasibility_reason |
string or null | — | explanation if not complete |
data_issues |
array of {"issue","handling"} | — | problems detected in the inputs (rendering defects, internal inconsistencies of a source, etc.) and how they were handled; empty list if none |
n_input_rows |
object | lines / items | {file name: number of lines} for every file under data/ that you read (text files: number of newline-terminated lines as reported by wc -l; JSON files: number of top-level items) |
n_analysed |
integer or null | — | number of reported items (values, assertions, effects or references) you actually assessed |
random_seed |
integer or null | — | null (no randomness is involved) |
out/report.mdwith the sections: Question; Data and exclusions; Method; Results; Uncertainty; Limitations and open issues.out/analysis.py— running~/wp29/venv/bin/python out/analysis.pyfrom the workspace root must regenerateout/results.jsonfromdata/only, deterministically (text parsing is acceptable; hard-coding the numbers in the script is acceptable only if the script also prints the matched source lines).out/claims.json— a list of the central claims of the report: [{"id": "C1", "text": "...", "results_keys": ["..."], "status": "supported"|"unsupported"|"not_evaluated", "caveat": "..."}].
Constraints
- No network access. Python:
~/wp29/venv/bin/python(numpy, pandas, scipy, statsmodels available; the standard library is sufficient for this task). Do not modifydata/. - The source extracts under
data/sources/are the only admissible evidence. Do not rely on memory of the papers or on other versions of them; if a quantity is not in the extract, it is not available. - Report numbers exactly as printed in the source (same sign, same number of decimals); do not round or rescale printed values unless the key definition asks for a transformation.
- This task is designed to be completed in well under 20 minutes of work.