Skip to content

docs(entities): document the pipe-OR syntax socioeconomic accepts - #59

Merged
vdavez merged 2 commits into
mainfrom
docs/entity-socioeconomic-or-syntax
Aug 10, 2026
Merged

docs(entities): document the pipe-OR syntax socioeconomic accepts#59
vdavez merged 2 commits into
mainfrom
docs/entity-socioeconomic-or-syntax

Conversation

@makegov-mark

@makegov-mark makegov-mark Bot commented Aug 10, 2026

Copy link
Copy Markdown
Contributor

What

Documents the pipe-OR syntax the socioeconomic filter on list_entities has always supported, and pins the behavior with tests.

  • list_entities docstring and docs/API_REFERENCE.md now show the multi-value form: socioeconomic="8A|WOSB" matches entities holding any of the listed designations.
  • New TestEntityFilters asserts the pipe-separated value is forwarded verbatim in the query string, and that the param is omitted when unset.
  • Changelog bullet under ## [Unreleased]### Documentation.

Why

A user analyzing federal awards to Black-owned businesses couldn't tell from the SDK docs that OR-combining socioeconomic codes was supported. The server has always implemented it; the SDK just forwards the string, but nothing said so and no test protected the passthrough.

Testing

  • uv run pytest tests/ -m "not integration" — 346 passed, 30 skipped.
  • uv run ruff check / ruff format --check on changed files — clean.
  • uv run mypy tango/ — no issues.
  • scripts/check_filter_shape_conformance.py and scripts/check_shape_coverage.py — exit 0.

Risks

None — docs and tests only; no behavior change.

🤖 Generated with Claude Code

vdavez and others added 2 commits August 10, 2026 09:35
The server has always ORed pipe-separated values (`socioeconomic="8A|WOSB"`), but neither the docstring nor the API reference said so, and no test pinned the verbatim passthrough.
A user analyzing awards to Black-owned businesses hit this gap while trying to filter entities by socioeconomic designation.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… examples

Live testing showed the example codes were the wrong vocabulary: the filter matches SAM business-type codes, and set-aside-style values like "8A" or "WOSB" silently match zero rows.
Examples now use real codes ("OY" Black American Owned, "A2" Woman Owned), the docs name the vocabulary and point at GET /api/business_types/, and the passthrough tests pin the corrected value.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@vdavez
vdavez merged commit 15f7cfa into main Aug 10, 2026
11 checks passed
@makegov-mark makegov-mark Bot mentioned this pull request Aug 10, 2026
@vdavez
vdavez deleted the docs/entity-socioeconomic-or-syntax branch August 10, 2026 16:07
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