Skip to content

species: Bufflehead (Bucephala albeola) - #1310

Closed
jt55401 wants to merge 1 commit into
mainfrom
wave-20261101d-631-bucephala-albeola
Closed

jt55401 wants to merge 1 commit into
mainfrom
wave-20261101d-631-bucephala-albeola

Conversation

@jt55401

@jt55401 jt55401 commented Nov 1, 2026

Copy link
Copy Markdown
Collaborator

Refs #631

Draft because two factual values still lack a permissively licensed basis (see Gaps). Everything else is validated and reviewed.

Evidence

  • Taxon: GBIF usageKey 2498329 = Bucephala albeola (Linnaeus, 1758), ACCEPTED, SPECIES, Anatidae. iNaturalist 6993 (active species). Wikidata Q576762. No synonym or disagreement found. Checked 2026-11-01.
  • Range: CA, US (Wikipedia: breeds in Alaska and Canada; winters on US coasts and inland waters). Mexico is not in the consulted text and is not listed.
  • Morphology: length 0.355 m and wingspan 0.55 m from Wikipedia (CC BY-SA 4.0); mass 0.397 kg and diet (invertebrate 0.7, fish 0.2, seed 0.1) from EltonTraits BirdFuncDat row 760 (CC0, Diet-Inv 70 / Diet-Vfish 20 / Diet-Seed 10; BodyMass 397.46 g). Wikidata sex-specific masses (481 g male, 367 g female) are consistent.
  • IUCN: least concern (Wikidata P141).
  • Lifespan (traits.lifespan_y = 2.4, derived, confidence Low): unweighted mean of ADW's estimated wild lifespans, 2.5 years (male) and 2.3 years (female). This assumes equal numbers of each sex. ADW rests on 1969–1973 New York banding survivorship with 56–159 birds per sex. The 18.7-year oldest-adult record is not used.
  • Non-commercial source (justified): adw-bufflehead (CC BY-NC-SA 3.0, https://animaldiversity.org/accounts/Bucephala_albeola/). It backs lifespan, social flock size, daytime foraging share, winter night foraging, breeding timing and "seldom walk on land". Permissive alternatives checked: Wikipedia (no lifespan), Wikidata (no life-expectancy claim), AnAge (no Bufflehead entry), USGS BBL longevity table (record maxima only, not a typical value), and a web search of secondary sources (EOL, BTO, reports; no openly licensed typical-lifespan figure found).

Behaviour

Species-local programme fsm-bufflehead-diver-v1 (species/bucephala-albeola/behavior.json). The shared programmes were rejected because the seabird FSM walks to small-vertebrate and carrion food and has no swim feeding, and the songbird and ground-probing trees perch and hop.

  • Actions audited: idle (on water); patrol = wander gait fly between waters; dive_invertebrate, dive_fish, forage_seed = eat_nearest with gait swim; rest at shelter (water); flee gait fly.
  • Food tags invertebrate, small_vertebrate, seed are all reachable and present in habitat.resources.
  • No calendar months are used in the programme. Seasonal presence is handled in seasonal.phases: breeding in CA and US-AK (approximate 03-01 to 05-15) and an absent phase for US 06-01 to 09-30.
  • No night-rest state, because ADW says winter birds forage through the night. Night behaviour is therefore not month-specific, and this is a representation limit.

Activity (--region US)

  • iNaturalist: tier A, place_id 1, usable. Total 10000 from the histogram. The bins sum to exactly 10000, which looks like an API cap. Disclosed; the iNat share is secondary.
  • GBIF: tier A, country US, usable. Total 3,742,545. Month bins sum to 3,727,058 (the difference is records without a month).
  • Curve (Jan to Dec): 1.00, 0.83, 0.77, 0.39, 0.07, 0.03, 0.02, 0.02, 0.01, 0.11, 0.85, 0.93. This fits a migrant absent from the US in summer. No fallback is used.

Gaps

  1. traits.lifespan_y: the only sourced value is NC (ADW), so a permissive typical wild lifespan is missing.
  2. seasonal.phases absent US 06-01 to 09-30: derived from the observation curve, not from a sourced migration date. The breeding start of 03-01 approximates "late winter".

Validation (commit 9d54ed7)

  • uv run tools/validate.py species/bucephala-albeola --write-attribution --report: 0 errors, 1 warning (NonCommercialLicense, ADW, justified above). Provenance 34/34.
  • uv run tools/validate.py --self-check: 629 files scanned, 0 findings.
  • uv run tools/validate.py --report (all species): no row with errors.
  • uv run tools/validate.py --locale all --report: no failures (Bufflehead is not in any locale).
  • uv run --with pytest --with jsonschema pytest tools/tests -q: 347 passed, 8 skipped.
  • Attribution regenerated; ATTRIBUTION.md is unchanged after rerun.

Preview

tools/build_site.py then a local static server. All four declared poses loaded with no console errors and were viewed as screenshots: idle, swim, fly, rest. Limitation: the mesh is crude. idle, rest and swim look similar, and the fly wing reads weakly. Visual judgement by a human reviewer is requested.

Limitations

  • Look, human_tolerance, wariness, defense, the social group size and the shelter are judgement, labelled as such in provenance.
  • vocalizations is empty. No openly licensed call source was checked, and the species is not known to be silent.

🤖 Generated with Claude Code

Adds the species record, a species-local swim/dive and flight behaviour
programme (fsm-bufflehead-diver-v1), regenerated attribution and the US
activity curve from fetch_activity.

Refs #631

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
@jt55401

jt55401 commented Nov 1, 2026

Copy link
Copy Markdown
Collaborator Author

Coordinator review hold: the record marks all US absent June–September while it also includes a US-AK breeding phase in those months. Low observation frequency cannot establish country-wide absence, especially with Alaska in scope. ADW CC BY-NC-SA is permitted as a justified last resort, so licence tier alone is not a missing factual value. The fly pose also needs a visual correction. The branch remains preserved for a follow-up before a new PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant