mirror of
https://github.com/rcourtman/Pulse.git
synced 2026-10-03 04:38:48 +00:00
Correct first-source agent setup wording
Make the setup-completion guidance explain that users run the host installer and that sensor and workload coverage varies by platform. Align English, German and Spanish copy, update coverage tests, and bind a rendered desktop and narrow-browser receipt. Contract-Neutral: Correct misleading first-source copy only; installer behaviour, sensor support and credential scopes are unchanged. Change-source: pulse-maintainer
This commit is contained in:
parent
4de772658b
commit
ab4f04da3d
7 changed files with 70 additions and 27 deletions
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"version": 1,
|
||||
"base_sha": "a5de22f114c723d5f7e2b5c885c7b6d2f836a0d2",
|
||||
"verified_at": "2026-09-28T16:05:00Z",
|
||||
"base_sha": "4de772658b338d5ddca9bf7012b4b7f220edde88",
|
||||
"verified_at": "2026-09-28T16:49:25Z",
|
||||
"result": "passed",
|
||||
"changed_paths": [
|
||||
"frontend-modern/src/i18n/messages.de.ts",
|
||||
|
|
@ -9,13 +9,12 @@
|
|||
"frontend-modern/src/i18n/messages.ts"
|
||||
],
|
||||
"content_sha256": {
|
||||
"frontend-modern/src/i18n/messages.de.ts": "9d2276ee7d3a12bc34981e1fa1d1e11c137fbd867fb529a925408ccae1fc7d74",
|
||||
"frontend-modern/src/i18n/messages.es.ts": "8dff6fb9eb2ef1df2137fc0a947a34dfaa681aa3edde4a069d43ff1911833927",
|
||||
"frontend-modern/src/i18n/messages.ts": "55c9fbf661901f230f12d47b6cd3bbbbf77e2b14a5b54741555ab09da36e3214"
|
||||
"frontend-modern/src/i18n/messages.de.ts": "a670f48140f2d395d59f82c919fdf6d59e9649b224ea9862ee2fd1039e2f2fa4",
|
||||
"frontend-modern/src/i18n/messages.es.ts": "9c4c36c3ab5cccc4880062bda864ec0c6df234d900158de4475c932367d97829",
|
||||
"frontend-modern/src/i18n/messages.ts": "f836ba8cf43d3aa18eed7341d9599983e798eb33d4271315e416804e530a2ae5"
|
||||
},
|
||||
"routes": [
|
||||
"/ (setup completion after unlock and admin creation)",
|
||||
"/settings/infrastructure?add=pick"
|
||||
"/preview/setup-complete?scenario=empty"
|
||||
],
|
||||
"viewports": [
|
||||
{
|
||||
|
|
@ -28,15 +27,15 @@
|
|||
}
|
||||
],
|
||||
"states": [
|
||||
"Fresh rcourtman/pulse:latest (v6.4.1) container in first-run state serving this branch's vite build via PULSE_FRONTEND_DIR, reached over an SSH tunnel to localhost",
|
||||
"Empty first-source completion state shows Connect your first system, the next-step detail telling users to start with the platform API and add the Pulse Agent on Proxmox nodes for temperatures and SMART disk health, and the Ways to connect list",
|
||||
"At 390px the headings, badge, buttons and list wrap without page-level horizontal overflow (scrollWidth 390)",
|
||||
"At desktop width the credentials card and next-step card render with the new copy and no clipping"
|
||||
"Empty first-source setup-completion preview rendered in English, German and Spanish at both widths",
|
||||
"Revised platform API and Pulse Agent descriptions displayed without horizontal overflow or uncaught page errors",
|
||||
"Credential section collapsed after activating its disclosure in each locale and viewport"
|
||||
],
|
||||
"interactions": [
|
||||
"Verified a bootstrap token, created the auto-generated admin, and reached the completion screen",
|
||||
"Clicked Add infrastructure at 390px and confirmed it routes to /settings/infrastructure?add=pick"
|
||||
"Opened each locale preview at desktop and narrow widths",
|
||||
"Collapsed the credentials disclosure and verified the preview password was hidden"
|
||||
],
|
||||
"command": "Claude desktop browser pane against a pulse-dev probe container",
|
||||
"notes": "Copy-only change. Backend was the published v6.4.1 image, frontend is this branch. German and Spanish strings are covered by the localization unit test, not visually checked. Telemetry was disabled on the probe."
|
||||
"command": "pulse-worker-browser web-setup-proof.cjs from the exact assigned workspace root; local Vite preview and Chromium 141.0.7390.37",
|
||||
"artifacts": "/var/lib/pulse-maintainer/worker-outputs/web-product-fowlk7bi/browser-proof-artifacts",
|
||||
"notes": "No backend or installed release was exercised. Screenshots were inspected for English desktop and narrow, German narrow and Spanish narrow; result.json records all six rendered states."
|
||||
}
|
||||
|
|
|
|||
|
|
@ -28,8 +28,8 @@ const migratedFirstSessionCopy = [
|
|||
'Recommended next step',
|
||||
'Ways to connect',
|
||||
'Pulse reads VMs, storage, and health through the platform API.',
|
||||
'A small program on a Linux, Windows, or macOS machine',
|
||||
'Open Add infrastructure and pick what you run.',
|
||||
'Run the installer on a Linux, Windows, or macOS host',
|
||||
'Open Add infrastructure and choose a platform API connection',
|
||||
'Activate Pulse Pro',
|
||||
'Enter the activation key from your purchase email',
|
||||
'Enter activation key',
|
||||
|
|
|
|||
|
|
@ -92,7 +92,17 @@ describe('SetupCompletionPanel', () => {
|
|||
).toBeInTheDocument();
|
||||
expect(
|
||||
screen.getByText(
|
||||
'A small program on a Linux, Windows, or macOS machine, such as a Proxmox node, that reports its temperatures, disk health, Docker, and Kubernetes.',
|
||||
'Run the installer on a Linux, Windows, or macOS host. Pulse Agent reports host telemetry. Temperatures, SMART, Docker, and Kubernetes are available only where supported.',
|
||||
),
|
||||
).toBeInTheDocument();
|
||||
expect(
|
||||
screen.getByText(
|
||||
'Open Add infrastructure and choose a platform API connection or a host to install Pulse Agent on.',
|
||||
),
|
||||
).toBeInTheDocument();
|
||||
expect(
|
||||
screen.getByText(
|
||||
'Connect Proxmox, TrueNAS, or VMware through their API, or run the Pulse Agent installer on a standalone host. On Proxmox nodes, the agent can add host-local temperatures and SMART data when available.',
|
||||
),
|
||||
).toBeInTheDocument();
|
||||
expect(screen.queryByText('What happens next')).not.toBeInTheDocument();
|
||||
|
|
|
|||
|
|
@ -53,6 +53,40 @@ describe('i18n foundation', () => {
|
|||
expect(t('settings.shell.navigationTitle')).toBe('Ajustes');
|
||||
});
|
||||
|
||||
it('describes first-source agent installation and optional coverage accurately in each locale', () => {
|
||||
const expected = {
|
||||
en: {
|
||||
installer: 'Run the installer',
|
||||
supported: 'only where supported',
|
||||
standalone: 'standalone host',
|
||||
},
|
||||
de: {
|
||||
installer: 'Fuehren Sie den Installer',
|
||||
supported: 'nur verfuegbar',
|
||||
standalone: 'eigenstaendigen Rechner',
|
||||
},
|
||||
es: {
|
||||
installer: 'Ejecuta el instalador',
|
||||
supported: 'dependen de la compatibilidad',
|
||||
standalone: 'equipo independiente',
|
||||
},
|
||||
} as const;
|
||||
|
||||
for (const locale of ['en', 'de', 'es'] as const) {
|
||||
const messages = I18N_MESSAGES[locale];
|
||||
expect(messages['setup.completion.sourceOptions.agent.description']).toContain(
|
||||
expected[locale].installer,
|
||||
);
|
||||
expect(messages['setup.completion.sourceOptions.agent.description']).toContain(
|
||||
expected[locale].supported,
|
||||
);
|
||||
expect(messages['setup.completion.nextStep.detail.empty']).toContain(
|
||||
expected[locale].standalone,
|
||||
);
|
||||
expect(messages['setup.completion.nextStep.summary.empty']).toContain('Agent');
|
||||
}
|
||||
});
|
||||
|
||||
it('detects initial locale from stored preference before browser language', () => {
|
||||
localStorage.setItem(STORAGE_KEYS.LOCALE_PREFERENCE, 'es-MX');
|
||||
|
||||
|
|
|
|||
|
|
@ -233,14 +233,14 @@ export const DE_MESSAGE_OVERRIDES = {
|
|||
'setup.completion.nextStep.detail.both':
|
||||
'Ueber Infrastruktur hinzufuegen koennen Sie jederzeit weitere Systeme per API, mit dem Agent oder mit beidem verbinden.',
|
||||
'setup.completion.nextStep.detail.empty':
|
||||
'Verbinden Sie zuerst Proxmox, TrueNAS oder VMware ueber ihre API. Installieren Sie auf Proxmox-Knoten zusaetzlich den Pulse Agent, um Temperaturen und Festplattenzustand (SMART) zu erhalten, die die Proxmox-API nicht meldet.',
|
||||
'Verbinden Sie Proxmox, TrueNAS oder VMware ueber ihre API oder fuehren Sie den Pulse Agent-Installer auf einem eigenstaendigen Rechner aus. Auf Proxmox-Knoten kann der Agent verfuegbare lokale Temperaturen und SMART-Daten ergaenzen.',
|
||||
'setup.completion.nextStep.label': 'Naechster Schritt',
|
||||
'setup.completion.nextStep.summary.connected.singular':
|
||||
'Oeffnen Sie Infrastruktur, um Ihr erstes verbundenes System zu pruefen.',
|
||||
'setup.completion.nextStep.summary.connected.plural':
|
||||
'Oeffnen Sie Infrastruktur, um Ihre verbundenen Systeme zu pruefen.',
|
||||
'setup.completion.nextStep.summary.empty':
|
||||
'Oeffnen Sie Infrastruktur hinzufuegen und waehlen Sie aus, was Sie betreiben. Pulse kann sich mit der API verbinden, den Agent installieren oder beides.',
|
||||
'Oeffnen Sie Infrastruktur hinzufuegen und waehlen Sie eine Plattform-API oder einen Rechner, auf dem Sie Pulse Agent installieren.',
|
||||
'setup.completion.nextStep.title.connected': 'Infrastruktur oeffnen',
|
||||
'setup.completion.nextStep.title.empty': 'Erstes System zur Ueberwachung hinzufuegen',
|
||||
'setup.completion.proActivation.action': 'Aktivierungsschluessel eingeben',
|
||||
|
|
@ -249,7 +249,7 @@ export const DE_MESSAGE_OVERRIDES = {
|
|||
'setup.completion.proActivation.title': 'Pulse Pro aktivieren',
|
||||
'setup.completion.resource.unknownName': 'Unbekannt',
|
||||
'setup.completion.sourceOptions.agent.description':
|
||||
'Ein kleines Programm auf einem Linux-, Windows- oder macOS-Rechner, etwa einem Proxmox-Knoten, das dessen Temperaturen, Festplattenzustand, Docker und Kubernetes meldet.',
|
||||
'Fuehren Sie den Installer auf einem Linux-, Windows- oder macOS-Rechner aus. Der Agent meldet Rechnertelemetrie. Temperaturen, SMART, Docker und Kubernetes sind nur verfuegbar, wenn Rechner und Einrichtung sie unterstuetzen.',
|
||||
'setup.completion.sourceOptions.agent.title': 'Pulse Agent',
|
||||
'setup.completion.sourceOptions.both.description':
|
||||
'Verbinden Sie Proxmox per API fuer den ganzen Cluster und fuegen Sie den Agent auf den Knoten hinzu, deren Temperaturen und Festplattenzustand Sie sehen wollen.',
|
||||
|
|
|
|||
|
|
@ -227,14 +227,14 @@ export const ES_MESSAGE_OVERRIDES = {
|
|||
'setup.completion.nextStep.detail.both':
|
||||
'Usa Agregar infraestructura cuando quieras para conectar más sistemas por API, con el agente o de ambas formas.',
|
||||
'setup.completion.nextStep.detail.empty':
|
||||
'Empieza conectando Proxmox, TrueNAS o VMware a través de su API. En los nodos Proxmox, instala también Pulse Agent para añadir temperaturas y estado de discos (SMART), que la API de Proxmox no informa.',
|
||||
'Conecta Proxmox, TrueNAS o VMware mediante su API, o ejecuta el instalador de Pulse Agent en un equipo independiente. En nodos Proxmox, el agente puede añadir temperaturas locales y datos SMART cuando estén disponibles.',
|
||||
'setup.completion.nextStep.label': 'Siguiente paso',
|
||||
'setup.completion.nextStep.summary.connected.singular':
|
||||
'Abre Infraestructura para revisar tu primer sistema conectado.',
|
||||
'setup.completion.nextStep.summary.connected.plural':
|
||||
'Abre Infraestructura para revisar tus sistemas conectados.',
|
||||
'setup.completion.nextStep.summary.empty':
|
||||
'Abre Agregar infraestructura y elige lo que usas. Pulse puede conectarse a su API, instalar su agente o ambas cosas.',
|
||||
'Abre Agregar infraestructura y elige una conexión por API o un equipo en el que instalar Pulse Agent.',
|
||||
'setup.completion.nextStep.title.connected': 'Abrir Infraestructura',
|
||||
'setup.completion.nextStep.title.empty': 'Agrega el primer sistema que quieres monitorizar',
|
||||
'setup.completion.proActivation.action': 'Introducir clave de activación',
|
||||
|
|
@ -243,7 +243,7 @@ export const ES_MESSAGE_OVERRIDES = {
|
|||
'setup.completion.proActivation.title': 'Activar Pulse Pro',
|
||||
'setup.completion.resource.unknownName': 'Desconocido',
|
||||
'setup.completion.sourceOptions.agent.description':
|
||||
'Un pequeño programa en un equipo Linux, Windows o macOS, como un nodo Proxmox, que informa de sus temperaturas, estado de discos, Docker y Kubernetes.',
|
||||
'Ejecuta el instalador en un equipo Linux, Windows o macOS. El agente informa de la telemetría del equipo. Las temperaturas, SMART, Docker y Kubernetes dependen de la compatibilidad del equipo y la configuración.',
|
||||
'setup.completion.sourceOptions.agent.title': 'Pulse Agent',
|
||||
'setup.completion.sourceOptions.both.description':
|
||||
'Conecta Proxmox por API para todo el clúster y añade el agente en los nodos donde quieras ver temperaturas y estado de discos.',
|
||||
|
|
|
|||
|
|
@ -46,14 +46,14 @@ export const EN_MESSAGES = {
|
|||
'setup.completion.nextStep.detail.both':
|
||||
'Use Add infrastructure any time to connect more systems through their API, with the agent, or both.',
|
||||
'setup.completion.nextStep.detail.empty':
|
||||
'Start by connecting Proxmox, TrueNAS, or VMware through their API. On Proxmox nodes, also install the Pulse Agent to add temperatures and disk health (SMART), which the Proxmox API does not report.',
|
||||
'Connect Proxmox, TrueNAS, or VMware through their API, or run the Pulse Agent installer on a standalone host. On Proxmox nodes, the agent can add host-local temperatures and SMART data when available.',
|
||||
'setup.completion.nextStep.label': 'Next step',
|
||||
'setup.completion.nextStep.summary.connected.singular':
|
||||
'Open Infrastructure to review your first connected system.',
|
||||
'setup.completion.nextStep.summary.connected.plural':
|
||||
'Open Infrastructure to review your connected systems.',
|
||||
'setup.completion.nextStep.summary.empty':
|
||||
'Open Add infrastructure and pick what you run. Pulse can connect to its API, install its agent, or both.',
|
||||
'Open Add infrastructure and choose a platform API connection or a host to install Pulse Agent on.',
|
||||
'setup.completion.nextStep.title.connected': 'Open Infrastructure',
|
||||
'setup.completion.nextStep.title.empty': 'Add the first system to monitor',
|
||||
'setup.completion.proActivation.action': 'Enter activation key',
|
||||
|
|
@ -62,7 +62,7 @@ export const EN_MESSAGES = {
|
|||
'setup.completion.proActivation.title': 'Activate Pulse Pro',
|
||||
'setup.completion.resource.unknownName': 'Unknown',
|
||||
'setup.completion.sourceOptions.agent.description':
|
||||
'A small program on a Linux, Windows, or macOS machine, such as a Proxmox node, that reports its temperatures, disk health, Docker, and Kubernetes.',
|
||||
'Run the installer on a Linux, Windows, or macOS host. Pulse Agent reports host telemetry. Temperatures, SMART, Docker, and Kubernetes are available only where supported.',
|
||||
'setup.completion.sourceOptions.agent.title': 'Pulse Agent',
|
||||
'setup.completion.sourceOptions.both.description':
|
||||
'Connect Proxmox by API for the whole cluster, then add the agent on the nodes where you want temperatures and disk health.',
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue