Skip to content

Capitalize app name to Orca for desktop installs - #11

Merged
nwparker merged 1 commit into
mainfrom
nwparker/capital-name
Mar 22, 2026
Merged

nwparker merged 1 commit into
mainfrom
nwparker/capital-name

Conversation

@nwparker

Copy link
Copy Markdown
Contributor

Summary

  • Changes productName and executableName in electron-builder.yml from orca to Orca
  • Ensures the app displays as "Orca" when installed on desktop (dock, taskbar, start menu, etc.)

Test plan

  • Build the app and verify it shows as "Orca" in macOS dock/Finder
  • Verify Windows executable and shortcut names show "Orca"

🤖 Generated with Claude Code

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@nwparker
nwparker merged commit 091dc3e into main Mar 22, 2026
@64ix 64ix mentioned this pull request Aug 12, 2026
Jinwoo-H added a commit that referenced this pull request Sep 4, 2026
Jinwoo-H added a commit that referenced this pull request Sep 4, 2026
scolety1 added a commit to scolety1/orca that referenced this pull request Sep 10, 2026
Records the in-progress finding stablyai#11 fix (stale READY_FOR_ADOPTION
after a real adoption) implemented in worktree
tsf-stale-adoption-fix, not yet tested/committed/integrated there --
work paused Read/Edit-only due to sustained CRITICAL/EMERGENCY host
memory pressure this tick.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CdU7C6R8tKG5diqfdjNCPp
scolety1 added a commit to scolety1/orca that referenced this pull request Sep 10, 2026
…ect as READY_FOR_ADOPTION

domain/work-feed-summary.mjs's summarizeWorkFromRuns gains a
canonicalBases param (defaults {}, backward compatible): a COMPLETE run
whose missionId has a real ADVANCED entry in project-canonical-base-
store.mjs's own durable history is now reclassified from
readyForAdoption to recentlyCompleted, with an honest reason. Gated
once at the one real aggregation choke point both the Work page and
the attention feed read from (same pattern as finding stablyai#17's own
resource-pressure-governor gate), rather than widening
projectLiveWorkFeedState's contract (~10 other real call sites depend
on its exact vocabulary).

domain/fleet-attention-status.mjs's completedRecentlyItems was
structurally dead code for every real Keep-Going-run project
(confirmed by direct code reading: it filtered on a live-feed state
projectLiveWorkFeedState never actually emits). Rewritten to consume
work-feed-summary.mjs's own now-adoption-aware recentlyCompleted list.
buildFleetAttentionItems gains a projectCanonicalBases param, threaded
through every real production call site: project-catalog.mjs -> the
real GET /api/work route (http-server.mjs) -> attention-status-
reconciler.mjs (mirrors finding stablyai#15's own pattern) -> command-fleet-
attention-bridge.mjs ("what just finished?") -> command-multi-action-
bridge.mjs's reportAdoptionCandidate ("is X ready?") -> command-self-
improvement-bridge.mjs's READY_FOR_ADOPTION branch.

Self-caught regression during this fix's own verification: the first
draft of completedRecentlyItems started reading the unified
recentlyCompleted list unconditionally, silently re-including legacy
ADOPTED (candidate-decision) projects that a pre-existing, deliberate
exclusion (and its own pre-existing test) kept out of the
COMPLETED_RECENTLY attention category -- the operator already knows
about those, having just clicked ADOPT directly. Fixed by tagging each
recentlyCompletedEntry with a sourceKind (LEGACY_CANDIDATE_DECISION vs
KEEP_GOING_RUN_ADOPTED) and skipping the legacy kind in
completedRecentlyItems, restoring the original exclusion while still
fixing the real gap for run-based adoptions.

9 new tests (work-feed-summary, fleet-attention-status,
command-fleet-attention-bridge), 239 relevant tests run clean across
work-feed-summary/fleet-attention-status/command-fleet-attention-
bridge/command-multi-action-bridge/command-self-improvement-bridge/
attention-status-reconciler/attention-http-routes/command-adoption-
execution/live-work-feed/fleet-work-status (http-work-summary's own
dispatch-tick test excluded from that count -- real, sustained host
resource pressure this tick, ~85-89% used vs the ~76-80% PRESSURED
baseline, reproduced identically in isolation; a pre-existing, already
well-documented resource-contention-sensitive test, unrelated to this
change). Mutation-verified: disabling the override reproduces exactly
the 2 new tests targeting it failing, 0 others.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CdU7C6R8tKG5diqfdjNCPp
scolety1 added a commit to scolety1/orca that referenced this pull request Sep 10, 2026
…r reset

Documents finding stablyai#11's fix (integrated at SHA 5039006) in a new
§6E, updates §7's disclosure bullet, removes the now-superseded §7A
progress note, and updates the session-status header, §12 stability
declaration, §13 SHA ledger, §17 next-highest-value work, and the
terminal declaration block to reflect the fresh STABILITY_PASS = 0 of
2 reset this finding's integration triggers per the mission's own rule.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CdU7C6R8tKG5diqfdjNCPp
scolety1 added a commit to scolety1/orca that referenced this pull request Sep 11, 2026
Documents the fresh 2-pass stability sequence run after finding stablyai#11
reset the counter: Pass stablyai#1 (run stablyai#10, PASS, 2 classic-artifact
failures including one newly-isolated-confirmed RAPID SWITCHING),
one RESOURCE_ABORTED attempt (run stablyai#11, real OOM kill), then Pass stablyai#2
(run stablyai#12, PASS) launched under the owner's explicit ">95%-used-only"
memory rule. Updates the session-status header, §12 stability
declaration, §13 SHA ledger, §14 resource-pressure section, §15/§16
worktree/SHA, §17 next-highest-value work, and the terminal
declaration block to reflect STABILITY_PASS = 2 of 2 at current tip
SHA 9374ba7.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CdU7C6R8tKG5diqfdjNCPp
sinkerine added a commit to sinkerine/orca that referenced this pull request Sep 12, 2026
scolety1 added a commit to scolety1/orca that referenced this pull request Sep 13, 2026
…rojection over Keep Going runs + ResearchMission

Overnight continuation of TSF_PRE_UI_PLATFORM_COHERENCE_V1, Stage 3
(Canonical Owner Work Model). Implemented directly -- RAM read 93.7%
(0.95GB free) at the start of this stage, in the mission's own "no new
heavy Codex process" policy tier.

New `tsf/domain/owner-work-model.mjs`: reconciles live-work-feed.mjs's
9-value run vocabulary and research-mission.mjs's phase vocabulary down
into the mission's own owner-level target vocabulary (PLANNING, WORKING,
WAITING, VERIFYING, NEEDS_YOU, READY, DONE, FAILED, PAUSED) -- reusing,
never re-deriving, the real classifiers these two modules already own.
QUEUED is deliberately omitted (work-feed-summary.mjs's own `queued`
bucket is permanently empty, no real domain signal backs it, per its own
existing test).

Mapping decisions, each grounded in a real, already-established fact
rather than guessed:
- STALLED -> FAILED (Stage 1C's cross-projection-parity.test.mjs already
  established this as the real equivalent).
- REVISION -> VERIFYING (still verification-driven, not a new state).
- READY_FOR_ADOPTION -> READY, COMPLETED -> DONE.
- A real ADVANCED canonical-base entry (finding stablyai#11's own precedent) ->
  DONE, outranking everything else, including a stale READY read.
- run.state === 'PAUSED' is checked BEFORE consulting the live-feed
  classifier (which collapses PAUSED/resource-wait/dispatch-tick-lock into
  one WAITING word) -- the owner model needs PAUSED to stay distinct.
- ResearchMission BLOCKED -> PAUSED, not FAILED: traced BLOCKED's one real
  production path (`cancelResearchMissionDurable`) and confirmed it is
  ONLY ever invoked as a genuine operator-initiated cancel
  (OPERATOR_CANCELLED/OPERATOR_CHAT_CANCEL) -- the real analog of an
  owner-paused run, not a failure.

Documented, not fixed (out of this bounded stage's scope):
research-mission.mjs has a real `mission.state === 'PAUSED'` and a real
`pauseResearchMission` mutator, but `computeResearchMissionPhase` has no
branch for it -- currently unreachable in production (grep confirms
`pauseResearchMission` has no real caller anywhere, same shape as the
Stage 2 Phase 4/5 "domain-layer-only" findings). Recorded in the module's
own comment for whoever eventually wires a real "pause research" caller.

`availableActions` per WorkItem mirrors already-shipped, already-tested
UI policy exactly (KeepGoingPanel.tsx's own canPause/canResume gates;
research-mission.mjs's own MISSION_ALLOWED transition table for
CANCEL_RESEARCH) -- never a new, independently-invented policy.

`buildOwnerWorkItems(projects, keepGoingRuns, researchMissions,
canonicalBases, clock)` is the one real aggregation entry point, mirroring
work-feed-summary.mjs's own iteration shape exactly -- intended as the real
input Stage 5's operator snapshot will read.

19 new tests covering every real state for both subsystems (including the
mission's own explicit list: Keep Going resource wait, ResearchMission
resource wait, held [proven orthogonal -- HOLD/RELEASE_HOLD always
available regardless of run state], paused, Needs You, verification,
ready, done, failed) plus the aggregator. Mutation-tested twice (STALLED
mapping, PAUSED-priority ordering) -- each caught by exactly the
one relevant test, restored, green. 80 collateral tests
(live-work-feed/research-mission/keep-going) unaffected. oxlint clean,
oxfmt applied.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CdU7C6R8tKG5diqfdjNCPp
scolety1 added a commit to scolety1/orca that referenced this pull request Sep 15, 2026
… -- resolved, verified, adoption status

Moves Findings stablyai#2-stablyai#11 to Resolved with real worktree commit SHAs and live
browser-dogfood evidence (isolated disposable runtime, real owner instance
never touched); re-verifies Findings stablyai#12/stablyai#13/stablyai#14/stablyai#16 as still Good As-Is;
honestly flags stablyai#15 as not independently re-exercised (no active research
mission in the fixture data used) but unregressed (no file in this diff
touches that code path).

Records adoption status: implemented and tested in the isolated worktree,
not yet merged to canonical tsf/main. Discloses three real, pre-existing
gaps found while verifying this batch, none introduced by it: the
Projects-grid LifecycleBadge still computing a separate 8-bucket
vocabulary (Findings stablyai#5/stablyai#11's own "apply consistently everywhere"
requirement, not fully met on that one surface); a divergence between
Command's NEEDS_YOU_QUERY and HQ's own Needs You count (two separate,
pre-existing aggregation systems); and a genuine-directive/question-
awareness gap in domain/command-act-model.mjs's VERB_REGISTRY decomposer,
found via a real Codex adversarial-review dispatch and independently
re-verified live (a question like "Should I put X on hold?" can set a
real hold) -- pre-existing across the whole mechanism, not specific to
this batch's own two new hold-phrase additions, and out of scope for a
UI-findings batch to fix.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CdU7C6R8tKG5diqfdjNCPp
scolety1 added a commit to scolety1/orca that referenced this pull request Sep 15, 2026
… primary-state truth

Finding stablyai#5 explicitly named the Projects surface in its own "apply
consistently across HQ, Work, Projects, Project Overview, Command"
requirement, and its own worked example was this exact badge: a PAUSED
project read "ACTIVE" on HQ/Work, "WAITING" on Command, and "PAUSED" on
the Projects card. LifecycleBadge.tsx now reads project.primaryState/
primaryReasonLabel directly instead of project-lifecycle.ts's own,
separate 8-bucket vocabulary (which also folded health into the lifecycle
word via its NEEDS_REPAIR bucket -- the same Finding stablyai#11 state/health
conflation, on a surface the prior report hadn't reconciled).

project-lifecycle.ts's own bucket system (classifyProjectLifecycle) is
deliberately left unchanged for LifecycleFilterBar.tsx/sortProjects --
internal filter/sort richness, not a second owner-facing status label;
removing it would require redesigning the filter UI/URL-param format,
well beyond what this finding asks for.

server/project-catalog.mjs's summarizeCard now threads primaryState/
primaryReasonLabel through (the project object reaching it already
carries both, from the existing withPrimaryState/projectOnboardedProject
wiring); ui/src/lib/types.ts's ProjectCard type gains both fields.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CdU7C6R8tKG5diqfdjNCPp
scolety1 added a commit to scolety1/orca that referenced this pull request Sep 15, 2026
…atus, all 4 gates passed, canonical SHA 77af424

Records the completed closure/adversarial-review/adoption sequence:
real Codex Gate 1 review (session 01a0a6f4-5f41-7730-a1dc-7cf378f6b0c7,
3 findings fixed), Gate 2 discussion-vs-authorization fix, Gate 3A/3B
reconciliation (Projects-grid LifecycleBadge, Needs You aggregation),
Gate 4 live Research Needs You proof, the full Director Diff Review
verdict, and final test/typecheck results. Findings stablyai#5/stablyai#7/stablyai#11's
previously-disclosed Projects-grid gap and Finding stablyai#4's disclosed
question-awareness gap are both closed.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CdU7C6R8tKG5diqfdjNCPp
enrick-dev pushed a commit to enrick-dev/orca that referenced this pull request Oct 15, 2026
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
nwparker added a commit that referenced this pull request Oct 19, 2026
…win projections stay on their host (review-5 #2 #9 #11)

A selected ssh: host that two paired servers proxy now resolves ambiguous at the one
selected-host resolver, so no caller can fall back to this app's own SSH connection.
File Explorer and SSH mutation expectations derive the full {endpoint, place} pair from
resolveOwner, so a server folder's nested SSH target stays the write's host. A local
lineage write projects onto its own host's rows only. The id-only store-write ratchet
now also covers persistence repo-row lookups by id alone (review-5 #10's shape).
nwparker added a commit that referenced this pull request Oct 20, 2026
…win projections stay on their host (review-5 #2 #9 #11) (#30890)

* fix(renderer): host writes route only through the strict owner, and twin projections stay on their host (review-5 #2 #9 #11)

A selected ssh: host that two paired servers proxy now resolves ambiguous at the one
selected-host resolver, so no caller can fall back to this app's own SSH connection.
File Explorer and SSH mutation expectations derive the full {endpoint, place} pair from
resolveOwner, so a server folder's nested SSH target stays the write's host. A local
lineage write projects onto its own host's rows only. The id-only store-write ratchet
now also covers persistence repo-row lookups by id alone (review-5 #10's shape).

* fix(ratchet): the id-only lookup scan also sees optional chaining and destructured ids

* fix(renderer): an unstamped folder keeps reading its host from its repos; editor focus fallback left for a follow-up

* docs(renderer): the File Explorer owner comment names its folder fallback
KyleQuinn888 added a commit to KyleQuinn888/orca that referenced this pull request Oct 27, 2026
…le key via parseAgentJournalItemKey recordId (prefix stripped, codex/claude keyed by own identity fields), same-key keeps max revision, bookkeeping rows pass through; production check 106,792 rows -> 17,454 (99.1% keyed, matches zcode inventory); backfill switched to exhaustive generation scope (review stablyai#11)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant