Shared contracts, transport, settings/scope propagation, and validation-path work for Tracelet stabilization.
NOTE: Startup and cleanup are handled by worker-base. This skill defines the work procedure.
Use this worker for cross-cutting stabilization work, especially:
agent-browser — use for setup, settings, shell, navigation, and any visible runtime-availability or invalidation flow.tuistory — use when verifying non-mutation, settings side effects, or process/repo safety boundaries.mission.md, mission AGENTS.md, .factory/library/architecture.md, , and ..factory/library/environment.md.factory/library/user-testing.mdagent-browser..factory/services.yaml: typecheck, test, lint, and build if boot/routing/shared contracts changed materially.{
"salientSummary": "Replaced legacy string-RPC usage for settings and repo scope with typed domain APIs, fixed setup-summary invalidation after settings saves, and made runtime-unavailable states explicit for bridge-limited routes.",
"whatWasImplemented": "Updated shared frontend contract types, split transport adapters from page-facing APIs, repaired settings invalidation so Setup, Repo Pulse, and Hygiene refresh after scope changes, and added explicit unavailable-state handling where browser mode previously looked like empty data.",
"whatWasLeftUndone": "",
"verification": {
"commandsRun": [
{
"command": "pnpm typecheck",
"exitCode": 0,
"observation": "Typed domain API changes remained consistent across hooks and routes."
},
{
"command": "cargo test --manifest-path src-tauri/Cargo.toml -- --test-threads=5",
"exitCode": 0,
"observation": "Rust tests still passed after shared contract and invalidation changes."
},
{
"command": "cargo fmt --manifest-path src-tauri/Cargo.toml --check",
"exitCode": 0,
"observation": "Rust formatting check passed."
}
],
"interactiveChecks": [
{
"action": "Saved new code directories in Settings, then revisited Setup, Repo Pulse, and Hygiene without reloading.",
"observed": "All three surfaces reflected the new scope in the same session."
},
{
"action": "Opened a bridge-limited route in browser-only mode.",
"observed": "The route showed truthful unavailable messaging instead of a misleading empty state."
}
]
},
"tests": {
"added": [
{
"file": "src/.../shared-contract-tests.*",
"cases": [
{
"name": "settings invalidation refreshes setup summary and repo-backed queries",
"verifies": "Scope changes propagate coherently across major surface families."
}
]
}
]
},
"discoveredIssues": []
}