Skip to content

Feat/backlog priority fixes - #6

Merged
quantizor merged 10 commits into
mainfrom
feat/backlog-priority-fixes
Jul 24, 2026
Merged

Feat/backlog priority fixes#6
quantizor merged 10 commits into
mainfrom
feat/backlog-priority-fixes

Conversation

@quantizor

Copy link
Copy Markdown
Owner

No description provided.

Copilot AI review requested due to automatic review settings July 24, 2026 17:48
Unified subsystem for daemon, supervisor, health, app, and deeplink; spool files stay the child-output source of truth.
Bare localhost collapses every project onto one browser origin; prefer <slug>.localhost. Warn only, never fail.
One-bullet render helper so hook install can print a discoverable ensure hint without editing agent docs.
Shared DeepLink + DeepLinkRunner + notification action map so CLI and app dispatch the same verbs.
recoverAtStartup resolves specs via merged config+registry and prunes orphans; daemon install capture-and-re-ensures like restart.
Richer Core Spotlight labels with brand subtitle; ranking stays best-effort within the app's own results.
Register CFBundleURLTypes, handle GetURL for LSUIElement, Open/Why notification actions, hook-install discovery tip, and Launch Services smoke.
Document recoverAtStartup merge view, Interactive ProcessType verification, Spotlight ranking ceiling, and prefer project-named servers with *.localhost hosts.
Wrap changelog-github so Thanks @quantizor is omitted while other contributors still get credited.
@quantizor
quantizor force-pushed the feat/backlog-priority-fixes branch from 29a11bc to 39b40ed Compare July 24, 2026 17:50

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR bundles several “backlog priority” improvements across the daemon, CLI, and menu bar app, centered on deep-link dispatch (devctl://), better Spotlight discovery, more unified logging, and safer startup/install recovery behaviors.

Changes:

  • Add a shared DevCtlKit deep-link surface (DeepLink, DeepLinkRunner) with CLI support (devctl link, hidden devctl x-url) and app dispatch (URL opens + notification actions).
  • Expand Spotlight indexing quality (better titles/keywords, pin-aware ranking, last-used updates, Siri donation) and introduce shared Spotlight label/token generation in DevCtlKit.
  • Improve operational ergonomics: unified logging facade (DevCtlLog), bare-loopback host warnings in config validation, and more robust recover-at-startup + launchd install/restart re-ensure behavior.

Reviewed changes

Copilot reviewed 43 out of 43 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
Tests/DevCtlKitTests/SpotlightLabelTests.swift Adds unit tests for Spotlight label title/subtitle/keywords behavior.
Tests/DevCtlKitTests/ProjectConfigTests.swift Adds validation tests for bare loopback host warnings.
Tests/DevCtlKitTests/DiscoveryStanzaTests.swift Adds tests for the hook “discovery tip” stanza rendering.
Tests/DevCtlKitTests/DevCtlLogTests.swift Adds tests for the new unified logging facade and recording backend.
Tests/DevCtlKitTests/DeepLinkTests.swift Adds deep-link parsing/round-trip/project-resolution tests.
Tests/DevCtlKitTests/DeepLinkRunnerTests.swift Adds tests for deep-link dispatch logic and side effects.
Tests/DevCtlKitTests/DeepLinkNotificationActionTests.swift Adds tests for notification action → deep-link mapping.
Tests/DevCtlDaemonCoreTests/RecoverAtStartupTests.swift Adds coverage for boot/crash recovery behaviors and orphan state pruning.
Sources/DevCtlKit/Spotlight/SpotlightLabel.swift Introduces shared Spotlight label/title/keyword generation.
Sources/DevCtlKit/Log/DevCtlLog.swift Introduces unified logging facade with OSLog + recording backend.
Sources/DevCtlKit/DeepLink/DeepLinkRunner.swift Implements deep-link dispatch via daemon calls + side effects.
Sources/DevCtlKit/DeepLink/DeepLinkNotificationAction.swift Maps notification action identifiers into DeepLink values.
Sources/DevCtlKit/DeepLink/DeepLink.swift Adds deep-link parse/serialize and project-slug resolution logic.
Sources/DevCtlKit/Config/ProjectConfig.swift Adds config warnings for bare loopback hosts/URLs and helper detection.
Sources/DevCtlKit/Agent/DiscoveryStanza.swift Adds a unit-testable “discovery tip” string generator for hooks.
Sources/DevCtlDaemonCore/Supervisor/ServerSupervisor.swift Adds supervisor log marker when a server becomes healthy.
Sources/DevCtlDaemonCore/Registry/Registry.swift Adds state-row removal API to prune orphaned persisted state.
Sources/DevCtlDaemonCore/Control/ControlServer.swift Adds more daemon logging, improves recoverAtStartup spec resolution + orphan pruning.
Sources/DevCtlApp/SpotlightIndexer.swift Overhauls Spotlight indexing payload, ranking hints, persistence, and donation/update hooks.
Sources/DevCtlApp/DevCtlApp.swift Expands activation handling (Spotlight, devctl:// opens, notification actions) and improves a11y labels/help.
Sources/DevCtlApp/DashboardView.swift Hooks Spotlight “note opened” updates into dashboard open actions; adds a11y label.
Sources/DevCtlApp/DaemonModel.swift Adds actionable notification metadata + category + sound and logs notification emission.
Sources/DevCtlApp/AppDeepLink.swift Adds app-side deep-link execution and notification category registration.
Sources/devctl/LaunchdAdmin.swift Makes install/upgrade capture and re-ensure running servers (same contract as restart).
Sources/devctl/CLI.swift Adds link and hidden x-url, improves hook install output (statusline example + discovery tip), updates “web” examples to “myproj”.
scripts/verify-interactive-qos.sh Adds a verification script for launchd spawn type and child session leadership.
scripts/smoke.sh Extends smoke to validate link + x-url and app bundle URL scheme declaration.
scripts/smoke-launchd.sh Extends launchd smoke to cover install-upgrade bounce + re-ensure contract.
scripts/smoke-deeplink.sh Adds Launch Services E2E smoke for devctl:// warm/cold open flows.
scripts/make-app-bundle.sh Adds CFBundleURLTypes so the app declares the devctl:// URL scheme.
README.md Updates quick-start naming/examples and documents project-named servers + <project>.localhost host guidance.
docs/design.md Updates design spec for deep links, Spotlight, config warnings, and verified launchd interactive claim.
docs/cli-contract.md Documents devctl link and devctl x-url, updates config/launchd and Spotlight contract text.
CLAUDE.md Updates repo guide with deep links/logging/smoke scripts and updated codebase map.
BACKLOG.md Replaces resolved backlog items and adds follow-on items (App Intents, Spotlight constraints, etc.).
.changeset/README.md Documents custom changelog wrapper behavior.
.changeset/deeplink-oslog.md Adds release note entry for deep links + unified logging (but package key needs correction).
.changeset/config.json Switches Changesets changelog generator to local wrapper.
.changeset/changelog.cjs Adds a wrapper to omit “self thanks” while preserving thanks for other contributors.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread .changeset/deeplink-oslog.md
Comment thread Sources/DevCtlApp/SpotlightIndexer.swift Outdated
Comment thread Sources/DevCtlApp/SpotlightIndexer.swift
Comment thread Sources/DevCtlKit/DeepLink/DeepLinkRunner.swift
Comment thread scripts/verify-interactive-qos.sh Outdated
Use JSONCoding for Spotlight entry persistence, put a status command in the missing-head hint, and drop the ripgrep dependency from verify-interactive-qos.
@quantizor
quantizor merged commit f9ccd1f into main Jul 24, 2026
3 checks passed
@quantizor
quantizor deleted the feat/backlog-priority-fixes branch July 24, 2026 17:56
@github-actions github-actions Bot mentioned this pull request Jul 24, 2026
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.

2 participants