Update to Uptimely
Snapshot Oct 27, 2026 · 06:07 UTC · version 1.0.1
Package or technical metadata updated
Package or technical metadata updated
Observed in package metadata. These changes alone do not establish a new customer-facing feature.
Up to 3 plugins free · no card required.
All fields and original values.
These are saved file metadata. Open a changed file to read its text edits.
Package file
Oct 9, 2026 · 06:04 UTC
8dd5df798d6970cc10eb855e97bb30075729af447180114daa5ae8ec95d94f5c
Oct 27, 2026 · 06:07 UTC
9f47970a2361d4b868fd262c404d1dcc3f68f6f2ad0aadec56d364971766ea3c
Package file
Oct 9, 2026 · 06:04 UTC
127
Oct 27, 2026 · 06:07 UTC
100
Package file
Oct 9, 2026 · 06:04 UTC
13cc647b03de304288b9ce4c76f5751037f5c71d6a6e877f33a6047d19ff6e7f
Oct 27, 2026 · 06:07 UTC
8f135811e8bcf553366b7bb92fd87a19061b469ecf23628fed174681c7c539d7
Package file
Oct 9, 2026 · 06:04 UTC
3895
Oct 27, 2026 · 06:07 UTC
9527
Compare saved observations
Download comparison JSONChanged files
Choose a file to see its text changes. Binary or large files show metadata only.
.codex-plugin/plugin.json
− removed · + added
--- before +++ after @@ -1,5 +1,4 @@ { - "apps": "./.app.json", "author": { "name": "14930398 Canada Inc." }, @@ -19,8 +18,78 @@ "shortDescription": "Uptime monitors and incidents", "supportURL": "https://app.getuptimely.com/support", "termsOfServiceURL": "https://getuptimely.com/terms", - "websiteURL": "https://getuptimely.com/" + "websiteURL": "https://getuptimely.com/", + "logo": "./assets/logo.png", + "logoDark": "./assets/logo-dark.png", + "composerIcon": "./assets/icon.png", + "composerIconDark": "./assets/icon-dark.png" }, "name": "app-6a7ae32b93b48191906fd8f304ad45ff", - "version": "1.0.0" -} \ No newline at end of file + "version": "1.0.1", + "mcpServers": "./.mcp.json", + "extensions": { + "com.openai": { + "review": { + "test_cases": { + "positive": [ + { + "description": "Project overview after connecting", + "prompt": "Give me an overview of my Uptimely project 26130816-e28a-4ce4-86b8-ac8321ed4929.", + "tools_triggered": "search_tools, then execute_typescript calling external_uptimely_project_overview", + "expected_behavior": "A project summary for Skylark Ops: monitorCount 5, activeIncidentCount 1, activeAlertCount 2, statusPageCount 1 and overallHealth down, because Uptimely rates a project by its worst open signal and one incident is open. The monitors are live and re-checked every minute, so counts and history keep accumulating and may differ slightly from these seeded figures." + }, + { + "description": "Monitors and status history", + "prompt": "List the monitors on project 26130816-e28a-4ce4-86b8-ac8321ed4929, then show me the status history for the API \u2014 core monitor.", + "tools_triggered": "search_tools, then execute_typescript calling external_uptimely_monitor_list, external_uptimely_monitor_get and external_uptimely_monitor_status_history", + "expected_behavior": "Five Website-type monitors named Web \u2014 landing, Web \u2014 app, API \u2014 core, Docs and Edge \u2014 EU, each with its current status and colour, all normally Operational. Then that monitor's configuration and its recorded Operational and Offline transitions with durations, drawn from more than 900 real history segments going back weeks." + }, + { + "description": "Open incident detail", + "prompt": "What incidents are open on that project, and what is the full story on the open one?", + "tools_triggered": "search_tools, then execute_typescript calling external_uptimely_incident_list and external_uptimely_incident_get", + "expected_behavior": "One open incident, Elevated 5xx on API \u2014 core after the 13:40 rollout, id c1000000-0001-4a01-9e77-2b1c9a7f3001, in state Acknowledged at Major severity, with a connection-pool root cause, remediation notes, an internal note and a two-entry state timeline of Identified then Acknowledged. It sits alongside roughly 456 resolved incidents from thirteen months of operating history, the most recent of which carries a saved postmortem." + }, + { + "description": "On-call rotation and status pages", + "prompt": "Who is on call right now on that project, and what status pages do we publish?", + "tools_triggered": "search_tools, then execute_typescript calling external_uptimely_on_call_current and external_uptimely_status_page_list", + "expected_behavior": "One schedule, Primary On-Call \u2014 Platform, with a live-computed currentUser and nextUser from the three-person rotation of Skye Moran, Rhea Calder and Milo Ferrand, plus a rosterHandoffAt on the next Monday at 09:00 UTC. The roster is computed on read rather than cached, so the names shift as the week rolls over. One public status page, Skylark Status, with zero subscribers." + }, + { + "description": "Write path: declare then resolve an incident", + "prompt": "Declare an incident titled Reviewer smoke test on the API \u2014 core monitor d05c7555-4b32-4456-b42b-c222c8799713 in that project, then move it to resolved.", + "tools_triggered": "search_tools, then execute_typescript calling external_uptimely_incident_declare and external_uptimely_incident_state_change", + "expected_behavior": "The incident is created and then resolved, each call returning the incident id, its new state and a new state-timeline entry. Both tools are annotated openWorldHint true, so the client prompts for confirmation before each call. Nothing is emailed to anyone: the seeded status page has zero subscribers and seeded records carry subscriber notification pre-set to Skipped. If a project owner turns Allow AI write operations off, these same calls return a structured AI_WRITE_OPS_DISABLED result with a settings deep link and write nothing." + } + ], + "negative": [ + { + "description": "Local network or device troubleshooting", + "prompt": "My home wifi keeps dropping every evening \u2014 can you work out why?", + "expected_behavior": "" + }, + { + "description": "Third-party outage status not registered as a monitor", + "prompt": "Is Cloudflare having an outage right now?", + "expected_behavior": "" + }, + { + "description": "Operating the infrastructure itself", + "prompt": "The API is throwing 5xx \u2014 restart the service and roll back the last deploy.", + "expected_behavior": "" + } + ] + }, + "demo_recording_url": "https://drive.google.com/file/d/11O1jkJLbVCf7hQs1X84ixHi_f-XHE9__/view", + "commerce": false, + "commerce_description": "" + }, + "publication": { + "countries": [], + "release_notes": "Logo refresh: the listing icons are replaced with the official 1024px brand logo. No change to the MCP server, tools, OAuth or test account." + } + } + }, + "apps": "./.app.json" +}
Full technical diff · 9 changed fields
changed /files/.app.json/sha256
"8dd5df798d6970cc10eb855e97bb30075729af447180114daa5ae8ec95d94f5c"
"9f47970a2361d4b868fd262c404d1dcc3f68f6f2ad0aadec56d364971766ea3c"
changed /files/.app.json/size
127
100
changed /files/.codex-plugin~1plugin.json/sha256
"13cc647b03de304288b9ce4c76f5751037f5c71d6a6e877f33a6047d19ff6e7f"
"8f135811e8bcf553366b7bb92fd87a19061b469ecf23628fed174681c7c539d7"
changed /files/.codex-plugin~1plugin.json/size
3895
9527
added /files/.mcp.json
Field was absent
{
"sha256": "a50b843dbb9db60bb6cd1711cdce61f8344a91c0d3cf07546cab79a6c4d47cf9",
"size": 106
}added /files/assets~1icon-dark.png
Field was absent
{
"sha256": "c44a52ce353d0c7f4d358dca26d0df715fda21993e03a159555f785e7e727dc6",
"size": 75256
}added /files/assets~1icon.png
Field was absent
{
"sha256": "c44a52ce353d0c7f4d358dca26d0df715fda21993e03a159555f785e7e727dc6",
"size": 75256
}added /files/assets~1logo-dark.png
Field was absent
{
"sha256": "c44a52ce353d0c7f4d358dca26d0df715fda21993e03a159555f785e7e727dc6",
"size": 75256
}added /files/assets~1logo.png
Field was absent
{
"sha256": "c44a52ce353d0c7f4d358dca26d0df715fda21993e03a159555f785e7e727dc6",
"size": 75256
}Full snapshot data
{
"files": {
".app.json": {
"sha256": "9f47970a2361d4b868fd262c404d1dcc3f68f6f2ad0aadec56d364971766ea3c",
"size": 100
},
".codex-plugin/plugin.json": {
"sha256": "8f135811e8bcf553366b7bb92fd87a19061b469ecf23628fed174681c7c539d7",
"size": 9527
},
".mcp.json": {
"sha256": "a50b843dbb9db60bb6cd1711cdce61f8344a91c0d3cf07546cab79a6c4d47cf9",
"size": 106
},
"assets/icon-dark.png": {
"sha256": "c44a52ce353d0c7f4d358dca26d0df715fda21993e03a159555f785e7e727dc6",
"size": 75256
},
"assets/icon.png": {
"sha256": "c44a52ce353d0c7f4d358dca26d0df715fda21993e03a159555f785e7e727dc6",
"size": 75256
},
"assets/logo-dark.png": {
"sha256": "c44a52ce353d0c7f4d358dca26d0df715fda21993e03a159555f785e7e727dc6",
"size": 75256
},
"assets/logo.png": {
"sha256": "c44a52ce353d0c7f4d358dca26d0df715fda21993e03a159555f785e7e727dc6",
"size": 75256
}
}
}SHA-256 of public snapshot: 38faa1220baacbd89b15a329e25fb534af1b3dbe87817c0a35349f4432638110