feat(axum): register checked handles

Add HandlerRegistry::register_handle for generated Handle<T> values and migrate examples away from passing raw numeric handle ids at registration sites.

req: ceremony/004

req: public_api/001
This commit is contained in:
slhx agent
2026-05-26 00:26:42 +02:00
parent 4803d681d2
commit bc8534a768
5 changed files with 34 additions and 21 deletions
+7 -7
View File
@@ -278,7 +278,7 @@ async fn events(Query(params): Query<BTreeMap<String, String>>) -> impl IntoResp
fn registry(shared: Arc<Shared>) -> HandlerRegistry {
HandlerRegistry::new(ui::BUILD_FINGERPRINT)
.register(ui::control_center::handles::launch_work.id().id, {
.register_handle(ui::control_center::handles::launch_work, {
let shared = shared.clone();
move |form| {
// req: form/002 req: examples/001
@@ -297,7 +297,7 @@ fn registry(shared: Arc<Shared>) -> HandlerRegistry {
demo_effects(&demo, "Launch accepted · 4 targets updated")
}
})
.register(ui::control_center::handles::advance_work.id().id, {
.register_handle(ui::control_center::handles::advance_work, {
let shared = shared.clone();
move |form| {
// req: list/003 req: examples/001
@@ -315,7 +315,7 @@ fn registry(shared: Arc<Shared>) -> HandlerRegistry {
demo_effects(&demo, "Pipeline advanced")
}
})
.register(ui::control_center::handles::move_to_lane.id().id, {
.register_handle(ui::control_center::handles::move_to_lane, {
let shared = shared.clone();
move |form| {
// req: list/003 req: examples/001
@@ -337,7 +337,7 @@ fn registry(shared: Arc<Shared>) -> HandlerRegistry {
demo_effects(&demo, "Drag-and-drop move persisted")
}
})
.register(ui::control_center::handles::delete_work.id().id, {
.register_handle(ui::control_center::handles::delete_work, {
let shared = shared.clone();
move |form| {
// req: list/003 req: examples/001
@@ -356,7 +356,7 @@ fn registry(shared: Arc<Shared>) -> HandlerRegistry {
demo_effects(&demo, "Card removed")
}
})
.register(ui::control_center::handles::spotlight_work.id().id, {
.register_handle(ui::control_center::handles::spotlight_work, {
let shared = shared.clone();
move |form| {
// req: examples/001
@@ -371,7 +371,7 @@ fn registry(shared: Arc<Shared>) -> HandlerRegistry {
demo_effects(&demo, "Inspector focused")
}
})
.register(ui::control_center::handles::simulate_push.id().id, {
.register_handle(ui::control_center::handles::simulate_push, {
let shared = shared.clone();
move |_| {
// req: push/003 req: examples/001
@@ -384,7 +384,7 @@ fn registry(shared: Arc<Shared>) -> HandlerRegistry {
)
}
})
.register(ui::control_center::handles::reset_demo.id().id, {
.register_handle(ui::control_center::handles::reset_demo, {
let shared = shared.clone();
move |_| {
// req: examples/001