# S9 — User automations

## Surface story

The live Shortcuts store contains six definitions and no Shortcuts Automations-tab triggers. The
six labels are reproducible from the read-only `Z_PK, ZNAME` query in `inventory.yaml`; the normal
`shortcuts list` probe failed in this session with `Couldn’t communicate with a helper
application`, so the inventory records that limitation instead of claiming the CLI returned the
names. The six names suggest a small personal set: Music Quiz, Shazam shortcut, Text Last Image,
New Shortcut, Ask ChatGPT, and Take a Break. Only the names are visible through the allowed
channels, so all six carry `unknown` and their purposes/dependencies are explicitly name-based.

The Shortcuts SQLite schema is present, `ZSHORTCUT` counts 6, and `ZTRIGGER` counts 0. Nothing on
this surface is a persistent runtime; `live_now: n/a` is therefore correct for every definition.

Folder Actions are not absent: `defaults read com.apple.FolderActionsDispatcher` showed an opaque
236-byte `folderActions` blob and `folderActionsEnabled = 0`. That means configuration data remains
while the dispatcher is disabled; the blob was not decoded. The direct System Events query failed
with error `-10827`, so the enabled/disabled conclusion is taken from the defaults result as the
spec permits, not from a TCC-bypassing workaround.

## Per-item disposition

- `Music Quiz` — **keep / investigate**. Keep provisionally because it is a named personal shortcut; investigate its action graph in Shortcuts.app if Wolf wants to confirm use.
- `Shazam shortcut` — **keep / investigate**. The name is specific and plausibly useful, but the action graph and actual frequency are unknown.
- `Text Last Image` — **keep / investigate**. The name describes a concrete workflow, while its source and recipient remain unverified.
- `New Shortcut` — **investigate / possible prune**. It is the clearest scratch/leftover candidate by name alone, but no deletion recommendation is safe without Wolf's review.
- `Ask ChatGPT` — **keep / investigate**. The name indicates an OpenAI/ChatGPT integration, but its exact prompt, permissions, and any account-linked behavior were not exposed.
- `Take a Break` — **keep / investigate**. The name suggests a wellbeing/reminder aid, but usage and implementation are unverified.

No item is marked for immediate pruning. The permitted scan cannot inspect action graphs, and the
Shortcuts CLI has no read-only export or delete verb; `shortcuts --help` showed only `run`, `list`,
`view`, and `sign`. `shortcuts run` was not executed because it would execute user automation.

## Confirmed empty sub-surfaces

Every empty branch was checked by a real bounded command:

- **Shortcuts Automations tab:** `sqlite3 -readonly ~/Library/Shortcuts/Shortcuts.sqlite "SELECT count(*) FROM ZTRIGGER;"` returned `0`.
- **Automator workflows:** `ls -la ~/Library/Workflows 2>&1` returned `ls: /Users/wolf/Library/Workflows: No such file or directory`; `find ~/Library/Workflows -maxdepth 3 -iname '*.workflow' 2>/dev/null` returned no paths.
- **User Quick Action Services:** `ls -la ~/Library/Services 2>&1` showed the directory with `total 0` and no entries.
- **System Services:** `ls -la /Library/Services 2>&1` returned `ls: /Library/Services: No such file or directory`.
- **AppleScript and Folder Action scripts:** `find ~/Library/Scripts -maxdepth 3 2>&1` returned `find: /Users/wolf/Library/Scripts: No such file or directory`; the parent directory is absent, not merely empty.
- **Third-party automation app bundles:** the exact six-app loop for Keyboard Maestro, Hammerspoon, Alfred 4/5, Raycast, and BetterTouchTool emitted no `FOUND:` lines.
- **Third-party configuration paths:** the exact spec loop emitted no `EXISTS:` lines; a bounded expanded-`$HOME` recheck of the same five config paths also emitted no `EXISTS:` lines.

Folder Actions are deliberately excluded from this empty list because the defaults domain has a
non-empty opaque blob, even though the dispatcher is disabled.

## Self-use answers

1. **What Shortcuts does Wolf actually have, and which look used versus leftover?** The six are
   Music Quiz, New Shortcut, Shazam shortcut, Text Last Image, Ask ChatGPT, and Take a Break. The
   names make New Shortcut look most like a default-named scratch item; no permitted evidence
   proves actual run frequency for any item.
2. **Are scheduled/triggered Automations configured?** No: the Shortcuts schema exists and the
   required `ZTRIGGER` count is `0`.
3. **Is Folder Actions configured-but-disabled or never configured?** Configured-but-disabled is
   the evidenced conclusion: an opaque `folderActions` blob has length 236 while
   `folderActionsEnabled = 0`. The blob's contents were not decoded, so its individual historical
   configuration is unknown.
4. **Does Wolf use Automator workflows or Quick Action Services?** This scan found no user
   workflows, no user Services entries, and no system Services directory at the checked paths. It
   proves absence at those paths, not day-to-day behavior.
5. **Is a third-party automation tool installed anywhere checked?** No app bundle or checked config
   path produced a hit for Keyboard Maestro, Hammerspoon, Alfred 4/5, Raycast, or BetterTouchTool.
6. **Which empty branches were command-verified?** The list above names every one: ZTRIGGER,
   Workflows, user Services, system Services, Scripts, and both third-party presence/configuration
   checks, with their exact outputs.
7. **What has the least setup friction for one more automation surface?** Given this evidence,
   Shortcuts Automations has the least setup friction: Shortcuts is already present with six
   definitions and the Automations table is empty. This is a setup-friction recommendation from
   the observed inventory, not evidence that Wolf wants another automation or that a trigger would
   be appropriate.

## ⚠ Gaps and deferred verification

- ⚠ `shortcuts list` could not communicate with its helper application. The six labels therefore
  come from the required named-column SQLite read, and the gate's CLI label parity probe must be
  treated as a live-environment dependency.
- ⚠ Shortcut action graphs, execution history, and secrets inside actions were not exposed by the
  permitted read-only channels. `contains_secrets: false` means no credential appeared in visible
  metadata; it is not a claim that opaque action data is secret-free.
- ⚠ System Events access was denied with error `-10827`; the defaults result is the permitted
  degraded source for Folder Actions enabled state.

## Gate status

The canonical gate ran in the foreground and wrote `_pipeline/gate-run.txt`. All checks passed
except `parity-shortcuts-count`: the six SQLite-evidenced labels were reported as not-on-machine
because the gate's required `shortcuts list` probe returned no labels after the helper-application
error. The unit is not marked landed or DONE until that live CLI parity condition can be resolved.
