The NIST additive-manufacturing test artifact (Moylan et al. 2014) from its drawing and paper.
| File | Kind | Size |
|---|---|---|
| nist-am-test-artifact.step | STEP | 0.3 MB |
| nist-am-test-artifact.stl | STL | 0.8 MB |
contract.yaml (design contract)
Reconstruct the NIST Additive Manufacturing Test Artifact (Moylan et al. 2014, Fig. 8) as editable, parameterized KCL from the attached drawing, paper excerpts, renders, section drawings and dimension sheet. Frame: origin at the centre of the top surface, z = 0 on the top surface with +z toward the pin tips (the base extends to z = -10, features to z = +7), the Ø10 centre hole on the z axis, +x toward the Ø4 hole at x = +60; the four rows of Ø4 pins (20, 30, 40, 50) and the four Ø4 holes (60) lie on the +-x and +-y axes; the diamond base is a 100 mm square rotated 45 deg (corners on the axes at 70.71). Model every feature at its stated size and position: centre hole and two concentric central cylinders, 16 pins and 4 holes, both L-shaped staircases with 1 mm steps and 10 mm treads, the 1-in-25 ramp with 2.5 mm landings, the lateral cavities and bosses on one side, the five fine pins and five fine holes (Ø2 to Ø0.25, 2 mm tall/deep) and the fine rectangular bosses and slots. Small features are scored individually: a correct base cannot compensate for a missing pin. One solid; export STEP and STL. The reference CAD is evaluator-only; the deliverable must be construction, never an import.
| Tier | Gate | Result | Evidence |
|---|---|---|---|
| A | contract_provenance Contract validates; stated/measured sources resolve to bundle files; no blocking open questions; interfaces pinned by checks | PASS | designs/nist-am-test-artifact/contract.yaml: 64 parameters {'stated': 49, 'derived': 3, 'measured': 9, 'inferred': 3}; sources unresolved {}; unanchored 0 |
| A | envelope Bounding box of the exported STEP equals the contract envelope | PASS | results/zoo/nist-am-test-artifact/inspect.json bbox.max_error = 0.0 (tol 0.03) |
| A | mass_properties Volume, surface area and centre of mass within contract tolerance (independent STEP measurement) | PASS | results/zoo/nist-am-test-artifact/inspect.json volume = 100987.0687 vs 100987.061651834 |
| A | features Every required feature, section, named face, cylinder axis, plane, dimension, body, clearance, passage, wall, gear and symmetry check verified on the STEP | PASS | results/zoo/nist-am-test-artifact/inspect.json features: 79/79 ok; failed required []; failed optional []; unverified [] |
| A | reference_fidelity Deviation from the reference model within the contract band (when a reference exists) | n/a | results/zoo/nist-am-test-artifact/inspect.json deviation.p95 = None hausdorff = None silhouette_iou_min = None |
| B | export_agreement Engine, STEP (OpenCascade) and STL (trimesh) volumes agree | PASS | results/zoo/nist-am-test-artifact/inspect.json agreement engine=100985.85825449775 step=100987.0686858851 stl=100985.85663524862 (rel tol 0.002; independent=True) |
| B | edit_robustness Declared parameter edits rebuild with the expected effect, undriven interfaces stay put, sweeps regenerate, infeasible values are refused; baseline re-export hash unchanged | PASS | results/zoo/nist-am-test-artifact/edit.json 3/3 edit tests ok; restore.ok = True |
| B | source_hygiene Dialect, units, formatted, lint-clean, named parameters match the contract, asserts present | PASS | results/zoo/nist-am-test-artifact/verify.json hygiene: dialect=True unit=True legacy=[] params_ok=True asserts=87 |
| C | export_integrity Deterministic STEP (two exports identical), valid B-rep, expected solid count, watertight STL (solid shells == solids) | PASS | results/zoo/nist-am-test-artifact/export.json step.deterministic = True sha256 526ab382a468; stl=present; glb=present |
| C | traceability Every stage JSON present with tool versions, git head, worker thread ids, engine-call ledger; no --allow-errors | PASS | stages present: {'plan': True, 'model': True, 'verify': True, 'export': True, 'inspect': True, 'edit': True} |
| C | evidence_separation Contract agreement, reference agreement and physical validation are reported as separate verdicts | PASS | results/zoo/nist-am-test-artifact/inspect.json carries contract checks (volume/bbox/features) and a separate deviation block (reference = None) |
| C | independence The source is editable construction: no import of reference geometry, construction ops present | PASS | results/zoo/nist-am-test-artifact/verify.json hygiene.forbidden_imports = [] construction_ops = {'sketch_blocks': 50, 'feature_ops': 102} lines = 1414 |