Skip to content

Assurance record for the fork: register, plans, process model, safety case, hazard scenes on the CAD, README, wiki and CI - #1

Merged
jherrodthomas merged 18 commits into
mainfrom
claude/dreamy-feynman-ljvcno
Oct 23, 2026
Merged

jherrodthomas merged 18 commits into
mainfrom
claude/dreamy-feynman-ljvcno

Conversation

@jherrodthomas

Copy link
Copy Markdown
Owner

What this changes and why

Builds the safety-assurance record for the fork on the pattern of the openamrobot-assurance and LionDriver records, with the concept-phase package as its input (identifiers kept, gaps re-stated). Work products: the work product register WP-M-00 (90 rows, 75 skeletons with the document-control header), the assurance strategy WP-M-01, the safety plan WP-M-02, the confirmation measures plan WP-M-06, the regulatory strategy WP-M-13, the item definition WP-C-01, the operating envelopes WP-C-02, the risk assessment WP-C-03 (34 hazards, the package's ratings), the safety functions and PLr WP-C-04 (SF-01 to SF-32), the interaction and misuse analysis WP-C-06, the powered-test hold point WP-V-07, the safety case WP-K-01 with the Living Safety Case records and their validator and dashboard, the integrated process model WP-P-11 with its generated maps, swimlanes and gate skeletons, the decision register with twenty questions (ten open on the inbox page), the baseline gap assessment (GAP-01 to GAP-36), and the hazard-scene track WP-P-12: fifteen hazards of WP-C-03 drawn on upstream's v1.1 CAD, posed by a joint rig built from the STEP, with a CC0 operator figure, one review dashboard per scene, three clips and a gallery. README, wiki, CONTRIBUTING, SECURITY, issue and pull-request templates and the CI workflow follow. Upstream's hardware/ and the package files at the root are not edited.

Safety-impact statement

  • Safety-relevant class (SR-A, SR-Q, SR-T, or NSR; see assurance/07-supporting/safety-relevant-paths.txt): NSR for the code (no safety-chain file, controller or parameter set exists yet; the record is being created, not changed). The change creates the assurance work products themselves, every one in Draft or Skeleton.
  • Hazards, safety functions, requirements or assumptions affected: none changed in meaning; HZ-M01 to HZ-D01 and SF-01 to SF-31 are carried from the package with their identifiers, SF-32 (emergency stop) is added as a proposal, AOU-01 to AOU-08 are recorded. The hazard scenes are pictures with no evidence credit: no claim rests on them.
  • Impact analysis record (assurance/07-supporting/impact/), if SR-A or SR-Q: not applicable (first creation of the record; the folder and its procedure are set up for later changes).
  • Verification done (tests, analyses, generators re-run): every check in CONTRIBUTING run locally and green: case validator and tests, decision register checks and inbox build, folder indexes, process model and figures with their tests, README figures with their test, link and table checks with their tests, the wiki build, the scene catalogue tests (PyYAML and numpy only) and the hero-strip check. CI runs the same.

Checks

  • python3 assurance/01-management/decisions/check_decisions.py
  • python3 assurance/tools/folder_index.py --check
  • python3 assurance/process/tools/process_model.py --check
  • python3 docs/assets/rebot/make_assets.py --check
  • python3 assurance/tools/check_links.py && python3 assurance/tools/check_tables.py
  • python3 tools/wiki/build_wiki.py
  • Generated files (maps, skeletons, folder READMEs, figures) regenerated, never edited by hand
  • No safety claim added that the evidence does not support; no status moved past Draft without a review record

Generated by Claude Code

claude added 18 commits October 20, 2026 22:57
…y case, README, wiki and CI

Apply the LionDriver and OpenAMRobot assurance process to the reBot-DevArm fork. The concept-phase
engineering package stays at the root as the record's input; its hazard and safety-function identifiers
are kept and its gaps re-stated as GAP-01…GAP-36.

- Baseline gap assessment (36 findings, 19 high) and the first decision batch (DQ-001…DQ-010 open,
  DQ-011…DQ-020 queued) with the inbox page published for the lead.
- WP-M-00 register with 89 work products; drafts for the strategy, safety plan, confirmation measures,
  regulatory strategy, item definition, operating envelopes, risk assessment, safety functions,
  interaction and misuse, the powered-test hold point and the safety case; clause-mapped skeletons for
  the rest.
- Integrated process model (WP-P-11) with maps, gate skeletons and swimlane figures; Living Safety Case
  records (21 claims, 20 evidence items, 36 defeaters) with validator and dashboard; trace items.
- README with generated figures, docs, security and contributing pages, CLAUDE.md, CI workflows,
  issue and pull request templates; the wiki kept in wiki/ and mirrored on merge.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016qAzZSZi9WSXNxWmpz3UVG
…ene catalogue, Blender pipeline

- assurance/sim/: method page and blender/ pipeline: step_to_obj.py (OpenCascade tessellation of the v1.1
  STEP), arm_model.py (link groups, six joint axes read off the actuator housings, gripper rail, forward
  kinematics, link gaps), scenes.yaml (twelve hazard scenes with the package's ratings, stop functions at
  BL-001, poses, kinematic motions at assumed rates, operator figure), export_scene.py (scene.json with gap
  and distance series, events, key frames), render_scene.py (bpy, Cycles), compose.py (review dashboard),
  gallery.py (generated gallery), test_scenes.py (CI, no Blender); the two CC0 Quaternius figures
- WP-M-00 row WP-P-12 (G1, Draft); process activity CON-13 producing it; generated folder index, maps,
  swimlanes, gate skeleton and README figures re-run
- WP-C-03 §9 points at the scenes; assurance README, wiki organisation page, CONTRIBUTING and CI updated
- Pictures only: every scene is synthetic and earns no evidence credit; renders follow in the gallery

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016qAzZSZi9WSXNxWmpz3UVG
…trip, stop-reaction tile

- export_scene.py records an ISO 13854 crossing only when the gap passes the limit during the motion,
  and the gripper scene checks the finger gap alone (gap_limits)
- compose.py: the three "not modelled" plots are named once each, the stop-reaction tile reads
  "none at BL-001" unless a stop function exists, the film strip shows whole frames

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016qAzZSZi9WSXNxWmpz3UVG
…e height for the film strip

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016qAzZSZi9WSXNxWmpz3UVG
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016qAzZSZi9WSXNxWmpz3UVG
…s struck, front camera from the gripper's end

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016qAzZSZi9WSXNxWmpz3UVG
- dashboards/: one JPEG per scene of scenes.yaml with its outcome JSON and the generated gallery README;
  every scene now carries status rendered
- compose.py shows the frame the exporter flags (the contact, else the closest approach)
- WP-P-12 page opens on the HZ-M01 elbow-pinch dashboard

Pictures only: synthetic, no evidence credit.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016qAzZSZi9WSXNxWmpz3UVG
…fingers show in the gaps (WP-P-12 OI-2)

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016qAzZSZi9WSXNxWmpz3UVG
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016qAzZSZi9WSXNxWmpz3UVG
…C07 wrist flip at a singularity, HZ-M08 cable trip), peak finger-tip speed in outcomes

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016qAzZSZi9WSXNxWmpz3UVG
…hboards)

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016qAzZSZi9WSXNxWmpz3UVG
… a gap measure, band names the figure only when there is one

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016qAzZSZi9WSXNxWmpz3UVG
…rds (generated, CI-checked), a wiki page, clip tooling

- assurance/sim/figures/fig_sim_hero.py cuts the 3D view of three gallery dashboards into one strip
- README section and wiki page Hazard scenes (sidebar, home table, organisation page)
- render_scene.py --video and clip.py (ffmpeg) for clips of a scene; the exporter writes the person's hand
  positions per step for them; gallery.py lists committed clips

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016qAzZSZi9WSXNxWmpz3UVG
…m the gallery and WP-P-12

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016qAzZSZi9WSXNxWmpz3UVG
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016qAzZSZi9WSXNxWmpz3UVG
…figure

- Standards-tour.md and twenty stop pages in eight chapters, from ISO 12100 to the AI Act, each with the same
  shape: one sentence, the idea in an animated figure, what the standard is, why it matters for a desktop arm,
  how the record uses it, what is not claimed, the words to know and the clauses, all marked to be checked
- tools/wiki/tour_figures.py writes 23 animated SVGs to docs/assets/rebot/tour/: CSS keyframes drawn in their
  finished state, so they read with the animation off or reduced motion requested; the risk-graph ratings come
  from WP-C-03 §5 and the ISO 13854 gaps from the hazard scenes' catalogue, nothing about the arm is typed
- tools/wiki/test_tour_figures.py (run by the wiki workflow): figures current and well formed, every stop has
  its page and figures, previous and next links follow the tour order, clauses marked to be checked
- Sidebar, Home, Standards at a glance and How we use each standard link to the tour (the latter's hazard count
  no longer typed); the wiki's figure rule admits generated figures only; CLAUDE.md, the assurance README and
  CONTRIBUTING list the new generator and its check

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016qAzZSZi9WSXNxWmpz3UVG
@jherrodthomas
jherrodthomas merged commit fe4edec into main Oct 23, 2026
3 checks passed
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.

2 participants