Skip to content

feat(tdm): ACM / SIAM / AMS as tdm-ieee siblings — blocked on #458, or they ship as three more sources that do nothing #463

Description

@sotashimozono

ADR-0039 names IEEE, ACM, SIAM and AMS together: all four answer a scripted client with 202 and
an empty body, and per-publisher TDM credentials are the supported route for all four. #430 did
IEEE. These three are the siblings.

The template is settled — tdm_ieee.rs is four touch points plus docs, and ADR-0042 is the
precedent for shipping against an inferred contract when the programme gates the real one.

Blocked on #458, deliberately

#458 shows that a Tier-3 source is consulted only when Crossref failed, and is metadata-only.
Crossref resolves ACM, SIAM and AMS DOIs as readily as it resolves IEEE's. So adding these three
today ships three more sources that:

  • are never consulted for the DOIs they exist to serve, and
  • could not return a PDF if they were.

That is the #442 defect class multiplied by three, entered into deliberately this time. Doing it
before #458 lands would be the same mistake #442 warned about when it said "adding IEEE before
this lands would ship a fourth unreachable source" — and that warning was about wiring, which
turned out to be the smaller of the two problems.

Also blocked on information, as IEEE was

Per publisher, the same four unknowns: endpoint, auth shape, response shape, rate limits and
terms. Public starting points:

ADR-0042's posture applies unchanged: implement what is public, mark it (unverified), fail
loudly on shape mismatch, and provide a DOIGET_<PUBLISHER>_BASE from the start.

Prefixes, for when this is unblocked

Verified against the Crossref registrant registry:

publisher prefix
ACM 10.1145
AMS 10.1090
SIAM 10.1137

Order

One PR per publisher, after #458. Not a tdm-all umbrella (SCOPE.md non-goal 12).

Refs #430, #442, #458, ADR-0039, ADR-0041, ADR-0042.

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions