fix: button text visibility, toggle contrast, create_issue IPC, ad-hoc codesign
Some checks failed
Test / rust-fmt-check (push) Successful in 1m5s
Test / rust-tests (push) Has been cancelled
Test / frontend-typecheck (push) Has been cancelled
Test / frontend-tests (push) Has been cancelled
Test / rust-clippy (push) Has been cancelled
Test / rust-fmt-check (pull_request) Successful in 1m4s
Test / rust-clippy (pull_request) Successful in 7m8s
Test / rust-tests (pull_request) Successful in 8m21s
Test / frontend-typecheck (pull_request) Successful in 1m29s
Test / frontend-tests (pull_request) Successful in 1m15s

- 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
This commit is contained in:
Shaun Arman 2026-03-30 15:52:43 -05:00
parent 793ab7d582
commit 16d537c4af
6 changed files with 14 additions and 7 deletions

View File

@ -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 }}

View File

@ -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):**

View File

@ -266,7 +266,12 @@ export const applyRedactionsCmd = (logFileId: string, approvedSpanIds: string[])
// ─── Issue CRUD ───────────────────────────────────────────────────────────────
export const createIssueCmd = (newIssue: NewIssue) =>
invoke<IssueDetail>("create_issue", { newIssue });
invoke<Issue>("create_issue", {
title: newIssue.title,
description: newIssue.description ?? "",
severity: newIssue.severity ?? "P3",
category: newIssue.domain,
});
export const getIssueCmd = (issueId: string) =>
invoke<IssueDetail>("get_issue", { issueId });

View File

@ -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);

View File

@ -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"
}`}
>
<span

View File

@ -53,7 +53,7 @@
body { @apply bg-background text-foreground; }
/* Prevent WebKit/GTK from overriding form control colors with system theme */
input, textarea, select, button {
input, textarea, select {
color: hsl(var(--foreground));
background-color: hsl(var(--background));
-webkit-text-fill-color: hsl(var(--foreground));