author-internal-id-present (TN101)#

Group

Default severity

Metadata

Error

Every [[technote.authors]] entry in technote.toml must declare an internal_id. The internal_id links the author to their entry in the Rubin author database (authordb.yaml), which is how authors are identified consistently across Rubin documents — and a missing ID blocks minting a DOI for the technote.

Example of a failing technote#

technote.toml#
[technote]
id = "SQR-000"

[[technote.authors]]
name = { given = "Yusra", family = "AlSayyad" }
orcid = "https://orcid.org/0000-0002-4913-6541"
[TN101] Author Yusra AlSayyad is missing an internal_id. Did you mean 'alsayyady' (matched by ORCID)? Run 'documenteer technote sync-authors' after adding it.

When the linter can confidently match the author in the author database — by ORCID, or by a single near-exact name match — it suggests the likely ID (see Suggested author IDs). Verify the suggestion before using it; it never changes whether the command passes.

How to fix it#

Add the author’s ID from authordb.yaml to the entry, then synchronize the rest of the author’s metadata from the database:

[[technote.authors]]
name = { given = "Yusra", family = "AlSayyad" }
orcid = "https://orcid.org/0000-0002-4913-6541"
internal_id = "alsayyady"
documenteer technote sync-authors

If the author has no entry in the author database yet, add one first by submitting a pull request to lsst/lsst-texmf — see Maintaining author metadata for the workflow.

See also#

  • TN102 — the entry has an internal_id, but it is not in the author database.

  • Maintaining author metadata — how technote author metadata connects to the author database.