The just-merged production-only commits were never run through QA (they were pushed directly to the production branch), so several version markers and hardcoded test strings had drifted out of sync with each other: - package.json was bumped to 17.8.0 but package-lock.json, release-manifest.json and app-runtime.js's own VERSION constant were never updated to match - reverted to 17.7.3 since no other release artifact actually changed. - service-worker.js's cache name legitimately moved to v81-20260912-account-center-loader (real new modules need the cache bust), but release-manifest.json's pwaCache field and two release-check.mjs assertions still expected the old v78 name. - edge-security-v1774.mjs and static-security.mjs asserted the old employee role list (with "admin") and old PWA cache name that production's own commits had already changed. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
386 lines
14 KiB
JSON
386 lines
14 KiB
JSON
{
|
||
"app": "Caterium",
|
||
"version": "v17.7.3",
|
||
"channel": "production",
|
||
"schema": 17,
|
||
"legacyStateKept": true,
|
||
"normalizedMirror": true,
|
||
"optimisticRevisionLock": true,
|
||
"offlineOutbox": "IndexedDB",
|
||
"dailyBackups": true,
|
||
"serverReady": true,
|
||
"workspaceAutoDiscovery": true,
|
||
"invitesTemporarilyDisabled": false,
|
||
"pwaCache": "v81-20260912-account-center-loader",
|
||
"fullOfferDescriptions": true,
|
||
"dynamicOfferRows": true,
|
||
"pdfOfferDescriptionFix": true,
|
||
"boxWeightEditable": true,
|
||
"boxWeightVisibleEverywhere": true,
|
||
"offerCompositionTotals": true,
|
||
"offerSnapshotVersion": 8,
|
||
"boxPiecesEditable": true,
|
||
"ingredientUnitWeightEditable": true,
|
||
"box18CompositionFixed": true,
|
||
"clientOfferUsesExplicitPieces": true,
|
||
"clientOfferBoxTotals": true,
|
||
"clientOfferWeightRoundUpStepGrams": 5,
|
||
"clientOfferPiecesRoundUpToInteger": true,
|
||
"pdfBalancedCards": true,
|
||
"pdfDuplicateGalleryRemoved": true,
|
||
"boxGuestRangeHiddenEverywhere": true,
|
||
"clientOfferNoDuplicateBoxQuantity": true,
|
||
"catalogTabColorPicker": true,
|
||
"catalogTabAutoContrast": true,
|
||
"catalogEditorGenericPriceAndSaveLabels": true,
|
||
"catalogPhotoLocalStorageOptimization": true,
|
||
"cloudQuotaRetryForSunBoxes": true,
|
||
"catalogSource": "Все боксы — Солнце Кейтеринг (2).pdf",
|
||
"catalogVersion": "2026-09-02",
|
||
"catalogPositions": 113,
|
||
"catalogGuestsImported": false,
|
||
"catalogRemotePhotoLinks": 0,
|
||
"premiumCategoryFromPosition": 85,
|
||
"premiumCategoryBetweenBoxesAndDrinks": true,
|
||
"boxOriginalPriceEditable": true,
|
||
"boxDiscountPriceDisplay": true,
|
||
"settingsStickyHeader": true,
|
||
"settingsOpenAtTop": true,
|
||
"settingsCloudMovedToBottom": false,
|
||
"clientOfferTemplates": [
|
||
"light",
|
||
"midnight-glass",
|
||
"editorial-grid",
|
||
"warm-sun",
|
||
"bento-cards",
|
||
"event-story",
|
||
"black-gold",
|
||
"personal-letter",
|
||
"event-ticket",
|
||
"solar-experience",
|
||
"midnight-compact",
|
||
"emerald-gold",
|
||
"neon-emerald"
|
||
],
|
||
"addressCandidateSelection": true,
|
||
"addressMapConfirmation": true,
|
||
"addressAutocomplete": false,
|
||
"addressGeocoder": "Nominatim manual search with Photon fallback",
|
||
"clientOfferLegacyCatalogCompatibility": true,
|
||
"clientOfferLegacyPhotosEmbedded": false,
|
||
"clientOfferPlaceholderSnapshotAutoRefresh": true,
|
||
"clientOfferLegacyPhotosPackedLosslessly": false,
|
||
"legacyPhotoPackFile": null,
|
||
"legacyPhotoPackItems": 0,
|
||
"legacyStandalonePhotosKept": 60,
|
||
"runtimeBundled": true,
|
||
"runtimeBundleFile": "app-runtime.js",
|
||
"runtimeBundleModules": 22,
|
||
"mobileCssInlined": true,
|
||
"serverHealthUsesReleaseVersion": true,
|
||
"premiumBoxLikeSupportFixed": true,
|
||
"catalogPdfRemoteImageCorsSafe": true,
|
||
"compactDistribution": true,
|
||
"catalogCompositionStaticPrefill": 56,
|
||
"catalogCompositionCurrentSiteVerified": 6,
|
||
"catalogCompositionLiveSync": true,
|
||
"catalogCompositionLiveSource": "https://solnce-keytering.ru/catalog + /catalog_black",
|
||
"catalogCompositionSyncIntervalHours": 6,
|
||
"catalogCompositionManualRefresh": false,
|
||
"catalogCompositionEditable": true,
|
||
"catalogCompositionPreservesManualEdits": true,
|
||
"catalogMigrationPreservesCustomItems": true,
|
||
"clientOfferLightBackground": "white",
|
||
"clientOfferSellingBlock": true,
|
||
"clientOfferSellingTextNoClip": true,
|
||
"clientOfferFinalGallery": true,
|
||
"clientOfferFinalGalleryImages": 2,
|
||
"clientOfferFinalGalleryPackedLosslessly": false,
|
||
"distributionFileCount": 240,
|
||
"finalGallerySource": "2 guaranteed embedded table photos; original offer-gallery files retained",
|
||
"finalGalleryPackedFile": null,
|
||
"calendarUsesPaymentColors": true,
|
||
"calendarPaymentColorsFollowSettings": true,
|
||
"calendarPrintFinancialsHidden": true,
|
||
"calendarPrintKitchenSafe": true,
|
||
"catalogCompositionPremiumDetailSync": true,
|
||
"catalogCompositionPremiumMissingForcesRefresh": true,
|
||
"catalogCompositionTildaEndpoint": "getproduct",
|
||
"catalogCompositionPremiumForceRefresh": true,
|
||
"catalogCompositionCacheRequiresPremium": true,
|
||
"notes": "Client server-read transition: canonical Supabase client snapshot is preferred for profile data while order counts and turnover remain verified from legacy orders; stale o: rows are preserved and deduplicated without destructive cleanup.",
|
||
"catalogPhotoSources": 113,
|
||
"catalogPhotosStoredInCatalog": true,
|
||
"catalogLegacyPhotosInCatalog": 60,
|
||
"catalogCurrentPhotosPrefilled": 64,
|
||
"catalogCurrentPhotosLazyCached": true,
|
||
"catalogPhotoSourceMap": "catalog/photo-sources.json",
|
||
"catalogCompositionClientFirst": true,
|
||
"catalogTtkSeparated": true,
|
||
"orderBlankQrTextInlineEditable": true,
|
||
"box1SaleBadgeWithoutOldPrice": false,
|
||
"performanceAudit": true,
|
||
"pdfGeneratedOnDemand": true,
|
||
"catalogPhotoStartupWarmup": false,
|
||
"catalogPhotoFailureBackoffMinutes": 0,
|
||
"catalogCompositionDeferredUntilIdle": true,
|
||
"catalogCompositionDetailConcurrency": 2,
|
||
"backgroundDomObserversThrottled": true,
|
||
"cloudSignatureScanIntervalMs": 9000,
|
||
"finalGalleryStoredAsFiles": true,
|
||
"finalGalleryFolder": "offer-gallery",
|
||
"finalGalleryPreviewUsesDirectUrls": true,
|
||
"pdfRasterConversionDeferredUntilDownload": false,
|
||
"catalogPhotoPreflight": false,
|
||
"catalogPhotoPreflightScript": "prepare-catalog-photos.js (optional manual prefetch)",
|
||
"catalogPhotoRequiredBeforeServer": false,
|
||
"catalogPhotoTarget": 113,
|
||
"catalogPhotoRuntimeRemoteFetch": true,
|
||
"catalogPhotoFirstRunInternetRequiredUntilComplete": false,
|
||
"catalogPhotoDuplicateUrlReuse": true,
|
||
"catalogPhotoDownloadConcurrency": 3,
|
||
"catalogPhotoDownloadRetries": 3,
|
||
"catalogPhotoHealthStatus": true,
|
||
"catalogPhotoFallbackChain": true,
|
||
"catalogPhotoProxyCache": true,
|
||
"catalogStartupPhotoPreflightBlocking": false,
|
||
"clientOfferPdfPhotoFallback": true,
|
||
"premiumPhotoFallback": true,
|
||
"clientOfferAdaptiveFinalGallery": true,
|
||
"clientOfferAdaptiveFinalGalleryMaxPhotos": 2,
|
||
"clientOfferFinalGalleryPreviewMaxPhotos": 2,
|
||
"box5LocalPhotoFallback": true,
|
||
"box8LocalPhotoFallback": true,
|
||
"clientOfferEditorialTemplate": true,
|
||
"clientOfferEditorialReference": "IMG_3962.jpeg provided 2026-09-04",
|
||
"clientOfferEditorialPreviewPdfParity": true,
|
||
"clientOfferEditorialSharedGrouping": true,
|
||
"clientOfferPreviewUsesPdfPages": true,
|
||
"clientOfferAllTemplatesPreviewPdfParity": true,
|
||
"clientOfferInlineEditor": true,
|
||
"clientOfferInlineEditorPerOrder": true,
|
||
"clientOfferFinalGalleryCreatesNewPage": false,
|
||
"clientOfferFinalGalleryOnlyUsesExistingWhitespace": true,
|
||
"clientOfferInlineControlLinesEdit": true,
|
||
"clientOfferFinalGalleryGuaranteedDataFallback": true,
|
||
"clientOfferFinalGalleryAutomatic": true,
|
||
"clientOfferFinalGalleryMinWhitespacePx": 128,
|
||
"workspaceLocalIsolation": true,
|
||
"workspaceLocalIsolationStore": "IndexedDB meta / tenant-local:<workspaceId>",
|
||
"workspaceSwitchClearsWorkingCopy": true,
|
||
"workspaceUpgradeLegacyAdoption": true,
|
||
"newWorkspaceStarterCatalog": true,
|
||
"newWorkspaceStarterCatalogPositions": 113,
|
||
"newWorkspaceOrdersEmpty": true,
|
||
"newWorkspaceClientsEmpty": true,
|
||
"catalogStaticPdfRemoved": true,
|
||
"catalogPdfGeneratedOnDemand": true,
|
||
"catalogJpegOptimized": true,
|
||
"catalogJpegMaxSidePx": 1500,
|
||
"catalogJpegQuality": 80,
|
||
"reliableLocalSignOut": true,
|
||
"signOutScope": "local",
|
||
"signOutNetworkTimeoutMs": 2500,
|
||
"signOutPreservesWorkspaceSnapshot": true,
|
||
"settingsAccountFirst": true,
|
||
"settingsBackupCardVisible": false,
|
||
"settingsStabilityCardVisible": false,
|
||
"settingsTopOrder": [
|
||
"Профиль и аккаунт",
|
||
"Пользователи и роли",
|
||
"История изменений"
|
||
],
|
||
"authGateSignUpVisible": true,
|
||
"settingsTabs": true,
|
||
"settingsTabsCount": 6,
|
||
"settingsTabsMobileHorizontalScroll": true,
|
||
"settingsTabsRememberLast": true,
|
||
"settingsTabGroups": [
|
||
"Аккаунт",
|
||
"Оформление",
|
||
"Предложение",
|
||
"Заказы",
|
||
"Справочники",
|
||
"Документы"
|
||
],
|
||
"settingsCatalogTabsShortcut": true,
|
||
"developerConsole": true,
|
||
"developerRoleSource": "public.sun_platform_admins",
|
||
"developerServerEnforced": true,
|
||
"developerMfaRequired": true,
|
||
"developerMfaType": "TOTP / Supabase MFA AAL2",
|
||
"developerTabs": [
|
||
"Обзор",
|
||
"Компании",
|
||
"Аккаунты",
|
||
"Тарифы",
|
||
"Функции",
|
||
"Система",
|
||
"Резервные копии",
|
||
"Журнал"
|
||
],
|
||
"developerSeesAllAuthAccounts": true,
|
||
"developerSupportReadOnlyMode": true,
|
||
"developerAuditLog": true,
|
||
"developerWorkspaceDiagnostics": true,
|
||
"developerSubscriptionManagement": true,
|
||
"developerFeatureMatrixManagement": true,
|
||
"developerStarterCatalogManagement": true,
|
||
"developerCanCreateCompanies": true,
|
||
"normalUserTechnicalSupabaseSettingsHidden": true,
|
||
"normalUserManualCloudControlsHidden": true,
|
||
"normalUserBackupsHidden": true,
|
||
"normalUserStabilityHidden": true,
|
||
"authAdminEdgeFunctionDeployed": false,
|
||
"authAdminEdgeFunctionNote": "Source included, but deployment was unavailable in this build environment. All-account listing uses existing server-side sun_platform_list_users RPC; global Auth ban/recovery controls remain unavailable until protected backend function is deployed.",
|
||
"developerSqlMigration": "SUPABASE-V17.6.8-DEVELOPER-CONSOLE-UX.sql",
|
||
"developerMfaRecovery": true,
|
||
"registrationTabs": true,
|
||
"registrationCompanyNameRequired": true,
|
||
"registrationAutoCreatesWorkspace": true,
|
||
"newRegistrationTrialDays": 14,
|
||
"newRegistrationTrialPlan": "full",
|
||
"cateriumLoginBranding": true,
|
||
"signupPasswordRepeatRemoved": false,
|
||
"signupEmailAutoconfirm": "scoped trigger for registration_source=caterium_public_signup",
|
||
"signupTrial": "14-day Full",
|
||
"developerMfaInputSelectorFixed": true,
|
||
"developerMfaRepeatedValidationToastsFixed": true,
|
||
"release": "20260909-v17-7-3-clients-server-read",
|
||
"registrationFlow": "email-password-confirm-company-auto-login",
|
||
"emailConfirmationRequired": false,
|
||
"employeeInviteLinks": false,
|
||
"employeeInviteEmailBound": false,
|
||
"employeePendingInvitesUI": false,
|
||
"directEmployeeCreation": true,
|
||
"employeeTemporaryPassword": true,
|
||
"chatEnabled": true,
|
||
"chatCompanyRoom": true,
|
||
"chatDirectMessages": true,
|
||
"chatOrderDiscussions": true,
|
||
"chatPrivateAttachments": true,
|
||
"chatAttachmentBucket": "sun-chat",
|
||
"chatAttachmentMaxBytes": 15728640,
|
||
"chatMaxAttachmentsPerMessage": 5,
|
||
"chatReadStatus": true,
|
||
"chatTypingIndicator": true,
|
||
"chatPresence": true,
|
||
"chatUnreadBadge": true,
|
||
"chatRealtimePrivate": true,
|
||
"chatDirectIsolation": "workspace membership + sun_chat_participants + RLS",
|
||
"chatMigration": "SUPABASE-CHAT-V29.sql",
|
||
"granularAdminPermissions": true,
|
||
"lastAdminProtection": "other-active-admin-count",
|
||
"lastUsersManagerProtection": true,
|
||
"adminRightsMigration": "SUPABASE-ADMIN-RIGHTS-V30.sql",
|
||
"chatSidebarNav": true,
|
||
"chatSidebarSections": [
|
||
"Общий",
|
||
"Личные",
|
||
"Заказы"
|
||
],
|
||
"chatOrderInline": true,
|
||
"chatOrderGlobalIndex": true,
|
||
"chatSafeNavRegistration": true,
|
||
"chatRepeatedInitPollingRemoved": true,
|
||
"chatFutureContextsPlanned": [
|
||
"production",
|
||
"routes",
|
||
"shopping",
|
||
"client-internal-notes"
|
||
],
|
||
"stabilitySecurityRelease": true,
|
||
"rollbackBaseline": "v17.5.31",
|
||
"sharedSafeHtmlUtility": "core/sun-safe.js",
|
||
"legacyBootstrapExternalized": "legacy/bootstrap.js",
|
||
"productionEmployeeEdgeFunctionVersioned": true,
|
||
"blockingOfferGalleryBase64Removed": true,
|
||
"offerGalleryFiles": 2,
|
||
"pdfEngine": "core/pdf-engine.js",
|
||
"pdfEngineA4Validated": true,
|
||
"mobile390NoDocumentOverflow": true,
|
||
"releaseChecks": "tests/static-security.mjs + tests/release-check.mjs",
|
||
"playwrightSpec": "tests/app.spec.mjs",
|
||
"releaseScoreFirstPass": 7,
|
||
"releaseScoreSecondPass": 9,
|
||
"chatPhotoCompression": true,
|
||
"chatPhotoTargetBytes": 2097152,
|
||
"chatPhotoMaxSidePx": 2048,
|
||
"developerMemoryCounters": true,
|
||
"developerMemoryRefreshMs": 30000,
|
||
"developerMemoryTimeoutMs": 8000,
|
||
"developerMemoryMutationLoopRemoved": true,
|
||
"developerSupportLiveRefresh": true,
|
||
"menuEditorFullPage": true,
|
||
"calendarOverflowPanel": true,
|
||
"routeBaseConfigurable": true,
|
||
"routeOrderPopup": true,
|
||
"developerGateHotfixV1763": true,
|
||
"saasClickHotfixV1763": true,
|
||
"ordersAutoCompleteDelayMs": 60000,
|
||
"ordersAutoPayment": true,
|
||
"ordersAutoCompletedOriginalDatePreserved": true,
|
||
"clientOfferTemplatePerOrder": true,
|
||
"menuStyledSvgIcon": true,
|
||
"releaseIntegrityChecks": true,
|
||
"cloudRpcTimeoutMs": 12000,
|
||
"cloudConflictMaxRetries": 4,
|
||
"errorLogDedupMinutes": 5,
|
||
"networkFailureBackoff": true,
|
||
"stabilityLoggerVersion": "17.7.3",
|
||
"developerAdminCheckTtlMs": 30000,
|
||
"supportRefreshLightweight": true,
|
||
"supportRefreshIntervalMs": 20000,
|
||
"indexCacheBustCurrent": true,
|
||
"backgroundImageMutationBatching": true,
|
||
"opsBootWaitBounded": true,
|
||
"offerTemplates": 13,
|
||
"offerTemplatePerOrder": true,
|
||
"offerTemplateStructuralPreviews": true,
|
||
"offerPdfDistinctLayouts": true,
|
||
"menuNavMaskFixed": true,
|
||
"classicOfferTemplates": 10,
|
||
"restoredHiddenOfferTemplates": [
|
||
"midnight-compact",
|
||
"emerald-gold",
|
||
"neon-emerald"
|
||
],
|
||
"classicOfferPdfCoverPages": true,
|
||
"developerCompanyNumbers": true,
|
||
"developerCompanyDelete": true,
|
||
"developerAccountsGroupedByCompany": true,
|
||
"developerPlansCompactMatrix": true,
|
||
"developerJournalGroupedErrors": true,
|
||
"developerJournalFiltersLocalCopies": true,
|
||
"developerDomRaceFix": true,
|
||
"developerConsoleUXModule": "core/developer-console-v1768.js",
|
||
"offerWorkspaceTabs": true,
|
||
"offerTemplatesSeparateTab": true,
|
||
"offerEditorScrollable": true,
|
||
"offerTwoCustomGalleryPhotos": true,
|
||
"offerWorkspaceModule": "core/offer-workspace-v1769.js",
|
||
"architectureFoundation": true,
|
||
"dataLayer": "core/data-layer-v1773.js",
|
||
"serverOrderAutomation": true,
|
||
"serverOrderAutomationCron": "every minute",
|
||
"serverOrderTimezoneColumn": true,
|
||
"browserOrderAutomationCloudDisabled": true,
|
||
"errorTelemetryRejectsLocalFile": true,
|
||
"errorTelemetryServerDedupMinutes": 5,
|
||
"errorTelemetryRetentionDays": 30,
|
||
"dataLayerPhase": 4,
|
||
"dataLayerLegacyOrderWrites": true,
|
||
"dataLayerLegacyCatalogWrites": true,
|
||
"clientDataLayer": true,
|
||
"clientLegacyDoubleWrite": true,
|
||
"clientCanonicalIdentity": "phone > normalized name > order id fallback",
|
||
"clientNormalizedRpc": "sun_v17_save_client_v1772",
|
||
"clientLegacyRowsPreserved": true,
|
||
"clientServerRead": true,
|
||
"clientServerPreferred": true,
|
||
"clientServerSnapshotRpc": "sun_v17_clients_snapshot_v1773",
|
||
"clientLegacyFallback": true,
|
||
"clientOrderMetricsSource": "legacy orders verified locally",
|
||
"clientServerCache": "cateriumClientsServerV1773"
|
||
}
|