Vincenzo Ceccarelli GrimaldiCluster · Physical AI
Menu

Physical AI & Robotics · first target

Palletizer CORE

The target is not a demonstration. The target is: a customer can deploy faster and operate cheaper than with the incumbent alternative. Until a pilot with a kill date says so, every number below is a dash.

github.com/iceccarelli/palletizerpypi · palletizer-full-stack 0.2.0palletizer-app.vercel.app (stated, not verified here)

Last commit (snapshot). Apache-2.0. Python, TypeScript, C++. Detail: /registry/palletizer.

What exists

What does not exist

Evidence of work done

Releases, commits and decisions with the source of every date; then the test suite mapped onto the stack. This is the work that exists. It is deliberately drawn next to the KPIs that do not.

Evidence timeline2026-03-08 release: palletizer 0.1.0 — control stack, 40+ tests. 2026-04-10 release: robot-lidar-fusion 0.1.0 on PyPI. 2026-04-11 release: robot-lidar-fusion 0.2.1 on PyPI. 2026-06-20 release: palletizer-full-stack 0.2.0 on PyPI. 2026-06-20 release: robot-lidar-fusion 0.4.0 on PyPI — SE(3) projection, KITTI loader, diagnostics CLI. 2026-07-31 commit: palletizer last public commit (construction pack, ROS 2 reference, README). 2026-09-05 decision: Cluster control engine; decisions D-001…D-008; register snapshot. 2026-09-12 due: Kill decision due: K-001 construction pack, K-002 ai-agent-control. 2026-09-19 due: Discovery target due: ten buyer conversationsMarAprMayJunJulAugSeptpalletizer 0.1.02026-03-08 · release · palletizer 0.1.0 — control stack, 40+ tests (source: palletizer/CHANGELOG.md)robot-lidar-fusion 0.1.0 on PyPI2026-04-10 · release · robot-lidar-fusion 0.1.0 on PyPI (source: pypi.org/project/robot-lidar-fusion)robot-lidar-fusion 0.2.1 on PyPI2026-04-11 · release · robot-lidar-fusion 0.2.1 on PyPI (source: pypi.org/project/robot-lidar-fusion)palletizer-full-stack 0.2.0 on PyPI2026-06-20 · release · palletizer-full-stack 0.2.0 on PyPI (source: pypi.org/project/palletizer-full-stack)robot-lidar-fusion 0.4.0 on PyPI2026-06-20 · release · robot-lidar-fusion 0.4.0 on PyPI — SE(3) projection, KITTI loader, diagnostics CLI (source: pypi.org/project/robot-lidar-fusion)palletizer last public commit2026-07-31 · commit · palletizer last public commit (construction pack, ROS 2 reference, README) (source: github.com/iceccarelli/palletizer)Cluster control engine2026-09-05 · decision · Cluster control engine; decisions D-001…D-008; register snapshot (source: this register)Kill decision due2026-09-12 · due · Kill decision due: K-001 construction pack, K-002 ai-agent-control (source: /decisions#kill)Discovery target due2026-09-19 · due · Discovery target due: ten buyer conversations (source: /report#2026-W36)releasecommitdecisiondecision due
Dates and sources
DateKindEventSource
releasepalletizer 0.1.0 — control stack, 40+ testspalletizer/CHANGELOG.md
releaserobot-lidar-fusion 0.1.0 on PyPIpypi.org/project/robot-lidar-fusion
releaserobot-lidar-fusion 0.2.1 on PyPIpypi.org/project/robot-lidar-fusion
releasepalletizer-full-stack 0.2.0 on PyPIpypi.org/project/palletizer-full-stack
releaserobot-lidar-fusion 0.4.0 on PyPI — SE(3) projection, KITTI loader, diagnostics CLIpypi.org/project/robot-lidar-fusion
commitpalletizer last public commit (construction pack, ROS 2 reference, README)github.com/iceccarelli/palletizer
decisionCluster control engine; decisions D-001…D-008; register snapshotthis register
dueKill decision due: K-001 construction pack, K-002 ai-agent-control/decisions#kill
dueDiscovery target due: ten buyer conversations/report#2026-W36
  1. Perceptionno test evidence—
  2. World modelno test evidence—
  3. Task plannertest_planning.pytest_optimizer.py · stability numbertest_native_invariants.py · C++ vs Pythontest_construction.py · EXPERIMENTtest_mcp_server.py · agent tools5
  4. Motion plannertest_motion_controller.py1
  5. Simulatorno test evidence—
  6. Safety / constraint enginetest_hazard_manager.pytest_fault_detection.pytest_power.py · battery, thermal3
  7. Robot controllertest_orchestrator.py · fixed-rate looptest_joint_synchronization.pytest_gripper_controller.pytest_memory_management.pytest_concurrency.pytest_config.py6
  8. Actuationno test evidence—
  9. Telemetrytest_communication.py1
  10. Failure analysisno test evidence—
  11. Learningno test evidence—
16 test modules and 84 Python modules outside web/ at the 2026-07-31 commit (clone of github.com/iceccarelli/palletizer at the last public commit). Perception, world model, simulator, actuation, failure analysis and learning have no tests in this repository.

The twelve KPIs

Palletizing KPIs — 0 of 12 measured
KPIDefinitionMeasuredMethod
Cycles / hour
cycles/h
Completed pick-place cycles per hour of scheduled run time. unmeasuredSimulation harness on a fixed fixture set first; cell telemetry (orchestrator loop) on hardware.
Successful picks
count
Picks that place the case within tolerance without re-grip. unmeasuredOrchestrator task log; verified by the post-place check.
Failed picks
count
Picks aborted, dropped or placed out of tolerance. unmeasuredFault detector events joined to task ids.
Intervention rate
per 1,000 cycles
Human interventions per 1,000 cycles. unmeasuredOperator acknowledgements in telemetry; the number that decides the economics.
Changeover time
min
Minutes from last case of SKU set A to first case of SKU set B. unmeasuredPattern manager timestamps.
Deployment time
days
Working days from site survey to first production pallet. unmeasuredPilot log, signed by the customer.
Robot utilisation
%
Share of scheduled time the arm is executing a task. unmeasuredController state telemetry.
Gripper utilisation
%
Share of cycles using each end effector; idle tooling is cost. unmeasuredGripper controller events.
SKU complexity
SKUs/order
Distinct case geometries per order; mixed-SKU share. unmeasuredWMS CSV ingestion statistics.
Downtime
min/shift
Unscheduled minutes per shift attributable to the cell. unmeasuredFault detector; classified by cause.
Labour savings
h/shift
Operator hours displaced per shift, at the customer’s loaded rate. unmeasuredCustomer baseline before pilot; never a modelled figure presented as a result.
Payback period
months
Months until cumulative savings equal deployment cost. unmeasuredDerived from the eleven KPIs above and the signed pilot invoice. Absent until then.

Snapshot schema: PalletizingKpiSnapshot 0.1.0. JSON: /api/cluster/kpis.

Shared perception IP — robot-lidar-fusion CORE

ROS 2 LiDAR–camera fusion: SE(3) extrinsic projection, pinhole intrinsics, z-buffer occlusion, KITTI calibration loader, diagnostics CLI. Shared perception IP for palletizing and inspection.

pypi · robot-lidar-fusion 0.4.0github repository not public

LiDAR-fusion benchmark metrics — 0 of 6 measured
KPIDefinitionMeasuredMethod
Precision
%
Detected objects that are real, on the benchmark set. unmeasuredBenchmark dataset with ground truth; KITTI calibration loader exists in 0.4.0.
Recall
%
Real objects detected, on the benchmark set. unmeasuredSame benchmark run.
Latency
ms
Wall-clock from sensor frame to fused output, p50 and p99. unmeasuredDiagnostics CLI on stated hardware; hardware named with the number.
Failure rate
%
Frames with no valid fused output. unmeasuredDiagnostics CLI over the benchmark set, including degraded sequences.
Localisation error
cm
Position error of fused detections against ground truth. unmeasuredBenchmark with calibrated extrinsics; error under sensor dropout reported separately.
Generalisation
Δ%
Metric change when the benchmark scene family changes. unmeasuredHeld-out scene families; occlusion and degraded-environment subsets.

Evaluation covers localisation, object detection, tracking, uncertainty, sensor calibration, sensor failure, degraded environments, occlusion, robustness and latency. Hardware is named with every latency figure.

Autonomous inspection RESEARCH

Electrical-infrastructure inspection is the strategic bridge to the Energy cluster and is not commercialised before the chain is demonstrated end to end:

  1. DETECTION
  2. CLASSIFICATION
  3. LOCALISATION
  4. INSPECTION PLAN
  5. SAFE ROBOT EXECUTION
  6. EVIDENCE
  7. REPORT

Customer outcome: less dangerous human work, lower inspection cost, higher inspection frequency, earlier fault detection. Result contract: InspectionResult 0.1.0. No repository exists yet; the register says so.