mirror of
https://github.com/rcourtman/Pulse.git
synced 2026-10-19 10:33:29 +00:00
Fix discovery proposal copy style
This commit is contained in:
parent
defc24af83
commit
b0de67332f
4 changed files with 35 additions and 44 deletions
|
|
@ -2045,6 +2045,12 @@ served clones. Proof: `TestClonedResourcesPreservePlatformAdmission` and
|
|||
|
||||
## Current State
|
||||
|
||||
Discovery-led availability proposals present their evidence and canonical
|
||||
attachment boundary as short, complete sentences in both the inline card and
|
||||
machine-wide review. The colocated component test pins that operator-facing
|
||||
copy so the shared copy-style audit cannot regress it back to semicolon-joined
|
||||
instructions.
|
||||
|
||||
### Provider workflows hydrate only their active route inventory
|
||||
|
||||
Docker / Podman, Kubernetes, TrueNAS, and VMware surfaces declare an explicit
|
||||
|
|
|
|||
|
|
@ -1,37 +1,13 @@
|
|||
{
|
||||
"version": 1,
|
||||
"base_sha": "65bec55229d7b0ce94115740c8e45f19481f25c9",
|
||||
"verified_at": "2026-08-30T17:24:54Z",
|
||||
"base_sha": "defc24af837b91428fbee939d09cd31e9559fb4f",
|
||||
"verified_at": "2026-08-30T18:33:03Z",
|
||||
"result": "passed",
|
||||
"changed_paths": [
|
||||
"frontend-modern/src/api/discovery.ts",
|
||||
"frontend-modern/src/components/Discovery/AvailabilityProposalCard.tsx",
|
||||
"frontend-modern/src/components/Discovery/DiscoveryTab.tsx",
|
||||
"frontend-modern/src/components/Discovery/availabilityProposalModel.ts",
|
||||
"frontend-modern/src/components/Discovery/useDiscoveryTabState.ts",
|
||||
"frontend-modern/src/components/Infrastructure/ResourceDetailDrawer.tsx",
|
||||
"frontend-modern/src/components/Infrastructure/ResourceDetailDrawerOverviewTab.tsx",
|
||||
"frontend-modern/src/components/Workloads/GuestDrawer.tsx",
|
||||
"frontend-modern/src/components/Workloads/NodeDrawer.tsx",
|
||||
"frontend-modern/src/features/docker/DockerHostDrawer.tsx",
|
||||
"frontend-modern/src/types/discovery.ts"
|
||||
],
|
||||
"changed_paths": ["frontend-modern/src/components/Discovery/AvailabilityProposalCard.tsx"],
|
||||
"content_sha256": {
|
||||
"frontend-modern/src/api/discovery.ts": "ab530402b9f781725360f2f3a493d249e5e2460fc7b000fecd071ea482245b91",
|
||||
"frontend-modern/src/components/Discovery/AvailabilityProposalCard.tsx": "fd730057d1ce530737d4db85406ab373300e7cb80aff08a3cebb1997703feaea",
|
||||
"frontend-modern/src/components/Discovery/DiscoveryTab.tsx": "34d9bbe317f04e03a475c7f008a09cb0aec7c55d6cc16111887ad1084173a83b",
|
||||
"frontend-modern/src/components/Discovery/availabilityProposalModel.ts": "3b4836202ccd7ea3e3e5a77984066d0992baa1f2aca1ab939d6c646e00de8e73",
|
||||
"frontend-modern/src/components/Discovery/useDiscoveryTabState.ts": "8fe05c6c687fae58871b7cd169d571e6e4e20e0f3658a919f1a4bd1303fee8c6",
|
||||
"frontend-modern/src/components/Infrastructure/ResourceDetailDrawer.tsx": "2da737d42e57b846e2f38872114b352dcf2e19d6f5be06ad5ba394f8d39abf3c",
|
||||
"frontend-modern/src/components/Infrastructure/ResourceDetailDrawerOverviewTab.tsx": "b4d13cc0b945e15d73f0b5d3cc5f07d7081728c1b81673566c7b65af9e444938",
|
||||
"frontend-modern/src/components/Workloads/GuestDrawer.tsx": "7516b22879ff63eca143e1b76f18bc1b86602ddb20d9fd6af74be01a529a6ab5",
|
||||
"frontend-modern/src/components/Workloads/NodeDrawer.tsx": "6b43a190bab1a666a41395edfe8e4dda6fa0554dd276121155148a846accf781",
|
||||
"frontend-modern/src/features/docker/DockerHostDrawer.tsx": "5d1125eddecc8a9d543c7497af4a1ba67032a11af6402aae22265a7bc10aa7e5",
|
||||
"frontend-modern/src/types/discovery.ts": "4831b27ebf6577411f634f8bad01c7735e47bc4d212f8d4ad29790a68e4cf251"
|
||||
"frontend-modern/src/components/Discovery/AvailabilityProposalCard.tsx": "8432b423e90ebb0e8dbc56ae82535b992bb7715be688cf6f95be34c1d12564e4"
|
||||
},
|
||||
"routes": [
|
||||
"/docker/overview?q=uptime-kuma"
|
||||
],
|
||||
"routes": ["/docker/overview?q=uptime-kuma"],
|
||||
"viewports": [
|
||||
{
|
||||
"width": 1280,
|
||||
|
|
@ -43,17 +19,14 @@
|
|||
}
|
||||
],
|
||||
"states": [
|
||||
"discovered Uptime Kuma service with an evidence-bound inactive verification proposal",
|
||||
"operator-edited check name and five-minute cadence with Pulse server observation",
|
||||
"safe proposal test reporting an unresolved discovered hostname without creating a check",
|
||||
"machine-wide review listing HTTP service proposals without guessing canonical attachments",
|
||||
"desktop and phone-width proposal card and machine-review dialog layouts"
|
||||
"current-build AvailabilityProposalCard with a discovered Uptime Kuma verification proposal",
|
||||
"inline proposal evidence and canonical attachment copy",
|
||||
"open machine assurance suggestions dialog with one reviewable HTTP service",
|
||||
"desktop and phone-width proposal card and dialog layouts"
|
||||
],
|
||||
"interactions": [
|
||||
"opened a Docker workload drawer, Manage, Access, and embedded Discovery analysis",
|
||||
"changed the operator-owned name and interval while preserving the inferred endpoint",
|
||||
"ran Test proposal and confirmed failure feedback remained inside the proposal",
|
||||
"opened and closed Review machine suggestions and inspected the scrollable service list",
|
||||
"verified the proposal card and machine-review dialog at desktop and phone widths"
|
||||
"opened Review machine suggestions and verified the evidence-specific dismissal copy",
|
||||
"closed the machine suggestions dialog with Escape",
|
||||
"verified card and dialog bounds, wrapping, scrolling, and absence of horizontal overflow at desktop and phone widths"
|
||||
]
|
||||
}
|
||||
|
|
|
|||
|
|
@ -230,8 +230,8 @@ export const AvailabilityProposalCard: Component<AvailabilityProposalCardProps>
|
|||
</span>
|
||||
</div>
|
||||
<p class="mt-1 max-w-2xl text-xs text-blue-800 dark:text-blue-200">
|
||||
Pulse inferred a useful check from this service. Review exactly what will run;
|
||||
nothing is created until you choose the active-check action below.
|
||||
Pulse inferred a useful check from this service. Review exactly what will run.
|
||||
Nothing is created until you choose the active-check action below.
|
||||
</p>
|
||||
</div>
|
||||
<Button size="sm" variant="ghost" onClick={() => setShowBulkReview(true)}>
|
||||
|
|
@ -408,8 +408,8 @@ export const AvailabilityProposalCard: Component<AvailabilityProposalCardProps>
|
|||
</h2>
|
||||
<p class="mt-1 text-sm text-muted">
|
||||
Review the services discovered through{' '}
|
||||
{props.discovery.hostname || props.targetId}. Dismissing is evidence-specific;
|
||||
creating a check still happens from its canonical resource so Pulse never
|
||||
{props.discovery.hostname || props.targetId}. Dismissing is evidence-specific.
|
||||
Creating a check still happens from its canonical resource so Pulse never
|
||||
guesses the attachment.
|
||||
</p>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -103,7 +103,19 @@ describe('AvailabilityProposalCard', () => {
|
|||
expect(screen.getByText('Endpoint · inferred')).toBeInTheDocument();
|
||||
expect(screen.getByText('Expected behavior · reviewed default')).toBeInTheDocument();
|
||||
expect(screen.getByText('GET returns HTTP 200–399')).toBeInTheDocument();
|
||||
expect(screen.getByText(/nothing is created until/i)).toBeInTheDocument();
|
||||
expect(
|
||||
screen.getByText(
|
||||
'Pulse inferred a useful check from this service. Review exactly what will run. Nothing is created until you choose the active-check action below.',
|
||||
),
|
||||
).toBeInTheDocument();
|
||||
|
||||
await fireEvent.click(screen.getByRole('button', { name: 'Review machine suggestions' }));
|
||||
expect(
|
||||
screen.getByText(
|
||||
'Review the services discovered through docker-1. Dismissing is evidence-specific. Creating a check still happens from its canonical resource so Pulse never guesses the attachment.',
|
||||
),
|
||||
).toBeInTheDocument();
|
||||
await fireEvent.click(screen.getByRole('button', { name: 'Close machine suggestions' }));
|
||||
|
||||
await fireEvent.change(screen.getByLabelText('Observation location · you control'), {
|
||||
target: { value: 'edge-1' },
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue