Skip to content

feat(award-announcements): add the award announcements resource (Tango API 5.14.0) - #18

Draft
vdavez wants to merge 1 commit into
mainfrom
feat/news-award-announcements
Draft

vdavez wants to merge 1 commit into
mainfrom
feat/news-award-announcements

Conversation

@vdavez

@vdavez vdavez commented Oct 30, 2026 •

Copy link
Copy Markdown
Contributor

What

Adds the award announcements resource from Tango API 5.14.0.

  • list_award_announcements, iterate_award_announcements and get_award_announcement read /api/news/award_announcements/, list and retrieve by uuid.
  • ListAwardAnnouncementsOptions names all twenty of the API's filters plus ordering over published_date, amount and rank.
  • SHAPE_AWARD_ANNOUNCEMENTS_MINIMAL and SHAPE_AWARD_ANNOUNCEMENTS_COMPREHENSIVE mirror the API's list and detail defaults, including the awardees(*) and organization(*) expands on detail.
  • docs/WEBHOOKS.md documents the award_announcement query type, which emits alerts.award_announcement.match. query_type is already a free string, so this needs no code.

Every row names its source.
official_release rows are the Department of War's daily contracts release.
makegov_generated rows are written by MakeGov from FPDS data with a language model and are not government text, which the module docs, method docs, README and API reference all say.

Notes for review

  • This endpoint pages by page, so ListAwardAnnouncementsOptions leaves out the cursor field the other list options carry; iterate_award_announcements follows page.
  • Rows are Record, like the other shape-driven resources.
  • No version bump: the entry sits under ## [Unreleased].

Testing

  • cargo fmt --all -- --check, cargo clippy --all-targets --all-features -- -D warnings and cargo test --all-features all pass.
  • New unit tests cover every filter's query key, empty options and the empty-uuid guard, and that only the detail shape names text.
  • New wire tests in crates/tango/tests/routes.rs cover list, retrieve and a two-page iterate against a mock server.
  • Not run against the live API: this is blocked until the endpoint is live on the production API, so no live test is added.

🤖 Generated with Claude Code

…o API 5.14.0)

Add list_award_announcements, iterate_award_announcements and get_award_announcement for /api/news/award_announcements/.
ListAwardAnnouncementsOptions names all twenty of the API's filters plus ordering, and the two shape constants mirror the API's list and detail defaults.
Document the award_announcement alert query type, which emits alerts.award_announcement.match.

Every row names its source: makegov_generated rows are written by MakeGov from FPDS data with a language model and are not government text.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@vdavez
vdavez force-pushed the feat/news-award-announcements branch from 607e947 to 12e264f Compare October 30, 2026 20:08
@vdavez vdavez changed the title feat(award-announcements): add the award announcements resource (Tango API 5.15.0) feat(award-announcements): add the award announcements resource (Tango API 5.14.0) Oct 30, 2026
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