Skip to content

Commit 5b58d42

Browse files
committed
Merge shuvcode-dev fork-features fix into integration
2 parents e5ffa75 + 8e290e1 commit 5b58d42

1 file changed

Lines changed: 23 additions & 35 deletions

File tree

script/sync/fork-features.json

Lines changed: 23 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -595,7 +595,7 @@
595595
"description": "Responsive layout via matchMedia, improved API URL resolution defaults, Vite proxy for API routes, and defensive array handling in global-sync",
596596
"files": [
597597
"packages/app/src/pages/layout.tsx",
598-
"packages/app/src/app.tsx",
598+
"packages/app/src/entry.tsx",
599599
"packages/app/src/context/global-sync.tsx",
600600
"packages/app/vite.config.ts"
601601
],
@@ -606,7 +606,7 @@
606606
"markers": ["const smQuery = window.matchMedia(\"(min-width: 640px)\")", "setIsSmallViewport"]
607607
},
608608
{
609-
"file": "packages/app/src/app.tsx",
609+
"file": "packages/app/src/entry.tsx",
610610
"description": "Smart API URL resolution based on protocol and environment",
611611
"markers": ["location.hostname.includes(\"opencode.ai\")", "import.meta.env.VITE_OPENCODE_SERVER_HOST"]
612612
},
@@ -630,11 +630,6 @@
630630
"description": "Fix horizontal overflow on mobile devices when viewing chat sessions. Content, text entry box, and submit button no longer spill outside viewport requiring horizontal scrolling.",
631631
"files": ["packages/app/src/pages/session.tsx", "packages/app/src/components/prompt-input.tsx"],
632632
"criticalCode": [
633-
{
634-
"file": "packages/app/src/pages/session.tsx",
635-
"description": "Tabs/content containers prevent horizontal overflow",
636-
"markers": ["min-w-0 w-full max-w-full", "overflow-hidden"]
637-
},
638633
{
639634
"file": "packages/app/src/pages/session.tsx",
640635
"description": "Session root uses overflow hidden on mobile",
@@ -649,11 +644,6 @@
649644
"file": "packages/app/src/components/prompt-input.tsx",
650645
"description": "Bottom bar with min-w-0 overflow-hidden for proper flex shrinking",
651646
"markers": ["flex items-center gap-2 min-w-0"]
652-
},
653-
{
654-
"file": "packages/app/src/components/prompt-input/slash-popover.tsx",
655-
"description": "Slash command popover with truncated text styling",
656-
"markers": ["text-text-weak whitespace-nowrap truncate min-w-0"]
657647
}
658648
]
659649
},
@@ -731,8 +721,8 @@
731721
"criticalCode": [
732722
{
733723
"file": "packages/opencode/src/file/index.ts",
734-
"description": "isBinaryContent() function to detect actual binary content via null bytes",
735-
"markers": ["function isBinaryContent(buffer: ArrayBuffer)", "nullBytes", "nonPrintable"]
724+
"description": "Binary content detection via null byte scanning for octet-stream files",
725+
"markers": ["isBinaryByExtension(file)", "bytes[i] === 0", "hasBinary"]
736726
},
737727
{
738728
"file": "packages/opencode/src/file/index.ts",
@@ -752,10 +742,10 @@
752742
"author": "fork",
753743
"status": "fork-only",
754744
"description": "Display actual image previews for PNG, JPG, GIF, WEBP files in file viewer tabs. Images are centered and scaled to fit with scroll support for large images. SVG renders as syntax-highlighted code.",
755-
"files": ["packages/app/src/pages/session.tsx"],
745+
"files": ["packages/app/src/pages/session/file-tabs.tsx"],
756746
"criticalCode": [
757747
{
758-
"file": "packages/app/src/pages/session.tsx",
748+
"file": "packages/app/src/pages/session/file-tabs.tsx",
759749
"description": "Image preview detection logic excluding SVG",
760750
"markers": [
761751
"c?.encoding === \"base64\"",
@@ -764,19 +754,16 @@
764754
]
765755
},
766756
{
767-
"file": "packages/app/src/pages/session.tsx",
757+
"file": "packages/app/src/pages/session/file-tabs.tsx",
768758
"description": "Image rendering with data URL and centered container",
769-
"markers": [
770-
"const imageDataUrl = createMemo(() =>",
771-
"<img src={imageDataUrl()} alt={path()} class=\"max-w-full\" />"
772-
]
759+
"markers": ["const imageDataUrl = createMemo(() =>", "src={imageDataUrl()}"]
773760
},
774761
{
775-
"file": "packages/app/src/pages/session.tsx",
762+
"file": "packages/app/src/pages/session/file-tabs.tsx",
776763
"description": "Wait for file content to load before rendering to prevent blank pages",
777764
"markers": [
778765
"const contents = createMemo(() => state()?.content?.content ?? \"\")",
779-
"const cacheKey = createMemo(() => checksum(contents()))"
766+
"const cacheKey = createMemo(() => sampledChecksum(contents()))"
780767
]
781768
}
782769
]
@@ -1047,12 +1034,12 @@
10471034
"author": "fork",
10481035
"status": "fork-only",
10491036
"description": "Fix scrolling in desktop file viewer tabs by adding proper flex and overflow constraints",
1050-
"files": ["packages/app/src/pages/session.tsx"],
1037+
"files": ["packages/app/src/pages/session/file-tabs.tsx"],
10511038
"criticalCode": [
10521039
{
1053-
"file": "packages/app/src/pages/session.tsx",
1054-
"description": "Scrollable wrapper for code component with flex constraints",
1055-
"markers": ["flex-1 min-h-0 overflow-auto", "overflow=\"scroll\""]
1040+
"file": "packages/app/src/pages/session/file-tabs.tsx",
1041+
"description": "Scrollable wrapper for code component with scroll overflow",
1042+
"markers": ["overflow=\"scroll\""]
10561043
}
10571044
]
10581045
},
@@ -1256,7 +1243,8 @@
12561243
"packages/desktop/src-tauri/src/windows.rs",
12571244
"packages/desktop/src-tauri/src/main.rs",
12581245
"packages/desktop/src/updater.ts",
1259-
"packages/app/src/app.tsx"
1246+
"packages/app/src/app.tsx",
1247+
"packages/app/src/entry.tsx"
12601248
],
12611249
"criticalCode": [
12621250
{
@@ -1290,9 +1278,9 @@
12901278
"markers": ["__SHUVCODE__?: { updaterEnabled?: boolean; port?: number; serverReady?: boolean }"]
12911279
},
12921280
{
1293-
"file": "packages/app/src/app.tsx",
1294-
"description": "Port resolution chain: __SHUVCODE__ -> __OPENCODE__ -> env -> location",
1295-
"markers": ["window.__SHUVCODE__?.port", "window.__OPENCODE__?.port"]
1281+
"file": "packages/app/src/entry.tsx",
1282+
"description": "Port resolution chain: __SHUVCODE__ -> env -> location",
1283+
"markers": ["window.__SHUVCODE__?.port", "import.meta.env.VITE_OPENCODE_SERVER_HOST"]
12961284
},
12971285
{
12981286
"file": "packages/desktop/src/updater.ts",
@@ -1702,17 +1690,17 @@
17021690
"pr": 0,
17031691
"title": "Publish workflow skips desktop release by default",
17041692
"author": "fork",
1705-
"status": "fork-only",
1693+
"status": "reverted-upstream",
17061694
"description": "The publish workflow only runs the desktop (tauri) release job when explicitly requested, avoiding unnecessary tauri-cli installs and platform downloads when no desktop app is shipped.",
17071695
"files": [".github/workflows/publish.yml"],
17081696
"criticalCode": [
17091697
{
17101698
"file": ".github/workflows/publish.yml",
1711-
"description": "publishDesktop input and publish-tauri job guard",
1712-
"markers": ["publishDesktop", "if: inputs.publishDesktop == 'true'"]
1699+
"description": "Desktop build job exists and runs unconditionally (upstream v1.2.7 removed skip toggle)",
1700+
"markers": ["build-tauri"]
17131701
}
17141702
],
1715-
"note": "Triggered by publish failure from @tauri-apps/cli-win32-ia32-msvc integrity errors; publish desktop artifacts only when needed."
1703+
"note": "Upstream v1.2.7 removed the publishDesktop input toggle and runs build-tauri unconditionally. Feature no longer needed."
17161704
}
17171705
]
17181706
}

0 commit comments

Comments
 (0)