shared-export: QuickType conversion failure still emits quicktype_success #1070

Closed
opened 2026-08-13 06:33:49 +00:00 by spikerj · 1 comment
Owner

Found while covering SharedExportComponent.exportToQuickType() (Wave 7 tick 6 a5).

Bug

When QuickTypeService.quicktypeJSON throws (unsupported language, parse failure, etc.), the inner catch only console.warn("QuickType service not available") and the outer path still emits exportRequested with action: "quicktype_success".

A learner (or parent map exporter) is told the TypeScript convert succeeded even though no types were generated.

Where

projects/spikersoft/src/app/_components/shared-export/shared-export.component.ts — the inner try/catch around the lazy @spikersoft/feature-dev-tools-quick-type import swallows any error, including a failed conversion after the service resolved.

Expected

A conversion failure should emit quicktype_error (the outer catch already has this action) rather than quicktype_success, and the warn copy should not claim the service is missing when it was present.

Characterization

Pinned in shared-export.quicktype-leftovers.spec.ts (“swallows a quicktypeJSON throw as 'not available' and still emits success”).

Found while covering `SharedExportComponent.exportToQuickType()` (Wave 7 tick 6 a5). ## Bug When `QuickTypeService.quicktypeJSON` throws (unsupported language, parse failure, etc.), the inner `catch` only `console.warn("QuickType service not available")` and the outer path still emits `exportRequested` with `action: "quicktype_success"`. A learner (or parent map exporter) is told the TypeScript convert succeeded even though no types were generated. ## Where `projects/spikersoft/src/app/_components/shared-export/shared-export.component.ts` — the inner try/catch around the lazy `@spikersoft/feature-dev-tools-quick-type` import swallows *any* error, including a failed conversion after the service resolved. ## Expected A conversion failure should emit `quicktype_error` (the outer catch already has this action) rather than `quicktype_success`, and the warn copy should not claim the service is missing when it was present. ## Characterization Pinned in `shared-export.quicktype-leftovers.spec.ts` (“swallows a quicktypeJSON throw as 'not available' and still emits success”).
Author
Owner

Resolved in spikersoft-angular PR #819 (merged to master). shared-export no longer emits quicktype_success on conversion failure. Closing.

Resolved in spikersoft-angular [PR #819](https://git.spikersoft.com/spikerj/spikersoft-angular/pulls/819) (merged to `master`). shared-export no longer emits quicktype_success on conversion failure. Closing.
Sign in to join this conversation.