Skip to content

Publish A1 bed positions and a standing arm-clear declaration - #14

Merged
cyrilcaoyang merged 1 commit into
mainfrom
feat/a1-arm-clear-declaration
Nov 5, 2026
Merged

cyrilcaoyang merged 1 commit into
mainfrom
feat/a1-arm-clear-declaration

Conversation

@cyrilcaoyang

Copy link
Copy Markdown
Collaborator

Summary

  • New optional config bed_positions.arm_clear (declared_by, declared_on, statement): the operator's standing statement that the robot arm stays clear of the A1's bed travel.
  • GET /printers/{id}/profile now publishes bed_positions (inspect_y_mm, pickup_y_mm, feed_mm_min, arm_clear); null on printers without position_bed.
  • Agents may base bed_path_clear on the declaration (ac-organic-lab #105 amends §1.3), naming it in reason. Condition: the arm reaches over the plate only while its agent holds the A1's claim, so a bed move cannot start mid-pickup.
  • Docs: agent guide, API reference, README (config example), printers.example.yaml, AGENT_RULES.md rule 1.

The request itself is unchanged: bed_path_clear: true is still required on every move.

Test plan

  • uv run pytest -q — 348 passed (2 new)
  • uv run ruff check .

🤖 Generated with Claude Code

Yang declared on 2026-11-05 that the robot arm is always clear of the A1's
bed travel. `bed_positions.arm_clear` ({declared_by, declared_on,
statement}) records that in the gateway config, and GET /printers/{id}/profile
now publishes `bed_positions` (inspect/pickup Y, feed, declaration) so an
agent can base position_bed's `bed_path_clear` on it instead of asking
before every move (ac-organic-lab §1.3, amended in #105). The declaration
holds while the arm reaches over the plate only under the A1's claim.
Removing it from the config withdraws it.

Agent guide, API reference, README, example config and AGENT_RULES.md
rule 1 updated.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@cyrilcaoyang
cyrilcaoyang merged commit 19e9a7c into main Nov 5, 2026
1 check 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.

1 participant