robot-council/core
Core foundation for Robot Council, providing shared contracts, container bindings, and orchestration primitives for building multi-agent robot workflows in Laravel and PHP. Lightweight, extensible, and designed to integrate with the wider Robot Council ecosystem.
The package is the core of the Robot Council task/seat allocation system: developers are placed in seats, seats have assignment hours, and work is claimed via task_claim. v0.8.3 tightens the claim endpoint so it enforces the seat's own state and schedule.
Minimal steps:
composer require robot-council/core and run the package migrations (php artisan migrate). Publish config with php artisan vendor:publish --tag=robot-council-config if you need to override assignment-hour defaults.task_claim route and its form request/controller are the seam you will touch most. Then look at the rule classes it references (ParkedSeat, WithinAssignmentHours, or similarly named) since those produce the 422s.task_claim for a seat that is active and inside its hours. Confirm a 2xx and inspect the created claim. Then deliberately claim from a parked seat to see the 422 shape before you build UI around it.seat parked or outside assignment hours. Catch Illuminate\Validation\ValidationException (or inspect the JSON errors bag) at the controller boundary and translate the rule keys into user-facing messages rather than letting them bubble to a generic error page.now() being inside the seat's assignment window in the seat's timezone, not the server's. This avoids a queue full of predictable 422s.assertStatus(422) and assertJsonValidationErrors([...]) on the rule key. This pins the contract you depend on.response.ok, you will lose the distinction.How can I help you explore Laravel packages today?