feat: set interaction_type at import and track cross-section normalizations
CI / check (push) Successful in 30s
CI / release (push) Skipped
CI / deploy (push) Successful in 2m2s

Newly imported items with a generic .nitro logicType stayed on interaction_type
'default' until the post-import verification sweep ran. Fall back to the same
auto-detected type used by the sweep (classname mechanic + keyword + real flags)
so imports carry the correct interaction immediately; updates keep their
existing emulator handler types.

Also count cross-section id alignments under a separate normalizedIds field in
reconcileFurniDataWithItemsBase so fixedIds keeps its original meaning.
This commit is contained in:
openhands committed 2026-08-20 15:09:18 +02:00
1 parent b811086de6
commit 56bfa164a1
2 files changed
+18 -2

No files matched your search

+13
View File
@@ -908,6 +908,19 @@ export async function importSingleFurni(params: {
});
const interactionModesCount = autoInteraction.interactionModesCount;
// When the .nitro logicType produced no specific handler, fall back to the
// auto-detected type (classname mechanic + keyword + real flags) exactly
// like the post-import verification sweep, so newly imported items carry the
// correct interaction_type immediately instead of waiting for the sweep.
// Never applied to updates — existing emulator handler types must survive.
if (
!isUpdate &&
interactionType === "default" &&
autoInteraction.interactionType !== "default"
) {
interactionType = autoInteraction.interactionType;
}
// Update items_base with ALL enriched data
try {
const update = buildItemsBaseEnrichmentUpdate({