55 changes since 14.0.101: 18 new or improved features, 16 bug fixes, 1 performance improvement, 3 documentation updates and 17 maintenance changes. The busiest areas: MCP, API and Telemetry.
✨ New and improved
- MCP
- Analytics: The marketing webhook reports a project's first payment and a subscription ending, and a converted trial reaches Google Analytics (#5539)
- Blog: Posts link related posts, show their last update, and are sent to IndexNow (#5541)
- Hosts: Which hosts need attention first, each host's health and readings, four new alerts and uptime (#5535)
- Product marks: One-colour inline SVG everywhere, no logo images (#5521)
- Resource pages: Details cards say only what the hero and header do not, one casing in every language; a Proxmox part says when it cannot be read (#5553)
- Security: In your logs and traces under Connected Signals; monitors, cloud resources, serverless functions and a member's on-call and teams; the Security card in browser fixtures (#5522)
- Session Length: Admin Dashboard > Settings > Session Length - how long a sign-in lasts, for password and SSO sign-ins (Enterprise) (#5570)
- Sign In: Continue with Google on the sign-up and sign-in pages (#5542)
- Signup: Keep the Google Ads campaign a visitor came from (#5579)
- Telemetry: Leave a facet value out (is not) in the Logs, Traces, Exceptions and Metrics explorers (#5574)
- Terraform: People by email address in every resource, oneuptime_user by email, team members invited by address (#5536)
- VMware: World-class vCenter pages - Needs attention, each host's real state, a page for every part, Host Not Responding (#5575)
- Navigation, next: every side menu lights a row's list, only long words hyphenate (tested in WebKit), every trail title in every language (#5524)
- Terraform/OpenTofu provider audit (block 48): choices checked at plan time, imports that settle, secrets kept secret, rows imported by what they join (#5576)
- i18n(dashboard): the session length and Google Ads column titles in every language (4add1ba)
🐛 Bug fixes
- API
- The OpenAPI spec lists the fields and operators a telemetry query takes, time ranges and attribute filters included (#5537)
- The OpenAPI spec lists every field a list can filter, sort and select by, with the operators each takes (#5543)
- The OpenAPI spec lists the fields a telemetry record is created with, and that an update changes none (#5552)
- A telemetry create's spec lists the fields with a default too, and an update of an entity key is refused (#5554)
- Telemetry records can be created through the API, and are kept for their retention (#5556)
- MCP
- Telemetry
- Accounts: An invitation's sign-up link no longer sends the invitee's email and claim token to Google Analytics (#5532)
- Blog: AI answers cite a post's page, not its Markdown copy (#5531)
- Hosts: A failed systemd unit's alert names the unit and says how to look at it (eba396d)
- Permissions: A member limited to some labels or to what they own creates telemetry only for those resources (#5567)
- Signup: Long ad links and phone numbers typed with spaces no longer block sign-up, and Microsoft sign-ups keep their campaign (#5528)
- Website: The VMware page lists Host Not Responding and says twenty-five monitors; the queues mockup reads #5553's labels (689f603)
- Workspace: A reaction's name loses its colons in one pass (be5990c)
⚡ Performance
- MCP: AI agents load the tool list in about 59,000 tokens instead of 300,000, and look up a resource's fields with oneuptime_describe_resource (#5529)
📚 Documentation
- Sign In
- Telemetry: The Services list's Technology column, as each language's Dashboard draws it (049ba46)
🧰 Maintenance (17)
- Telemetry
- E2E
- Logos
- Ops
- API: The Resource AI access route test finds the Host CRUD router #5535 mounts through HostAPI (3f930d8)
- Blog: #5541's suites time the fastest of a few runs, and escape with escapeRegExp (0e812d6)
- Common: The signup campaign suite types its spies as
@jest/globalsmakes them (85f6033) - Docs: The website may name a docs page's Markdown copy for an AI agent (b41fa6a)
- Hosts: The host Overview's (i) wiring reads its one Details card as #5535 built it (250eea1)
- MCP: The coding agent plugin's suite reads its skills' examples as the server now does (1ee3274)
- SMS: The Twilio number lists take a grouped number, as the phone field does (9c2f00b)
- Translations: The extractor's pinned source roots include #5553's three (8e70fcd)
⬆️ Upgrade
Back up first, then follow the upgrade guide. On Docker Compose, run npm run update on the release branch. On Kubernetes, helm upgrade to version 14.0.102 of the chart.
Full changelog: 14.0.101...14.0.102
Contributors: @simlarsen