Skip to content

docs: tag numbering page and allocation register (TRA-1305, TRA-1308) - #224

Merged
mikestankavich merged 5 commits into
mainfrom
docs/tra-1305-docs-publish-the-trakrf-tag-numbering-en
Nov 4, 2026
Merged

mikestankavich merged 5 commits into
mainfrom
docs/tra-1305-docs-publish-the-trakrf-tag-numbering-en

Conversation

@mikestankavich

@mikestankavich mikestankavich commented Nov 4, 2026 •

Copy link
Copy Markdown
Contributor

Two pages under Integrations, plus the tooling behind them.

Tag numbering and encoding (/docs/integrations/tag-numbering): the GID-96 EPC layout (355E4ACFD + 3-character namespace code + 12 characters), the standard pool (000 + 0000 + 8-digit sequence), customer namespaces (001–FFF), bureau encoding instructions and the encode log, label rules, first-article and post-run checks, app display, and status/caveats.

Tag allocation register (/docs/integrations/tag-allocations): every standard-pool block issued and every namespace code assigned, rendered from data/tag-allocations/{blocks,namespaces}.csv. Block IDs are PO-based (PO7299-L1…L4) and the repo holds no customer names. The mapping to customers lives in a Linear document.

Tooling, all in pnpm lint:

  • scripts/check-tag-numbering.mjs decodes every example EPC on the numbering page.
  • scripts/check-tag-allocations.mjs rejects gaps, overlaps, wrong block sizes, out-of-range last_used, closed without last_used, bad namespace codes, 0A5 going active, and a register page that doesn't match the data.
  • scripts/allocate-tags.mjs runs allocate / export / close / page. Allocations go through it and a PR, never a hand edit.

Judgment calls:

  • Nav: under Integrations.
  • App display: the org prefix list isn't built, so the page describes today's behaviour and marks trimming as planned (TRA-1306).
  • Register page: rendered by the script and committed, not generated during the build. A build-only page wouldn't exist under pnpm dev and would break the sidebar. Lint fails on drift.

Verified locally: allocate 1000 @ 5% on a copy appends 10012601–10013650; a hand-edited overlap fails the check. export of the four seed blocks gives 12,600 unique rows. Every EPC decodes as gid:98872573.0.<serial>, the last 8 characters equal the sequence, and the buffers are 125/125/125/225. Not verified: a row-for-row diff against the file the bureau actually received, which isn't in this repo.

pnpm lint, typecheck and build pass.

Refs TRA-1305, TRA-1308 — both stay open on merge: the link still goes to the bureau, and the customer mapping still needs creating.

🤖 Generated with Claude Code

Bureaus, partners and RFQs need one public reference for how TrakRF
numbers the tags it supplies: the 96-bit GID-96 EPC layout, bureau
encoding instructions, label rules and first-article checks. Lives
under Integrations at /docs/integrations/tag-numbering.

The app section describes today's behaviour (full EPC shown); prefix
trimming to the printed 8 digits is marked as planned.

Refs: TRA-1305

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Nov 4, 2026

Copy link
Copy Markdown

🚀 Preview Deployment Update

✅ This PR has been successfully merged into the preview branch.

The preview environment will update shortly at: https://docs.preview.trakrf.id

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Nov 4, 2026 •

Copy link
Copy Markdown

Deploying docs with  Cloudflare Pages  Cloudflare Pages

Latest commit: afa13f8
Status: ✅  Deploy successful!
Preview URL: https://1095c213.docs-4n7.pages.dev
Branch Preview URL: https://docs-tra-1305-docs-publish-t.docs-4n7.pages.dev

View logs

Mike Stankavich and others added 2 commits November 4, 2026 06:31
Bureaus encode from that page, so an example URN or field must be
decoded by a script, not checked by eye. Every 24-hex value must be
GID-96 under manager 98872573, every EPC → URN pair must decode to the
stated URN, and standard-pool EPCs must carry 0000 and an 8-digit
decimal sequence.

Refs: TRA-1305

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…pool

Review of the preview page: characters 10-12 are a namespace code
(000 = standard pool, 001-FFF = customer namespaces), so the layout,
issuance and bureau sections are scoped to the standard pool. The
no-increment rule applies only to the decimal standard pool; customer
namespaces may use start + hex increment. Adds the encode log, splits
acceptance into first-article and post-run checks, and replaces
customer-specified encodings with the namespace policy.

Refs: TRA-1305

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Nov 4, 2026

Copy link
Copy Markdown

🚀 Preview Deployment Update

✅ This PR has been successfully merged into the preview branch.

The preview environment will update shortly at: https://docs.preview.trakrf.id

Decoder note reads the tail characters as hex; first-article barcode
check and the label table's first three rows are scoped to the
standard pool; post-run check says the allocation register makes
cross-run duplicates impossible for standard-pool blocks.

Refs: TRA-1305

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Nov 4, 2026

Copy link
Copy Markdown

🚀 Preview Deployment Update

✅ This PR has been successfully merged into the preview branch.

The preview environment will update shortly at: https://docs.preview.trakrf.id

Tag-number uniqueness rests on one register every block is drawn from;
it lived only in a chat session. It now lives in data/tag-allocations/
as one row per standard-pool block and one per namespace code, with no
customer names. scripts/allocate-tags.mjs allocates, exports the
per-tag bureau CSV, and closes blocks; check-tag-allocations.mjs runs in
pnpm lint and rejects gaps, overlaps, bad sizes and a register page that
does not match the data.

The page is rendered by the script and committed rather than generated
during the build, so it exists under pnpm dev and its Markdown mirror
carries real tables.

Refs: TRA-1308

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@mikestankavich mikestankavich changed the title docs: publish the tag numbering and encoding page (TRA-1305) docs: tag numbering page and allocation register (TRA-1305, TRA-1308) Nov 4, 2026
@github-actions

github-actions Bot commented Nov 4, 2026

Copy link
Copy Markdown

🚀 Preview Deployment Update

✅ This PR has been successfully merged into the preview branch.

The preview environment will update shortly at: https://docs.preview.trakrf.id

github-actions Bot added a commit that referenced this pull request Nov 4, 2026
@mikestankavich
mikestankavich merged commit 16ff31a into main Nov 4, 2026
3 checks passed
@mikestankavich
mikestankavich deleted the docs/tra-1305-docs-publish-the-trakrf-tag-numbering-en branch November 4, 2026 13:37
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