{
  "decision": "https://github.com/dekerd/Barbelic/issues/1478#issuecomment-5611945034",
  "date": "2026-09-10",
  "caseIds": [
    "CASE-007",
    "CASE-018",
    "CASE-055"
  ],
  "nodeFiles": 21,
  "entries": [
    {
      "file": "tests/auth/adminApi.test.mjs",
      "optional": "tests/auth/adminApi.optional.mjs",
      "kind": "whole-file"
    },
    {
      "file": "tests/auth/impersonationSession.test.mjs",
      "optional": "tests/auth/impersonationSession.optional.mjs",
      "kind": "whole-file"
    },
    {
      "file": "tests/auth/testAdminSessionApi.test.mjs",
      "optional": "tests/auth/testAdminSessionApi.optional.mjs",
      "kind": "whole-file"
    },
    {
      "file": "tests/react/adminAtomicCatalogOperations.test.mjs",
      "optional": "tests/react/adminAtomicCatalogOperations.optional.mjs",
      "kind": "whole-file"
    },
    {
      "file": "tests/react/adminDeploymentManifestApi.test.mjs",
      "optional": "tests/react/adminDeploymentManifestApi.optional.mjs",
      "kind": "whole-file"
    },
    {
      "file": "tests/react/adminHealthReport.test.mjs",
      "optional": "tests/react/adminHealthReport.optional.mjs",
      "kind": "whole-file"
    },
    {
      "file": "tests/react/adminImpersonationGuard.test.mjs",
      "optional": "tests/react/adminImpersonationGuard.optional.mjs",
      "kind": "whole-file"
    },
    {
      "file": "tests/react/adminImportOnBehalf.test.mjs",
      "optional": "tests/react/adminImportOnBehalf.optional.mjs",
      "kind": "whole-file"
    },
    {
      "file": "tests/react/adminMappingPageMigration.test.mjs",
      "optional": "tests/react/adminMappingPageMigration.optional.mjs",
      "kind": "whole-file"
    },
    {
      "file": "tests/react/adminSynonymSearchProbe.test.mjs",
      "optional": "tests/react/adminSynonymSearchProbe.optional.mjs",
      "kind": "whole-file"
    },
    {
      "file": "tests/react/motraNormalizedUpload.test.mjs",
      "optional": "tests/react/motraNormalizedUpload.optional.mjs",
      "kind": "whole-file"
    },
    {
      "file": "tests/react/wodupComplexImportWorker.test.mjs",
      "optional": "tests/react/wodupComplexImportWorker.optional.mjs",
      "kind": "whole-file"
    },
    {
      "file": "tests/react/wodupEnglishRemapBatch1Contract.test.mjs",
      "optional": "tests/react/wodupEnglishRemapBatch1Contract.optional.mjs",
      "kind": "whole-file"
    },
    {
      "file": "tests/react/wodupImportPollCadence.test.mjs",
      "optional": "tests/react/wodupImportPollCadence.optional.mjs",
      "kind": "whole-file"
    },
    {
      "file": "tests/react/wodupImportRunner.test.mjs",
      "optional": "tests/react/wodupImportRunner.optional.mjs",
      "kind": "whole-file"
    },
    {
      "file": "tests/react/wodupImportWorkerProgress.test.mjs",
      "optional": "tests/react/wodupImportWorkerProgress.optional.mjs",
      "kind": "whole-file"
    },
    {
      "file": "tests/react/wodupJsonlUpload.test.mjs",
      "optional": "tests/react/wodupJsonlUpload.optional.mjs",
      "kind": "whole-file"
    },
    {
      "file": "tests/react/wodupNormalizer.test.mjs",
      "optional": "tests/react/wodupNormalizer.optional.mjs",
      "kind": "whole-file"
    },
    {
      "file": "tests/react/wodupStartImportFunction.test.mjs",
      "optional": "tests/react/wodupStartImportFunction.optional.mjs",
      "kind": "whole-file"
    },
    {
      "file": "tests/react/wodupUnmatchedUserCustomSqlContract.test.mjs",
      "optional": "tests/react/wodupUnmatchedUserCustomSqlContract.optional.mjs",
      "kind": "whole-file"
    },
    {
      "file": "tests/auth/accountDeleteApi.test.mjs",
      "optional": "tests/auth/accountDeleteApi.optional.mjs",
      "kind": "split",
      "tests": [
        "행위자 검증: 관리자가 발급한 열람 세션(amr 이 전부 otp)은 403 impersonated_session — 서비스 키 호출 0, 실사용자 세션(password·oauth·amr 없음)은 진행"
      ]
    },
    {
      "file": "tests/react/adminRoute.test.mjs",
      "optional": "tests/react/adminRoute.optional.mjs",
      "kind": "split",
      "tests": [
        "the app no longer maps admin URLs to a dashboard tab (admin lives at barbelic-docs /admin)"
      ]
    },
    {
      "file": "tests/react/catalogWriteHardCut.test.mjs",
      "optional": "tests/react/catalogWriteHardCut.optional.mjs",
      "kind": "split",
      "tests": [
        "admin exercise update fences on updated_at and surfaces a conflict",
        "admin catalog alias validation (custom exercise check retained)",
        "catalog creation accepts atomic pairs and disables strength PRs without reps"
      ]
    },
    {
      "file": "tests/react/catalogSeedDriftRepairContract.test.mjs",
      "optional": "tests/react/catalogSeedDriftRepairContract.optional.mjs",
      "kind": "split",
      "tests": [
        "the deferred wodup:global:389 pair resolves to behind-the-neck-press"
      ]
    },
    {
      "file": "tests/react/domainRepositoryDestinations.test.mjs",
      "optional": "tests/react/domainRepositoryDestinations.optional.mjs",
      "kind": "split",
      "tests": [
        "catalog exercise with mapping is one RPC whose mapping payload carries no exercise id and deduplicated aliases",
        "performance detail operations deduplicate targets and reject a non-canonical id before the RPC",
        "external mapping delete filters by provider key, adds the exercise filter only when given and counts deleted rows",
        "import destination keeps payload identity, target owner and caller operation id",
        "import destination omits absent target, generates one diagnostic id and rejects missing sessions",
        "import failure retains original error and one sanitized diagnostic without retry",
        "admin destination keeps status defaults, trim, limit bounds and object result",
        "admin destination preserves read error identity and null for primitive payloads"
      ]
    },
    {
      "file": "tests/react/lazyServiceBoundaries.test.mjs",
      "optional": "tests/react/lazyServiceBoundaries.optional.mjs",
      "kind": "split",
      "tests": [
        "desktop admin and Wodup controllers stay out of the shared app controller",
        "the admin feature is owned by the standalone admin shell, not the desktop app",
        "desktop startup styles exclude the standalone admin styles",
        "profile Wodup import loads its runner only when a file is selected",
        "optional export and Wodup domains are loaded on demand by the API facade"
      ]
    },
    {
      "file": "tests/react/opsObservabilityContract.test.mjs",
      "optional": "tests/react/opsObservabilityContract.optional.mjs",
      "kind": "split",
      "tests": [
        "ADM-003: the checklist no longer carries a frozen expectation",
        "ADM-003: behind is critical, ahead and unverified are warnings"
      ]
    },
    {
      "file": "tests/react/readImportContractHardCut.test.mjs",
      "optional": "tests/react/readImportContractHardCut.optional.mjs",
      "kind": "split",
      "tests": [
        "Wodup repository rejects legacy input aliases before touching Supabase",
        "Wodup domain/repository expose camelCase input while preserving snake_case Edge wire",
        "Wodup repository adapter emits one camelCase result and rejects retired nested summaries"
      ]
    },
    {
      "file": "tests/react/repository.test.mjs",
      "optional": "tests/react/repository.optional.mjs",
      "kind": "split",
      "tests": [
        "uploadWodupJsonlOriginal stores the file under a user batch path and marks it uploaded",
        "uploadWodupJsonlOriginal marks the batch failed when storage upload fails",
        "startWodupImportBatch invokes the Edge Function with a shared operation id",
        "startWodupImportBatch surfaces Edge Function errors",
        "startWodupImportBatch explains missing Edge Function deployments"
      ]
    },
    {
      "file": "tests/react/schemaRls.test.mjs",
      "optional": "tests/react/schemaRls.optional.mjs",
      "kind": "split",
      "tests": [
        "schema stores Wodup original uploads in owner-scoped batches and storage paths",
        "exercise admin role can be granted from a DB allowlist",
        "catalog tables restrict direct writes to the DB admin allowlist",
        "the admin allowlist table stays unreadable to client roles",
        "schema stages normalized Wodup import rows in owner-scoped tables",
        "schema imports staged Wodup rows into canonical workout history",
        "schema normalizes Wodup lb set loads to canonical kg while preserving source units"
      ]
    },
    {
      "file": "supabase/tests/database/admin_synonym_editor.test.sql",
      "optional": "supabase/optional-tests/database/admin_synonym_editor.test.sql",
      "kind": "whole-file"
    },
    {
      "file": "supabase/tests/database/admin_wodup_import_on_behalf.test.sql",
      "optional": "supabase/optional-tests/database/admin_wodup_import_on_behalf.test.sql",
      "kind": "whole-file"
    },
    {
      "file": "supabase/tests/database/d12_identity_admin_constraints.test.sql",
      "optional": "supabase/optional-tests/database/d12_identity_admin_constraints.test.sql",
      "kind": "whole-file"
    },
    {
      "file": "supabase/tests/database/group_ugc_safety_v1.test.sql",
      "optional": "supabase/optional-tests/database/group_ugc_safety_v1.test.sql",
      "kind": "whole-file"
    },
    {
      "file": "supabase/tests/database/import_readonly_brid_issuance.test.sql",
      "optional": "supabase/optional-tests/database/import_readonly_brid_issuance.test.sql",
      "kind": "whole-file"
    },
    {
      "file": "supabase/tests/database/motra_import_v1.test.sql",
      "optional": "supabase/optional-tests/database/motra_import_v1.test.sql",
      "kind": "whole-file"
    },
    {
      "file": "supabase/tests/database/remove_import_data_v1.test.sql",
      "optional": "supabase/optional-tests/database/remove_import_data_v1.test.sql",
      "kind": "whole-file"
    },
    {
      "file": "supabase/tests/database/ugc_safety_v1.test.sql",
      "optional": "supabase/optional-tests/database/ugc_safety_v1.test.sql",
      "kind": "whole-file"
    },
    {
      "file": "supabase/tests/database/wodup_barbelic_coexistence.test.sql",
      "optional": "supabase/optional-tests/database/wodup_barbelic_coexistence.test.sql",
      "kind": "whole-file"
    },
    {
      "file": "supabase/tests/database/wodup_external_identity_one_step.test.sql",
      "optional": "supabase/optional-tests/database/wodup_external_identity_one_step.test.sql",
      "kind": "whole-file"
    },
    {
      "file": "supabase/tests/database/wodup_external_name_bytes_bound.test.sql",
      "optional": "supabase/optional-tests/database/wodup_external_name_bytes_bound.test.sql",
      "kind": "whole-file"
    },
    {
      "file": "supabase/tests/database/wodup_import_batch_state_machine.test.sql",
      "optional": "supabase/optional-tests/database/wodup_import_batch_state_machine.test.sql",
      "kind": "whole-file"
    },
    {
      "file": "supabase/tests/database/wodup_import_failed_staging_purge.test.sql",
      "optional": "supabase/optional-tests/database/wodup_import_failed_staging_purge.test.sql",
      "kind": "whole-file"
    },
    {
      "file": "supabase/tests/database/wodup_import_one_shot.test.sql",
      "optional": "supabase/optional-tests/database/wodup_import_one_shot.test.sql",
      "kind": "whole-file"
    },
    {
      "file": "supabase/tests/database/wodup_import_requeue.test.sql",
      "optional": "supabase/optional-tests/database/wodup_import_requeue.test.sql",
      "kind": "whole-file"
    },
    {
      "file": "supabase/tests/database/wodup_import_stage_chunk_scope.test.sql",
      "optional": "supabase/optional-tests/database/wodup_import_stage_chunk_scope.test.sql",
      "kind": "whole-file"
    },
    {
      "file": "supabase/tests/database/wodup_import_staging_row_id_index.test.sql",
      "optional": "supabase/optional-tests/database/wodup_import_staging_row_id_index.test.sql",
      "kind": "whole-file"
    },
    {
      "file": "supabase/tests/database/wodup_import_storage_ownership.test.sql",
      "optional": "supabase/optional-tests/database/wodup_import_storage_ownership.test.sql",
      "kind": "whole-file"
    },
    {
      "file": "supabase/tests/database/wodup_training_complexes.test.sql",
      "optional": "supabase/optional-tests/database/wodup_training_complexes.test.sql",
      "kind": "whole-file"
    },
    {
      "file": "supabase/tests/database/wodup_worker_explicit_owner.test.sql",
      "optional": "supabase/optional-tests/database/wodup_worker_explicit_owner.test.sql",
      "kind": "whole-file"
    },
    {
      "file": "supabase/tests/database/d12_import_constraints.test.sql",
      "optional": "supabase/optional-tests/database/d12_import_constraints.test.sql",
      "kind": "split",
      "tests": [
        "Wodup staging constraints, ownership, RLS and cascades"
      ]
    },
    {
      "file": "supabase/tests/database/ops_observability.test.sql",
      "optional": "supabase/optional-tests/database/ops_observability.test.sql",
      "kind": "split",
      "tests": [
        "seven administrator checklist assertions"
      ]
    },
    {
      "file": "tests/react/motraXlsxBlocks.test.mjs",
      "optional": "tests/react/motraXlsxBlocks.optional.mjs",
      "kind": "whole-file"
    },
    {
      "file": "supabase/tests/database/d12_layer_helpers.test.sql",
      "optional": "supabase/optional-tests/database/d12_layer_helpers.test.sql",
      "kind": "split",
      "tests": [
        "admin identity/core checks and administrator catalog engine"
      ]
    },
    {
      "file": "supabase/tests/database/internal_surface_grant_hygiene.test.sql",
      "optional": "supabase/optional-tests/database/internal_surface_grant_hygiene.test.sql",
      "kind": "split",
      "tests": [
        "Wodup trigger/engine/surface grants; normal workout engine/surface assertions retained"
      ]
    }
  ],
  "adminRepository": "All admin/tests unit/component tests and CASE-056 are manual only; check runs types, build remains required."
}
