rcourtman
20c2f27057
feat(mcp): add list_resource_capabilities tool
...
Agents had no way to discover which governed capabilities a resource
advertises before calling plan_action. The data existed (Resource.Capabilities
with full param schemas) but was only surfaced as count-limited prose
facts inside get_resource_context, which deliberately omits parameter
schemas. This forced agents to guess capabilityName and params.
Add a dedicated structured surface: GET /api/agent/resource-capabilities/{id}
returns the canonical ResourceCapability list (name, type, approval level,
platform, full parameter schemas) for a single resource. A resource with
no advertised capabilities returns 200 with an empty array, the signal
to skip plan_action.
Internal plumbing already existed (registry.Get + Resource.Capabilities,
the same path plan_action validates against); this is the wiring work at
the canonical agent-surface layer. The tools/call dispatch is fully
generic so no mcp.go changes were needed.
Companion to get_resource_context: that tool remains the human-readable
prose summary; this is the structured schema surface for action planning.
- Manifest capability, name/path constants, output schema helper
- Handler mirroring HandleResourceContext error/scope patterns
- Route registration behind monitoring:read
- Activity telemetry mapping to resource_context class
- Regenerated cmd/pulse-mcp/README.md via generate-pulse-intelligence-docs
- Contract updates: api-contracts, ai-runtime, agent-lifecycle, storage-recovery
- Tests: manifest ownership/addressing/table-test, handler happy/empty/404/405,
contract pinning capability presence/scope/wire-shape
2026-07-03 17:07:41 +01:00
rcourtman
b1fdefdd50
Normalize Docker container CPU capacity
...
Refs #1293
2026-07-03 11:51:08 +01:00
rcourtman
28cee7c467
Prefer PVE 9 guest-agent privileges in setup
...
Refs #1466
2026-07-03 11:15:51 +01:00
rcourtman
806fd7409c
Show cluster labels in Proxmox node names
...
Refs #1475
2026-07-03 10:52:18 +01:00
rcourtman
c1d8cd8f11
Prefer agent temperatures over SSH fallback
...
Refs #1473
Refs #1509
2026-07-03 10:43:28 +01:00
rcourtman
8b1781b013
Ground Patrol run summaries in accepted findings
...
Refs #1512
2026-07-03 10:15:55 +01:00
rcourtman
875e414b4b
Align resource staleness with poll cadence
...
Refs #1468
2026-07-03 09:05:12 +01:00
rcourtman
6344d17fd1
Allow local Pulse HTTP agent URLs
...
Refs #1505
2026-07-03 00:24:40 +01:00
rcourtman
282bee7a28
Scope removed host-agent blocks by identity
...
Refs #1495
2026-07-03 00:02:00 +01:00
rcourtman
477c1e3da6
Alert on expected QEMU guest agent outages
...
Refs #1508
2026-07-02 23:52:02 +01:00
rcourtman
dcf541784d
Bound server state broadcast memory
...
Refs #1442
2026-07-02 23:27:49 +01:00
rcourtman
dd357c1ef3
Fix hosted relay onboarding test setup
...
- seed connected relay status before building mobile onboarding payloads
2026-07-02 22:34:37 +01:00
rcourtman
bf96c9cb08
Bump version to 6.0.0
...
- set release version for v6 GA publication
- align Docker defaults and promotion proof with the stable cut
2026-07-02 22:05:56 +01:00
rcourtman
97b9369333
Guard infrastructure import plan approvals
...
- add candidate import approval and preview gate for node onboarding
- document metrics, availability, and proxy role behavior
- lock config auth reads and preserve storage metrics fallback
2026-07-02 21:59:26 +01:00
rcourtman
aa1913d0bb
Record v6 GA owner approval
2026-07-02 21:33:37 +01:00
rcourtman
6c9b4f8e8d
Harden GA telemetry disclosure
2026-07-02 11:50:03 +01:00
rcourtman
c63533790c
Add Proxmox filter route regression coverage
...
Refs #1510
2026-07-01 23:20:27 +01:00
rcourtman
df67c01a64
Fix mobile relay runtime startup
2026-07-01 10:38:57 +01:00
rcourtman
c0ac0762da
Fix security scan findings
...
Harden proxy-auth admin role checks, metrics listener exposure, Teams webhook escaping, and dependency lockfiles.
2026-07-01 09:55:35 +01:00
rcourtman
9dc4386318
Attach mock availability checks to services
2026-06-30 21:16:16 +01:00
rcourtman
55d9bf8610
Fix Machines filter toolbar layout
2026-06-30 17:27:27 +01:00
rcourtman
c759c9a77a
Gate mobile pairing codes on relay readiness
2026-06-30 17:12:55 +01:00
rcourtman
887855e5e5
Remove Proxmox overview Patrol coverage strip
2026-06-30 17:05:06 +01:00
rcourtman
4ac224084e
Guard Proxmox Patrol coverage before hydration
2026-06-30 16:56:35 +01:00
rcourtman
f0c81de00e
Add Patrol safe workflow row guidance
2026-06-30 16:47:55 +01:00
rcourtman
477d549efd
Clarify Patrol mode boundaries
2026-06-30 16:14:55 +01:00
rcourtman
5dbf750136
Add dashboard Explore boundary guardrails
2026-06-30 15:55:22 +01:00
rcourtman
4dacd93078
Add monitor-context Patrol coverage
2026-06-30 15:40:20 +01:00
rcourtman
238c806d1f
Add Patrol row issue scaffolding
2026-06-30 15:20:42 +01:00
rcourtman
a8726a7bc7
Add Patrol calm-day protection posture
2026-06-30 15:06:25 +01:00
rcourtman
9ba5cf1e0f
Group Patrol work signals in the workbench
2026-06-30 14:46:04 +01:00
rcourtman
a05c273b6a
Localize pricing handoff and restore frontend lint
2026-06-30 12:19:00 +01:00
rcourtman
d4e4c7ed79
Add monitor-first Patrol browser proof
2026-06-30 11:44:57 +01:00
rcourtman
229867636d
Add resource priority to Patrol queue
2026-06-30 10:37:54 +01:00
rcourtman
7c75b13d2c
Carry host power sensor readings
2026-06-30 10:02:49 +01:00
rcourtman
d393ccf310
Add typed NVIDIA GPU stats
2026-06-30 09:43:33 +01:00
rcourtman
fe3c0f3ee3
Collect NVIDIA GPU temperatures
2026-06-30 09:11:18 +01:00
rcourtman
d8de95b91f
Show custom provider model catalogs
2026-06-29 23:19:13 +01:00
rcourtman
dcf23fb2ca
Test selected provider model from settings
2026-06-29 23:14:33 +01:00
rcourtman
c8dc45577c
Emit TrueNAS pool status incidents
2026-06-29 22:54:19 +01:00
rcourtman
4eac3b535c
Accept ping alias for availability targets
2026-06-29 22:43:13 +01:00
rcourtman
597c369a63
Add alert delivery diagnosis endpoint
2026-06-29 22:27:01 +01:00
rcourtman
a801f456d6
Improve Patrol SMART disk evidence
2026-06-29 18:17:24 +01:00
rcourtman
6b7d0b45f9
Add agent fleet diagnostics endpoint
2026-06-29 18:03:46 +01:00
rcourtman
73208a2863
Document state summary integration contract
2026-06-29 17:39:11 +01:00
rcourtman
e103278885
Capture v6 GA release target
2026-06-29 15:26:42 +01:00
rcourtman
1510a73e1f
Guard guest disk alert migration identity
...
Add regression coverage ensuring per-disk guest alert migration cannot remap an active alert from one guest onto another. Refs #1511
2026-06-28 21:41:07 +01:00
rcourtman
d20c556db3
Preserve platform tab route state
...
Remember each primary platform tab's last route so URL-backed filters survive tab switches without leaking query state across tabs.
2026-06-28 17:46:00 +01:00
rcourtman
fe32dfffb8
Pin update telemetry privacy boundary
...
Add regression coverage that raw updater failure text cannot escape through the coarse failure category.
2026-06-28 15:40:33 +01:00
rcourtman
d6a21eba98
Add update funnel telemetry
...
Record anonymous 30-day update attempts, successes, failures, and coarse failure categories from local update history.
2026-06-28 15:19:39 +01:00