The test init.lua requires lib-core.panel directly; the engine resolver enforces explicit dependency declaration and does not traverse transitive deps from inventory-list-display.
Covers: create round-trip, non-container loud-error, action register/unregister lifecycle, duplicate label + non-function callback loud-errors, empty default action-set, contents ordering via _test_get_rows, default icon-resolver property reads, custom icon-resolver override via set_icon_resolver.