Skip to content

feat(steel-detailer-us): bolt-length-from-grip skill (RCSC 2020 §2.7 + Table C-2.2)#273

Merged
pawellisowski merged 3 commits into
mainfrom
feat/steel-detailer-bolt-length
Jun 28, 2026
Merged

feat(steel-detailer-us): bolt-length-from-grip skill (RCSC 2020 §2.7 + Table C-2.2)#273
pawellisowski merged 3 commits into
mainfrom
feat/steel-detailer-bolt-length

Conversation

@pawellisowski

Copy link
Copy Markdown
Contributor

What

Adds the one clear free-source gap in the public steel-detailer-us AISC connection-detailing agent: how to size a high-strength bolt's length from the grip. Every other §J bolt rule (spacing / edge / holes / pretension / washers / bearing-tearout / block-shear) was already skilled; bolt length was not.

New skill skills/bolt-length-and-grip.md, authored to the agent's existing discipline (rule → condition → Source with a verbatim quote; refuse-when-unsourced; paid sources cited by reference only, never reproduced):

  • Grip = total thickness of the connected plies the bolt passes through, excluding washers/DTIsRCSC 2020 Glossary.
  • Normative length requirement — length shall achieve sufficient thread engagement (bolt end at least flush with the outer face of the nut) — RCSC 2020 §2.7 + Glossary.
  • Selection method — length = grip + add-to-grip value, rounded to nearest ¼ in. (½ in. over 6 in.); +5/32 in. per flat washer, +5/16 in. per beveled washer — RCSC 2020 Commentary §2.7, Table C-2.2.
  • The free per-diameter table is RCSC Table C-2.2; the "more extensive" reference is Carter (1996), "Specifying Bolt Length for High-Strength Bolts," AISC Engineering Journal 2Q (free, RCSC's own cited source). The AISC Manual is named generically (paid; reference-only; no table number asserted).

Also: +4 matching lookup rules in rules/aisc-360-22.json (66 → 70), the skill listed in manifest.yaml, agent 0.2.0 → 0.3.0.

Verification

  • Every RCSC quote was verified against the genuine RCSC 2020 PDF (boltcouncil.org), not from memory. Fraction values (5/32, 5/16, ¼, ½) were read from the rendered PDF page because the PDF's fraction-font glyphs garble in plain-text extraction.
  • aware agent validate passes; the agent installs and the skill indexes + renders through the CLI.
  • JSON valid, 70 rules, schema-consistent with the existing entries.

Dual review (applied)

  • Codex independently fact-checked all citations against the real RCSC PDF — §2.7, Grip, Sufficient Thread Engagement, the 5/32 adder, and the no-paid-table-reproduction rule all verified. It correctly flagged that equating RCSC's "Carter (1996)" reference with a specific AISC Manual "Table 7-18" was not provable from a free source (a check showed the Manual's bolt-length table was historically Table 7-2, since removed). Fixed: dropped the table number; the pointer now cites only RCSC Table C-2.2 + Carter 1996 (both free).
  • pr-review-toolkit — conventions/wiring/JSON-schema/scope all PASS; one nit (units: "—""dimensionless" for DB consistency) applied.

🤖 Generated with Claude Code

…+ Table C-2.2)

Fills the one clear free-source gap in the public US AISC connection-detailing
agent: how to size a high-strength bolt's LENGTH from the grip. Every other §J
bolt rule (spacing/edge/holes/pretension/washers/bearing-tearout/block-shear)
was already skilled; bolt length was not.

New skill skills/bolt-length-and-grip.md, strictly free-source and cited the
same way as the rest of the agent (rule -> condition -> source + verbatim quote,
refuse-when-unsourced):
- Grip = total thickness of the connected plies, excl. washers/DTIs
  (RCSC 2020 Glossary).
- Normative length requirement: length shall achieve sufficient thread
  engagement (RCSC 2020 §2.7 + Glossary "Sufficient Thread Engagement").
- Selection method: length = grip + add-to-grip value, rounded to 1/4 in.
  (1/2 in. over 6 in.); +5/32 in. per flat washer, +5/16 in. per beveled
  washer (RCSC 2020 Commentary §2.7, Table C-2.2).
- The more extensive add-to-grip TABLE = AISC Manual Table 7-18 (Carter 1996)
  — paid; cited by reference only, never reproduced (matches the agent's
  scope-and-citation copyright posture).

All quotes verified against the genuine RCSC 2020 PDF (boltcouncil.org). Also
adds 4 matching lookup rules to rules/aisc-360-22.json (66 -> 70) and lists the
skill in manifest.yaml; agent version 0.2.0 -> 0.3.0. `aware agent validate`
passes; skill installs, indexes, and renders.
…+ Carter 1996, drop unverifiable Manual table no.

Addresses the dual review (Codex). The first cut equated RCSC's "more extensive
table (Carter, 1996)" with "AISC Manual Table 7-18" — but that equivalence is not
provable from any free source, and a check found the Manual's bolt-length table
was historically Table 7-2 (older editions, since removed), not 7-18. For an
agent whose whole value is verified-from-free-source citations, asserting an
unverifiable paid-table number is a scope violation.

Reworded (skill + the bolt.length.select JSON citation) to cite only what is
free + verifiable: the per-diameter values live in RCSC 2020 Table C-2.2 (free,
in the Commentary), and RCSC's own cited "more extensive" reference is
Carter, C.J., "Specifying Bolt Length for High-Strength Bolts," AISC Engineering
Journal, Vol. 33 No. 2 (2nd Qtr. 1996) — free. The AISC Manual is named only
generically (paid; reference-only; no specific table number).

Also: bolt.length.engagement units "—" -> "dimensionless" to match the DB's
existing convention (pr-review-toolkit nit). The beveled-washer +5/16 in. value
was confirmed from the RENDERED RCSC PDF page (the PDF's fraction-font glyphs
garble in plain text extraction but render correctly).
@pawellisowski pawellisowski merged commit c427aba into main Jun 28, 2026
1 check passed
@pawellisowski pawellisowski deleted the feat/steel-detailer-bolt-length branch June 28, 2026 18:55
pawellisowski added a commit that referenced this pull request Jun 28, 2026
…ships #273)

PR #273 added skills/bolt-length-and-grip.md to steel-detailer-us and bumped its
manifest to 0.3.0, but did not regenerate registry-catalog.json. The CLI serves
the catalog + agent tarballs from main (raw.githubusercontent .../main/
registry-catalog.json and archive/refs/heads/main.tar.gz), so the stale catalog
omitted the new skill and still showed manifest-version 0.2.0 — `aware agent
reindex --check` flagged it. Regenerated via `aware agent reindex`: adds
bolt-length-and-grip to the steel-detailer-us skill list, updates manifest-version
0.2.0->0.3.0, and bumps updated-at to bust client tarball caches.

This is the ship step for a registry-distributed knowledge agent — no @aware-aeco/cli
release: the CLI binary is unchanged and agents are served from main, not from a
release tag.
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