From 16d537c4afae273ad3f11bafb6b08c0bb817dd40 Mon Sep 17 00:00:00 2001 From: Shaun Arman Date: Mon, 30 Mar 2026 15:52:43 -0500 Subject: [PATCH] fix: button text visibility, toggle contrast, create_issue IPC, ad-hoc codesign - globals.css: remove button from WebKit -webkit-text-fill-color override that was causing button text to be invisible (text color matched background in dark mode) - Security.tsx: toggle enabled state uses bg-blue-500 instead of bg-primary; in dark mode --primary is near-white making the white knob invisible - tauriCommands.ts: fix createIssueCmd to pass flat args (not wrapped in newIssue), map domain->category, and return Issue instead of IssueDetail - NewIssue/index.tsx: update call site to use Issue return type directly - release.yml: add ad-hoc codesign step for macOS .app so Gatekeeper shows "unidentified developer" instead of "damaged" error --- .gitea/workflows/release.yml | 2 ++ docs/wiki/CICD-Pipeline.md | 2 +- src/lib/tauriCommands.ts | 7 ++++++- src/pages/NewIssue/index.tsx | 6 +++--- src/pages/Settings/Security.tsx | 2 +- src/styles/globals.css | 2 +- 6 files changed, 14 insertions(+), 7 deletions(-) diff --git a/.gitea/workflows/release.yml b/.gitea/workflows/release.yml index d5a15f1c..54be7a97 100644 --- a/.gitea/workflows/release.yml +++ b/.gitea/workflows/release.yml @@ -117,6 +117,8 @@ jobs: rustup target add aarch64-apple-darwin cargo install tauri-cli --version "^2" --locked CI=true cargo tauri build --target aarch64-apple-darwin + codesign --deep --force --sign - \ + src-tauri/target/aarch64-apple-darwin/release/bundle/macos/TFTSR.app - name: Upload artifacts env: RELEASE_TOKEN: ${{ secrets.RELEASE_TOKEN }} diff --git a/docs/wiki/CICD-Pipeline.md b/docs/wiki/CICD-Pipeline.md index d65b6684..59b4ed45 100644 --- a/docs/wiki/CICD-Pipeline.md +++ b/docs/wiki/CICD-Pipeline.md @@ -79,7 +79,7 @@ Jobs (run in parallel): → {.deb, .rpm, .AppImage} uploaded to Gitea release build-macos-arm64 → cargo tauri build (aarch64-apple-darwin) — runs on local Mac → {.dmg} uploaded to Gitea release - → unsigned; users must right-click → Open to bypass Gatekeeper + → unsigned; after install run: xattr -cr /Applications/TFTSR.app ``` **Per-step agent routing (Woodpecker 2.x labels):** diff --git a/src/lib/tauriCommands.ts b/src/lib/tauriCommands.ts index ecf08d67..5359cb81 100644 --- a/src/lib/tauriCommands.ts +++ b/src/lib/tauriCommands.ts @@ -266,7 +266,12 @@ export const applyRedactionsCmd = (logFileId: string, approvedSpanIds: string[]) // ─── Issue CRUD ─────────────────────────────────────────────────────────────── export const createIssueCmd = (newIssue: NewIssue) => - invoke("create_issue", { newIssue }); + invoke("create_issue", { + title: newIssue.title, + description: newIssue.description ?? "", + severity: newIssue.severity ?? "P3", + category: newIssue.domain, + }); export const getIssueCmd = (issueId: string) => invoke("get_issue", { issueId }); diff --git a/src/pages/NewIssue/index.tsx b/src/pages/NewIssue/index.tsx index 30410950..2fa5242a 100644 --- a/src/pages/NewIssue/index.tsx +++ b/src/pages/NewIssue/index.tsx @@ -51,9 +51,9 @@ export default function NewIssue() { setIsSubmitting(true); setError(null); try { - const detail = await createIssueCmd({ title: title.trim(), domain: selectedDomain, severity }); - startSession(detail.issue); - navigate(`/issue/${detail.issue.id}/triage`); + const issue = await createIssueCmd({ title: title.trim(), domain: selectedDomain, severity }); + startSession(issue); + navigate(`/issue/${issue.id}/triage`); } catch (err) { setError(String(err)); setIsSubmitting(false); diff --git a/src/pages/Settings/Security.tsx b/src/pages/Settings/Security.tsx index 661dcb2e..5e223ca7 100644 --- a/src/pages/Settings/Security.tsx +++ b/src/pages/Settings/Security.tsx @@ -82,7 +82,7 @@ export default function Security() { aria-checked={enabledPatterns[pattern.id]} onClick={() => togglePattern(pattern.id)} className={`relative inline-flex h-6 w-11 items-center rounded-full transition-colors ${ - enabledPatterns[pattern.id] ? "bg-primary" : "bg-muted" + enabledPatterns[pattern.id] ? "bg-blue-500" : "bg-muted" }`} >