Lock monitor incident conditions after creation - #3947
Conversation
Monitors should not allow changing incident-launching conditions after creation. Lock trigger, metric, target, threshold, and sensitivity edits in the domain layer, public API, and web UI. The edit modal now only updates severity; disabled tab selectors show clear visual affordances. Co-authored-by: Gerard <gerard@latitude.so>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Co-authored-by: Gerard <gerard@latitude.so>
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
PR Diff ExplanationI've generated a rich interactive HTML explanation of this PR. Artifact: https://artifact-pr-3947-diff-review.climbing-tellurium.workers.dev Claim URL (within 60 minutes): https://dash.cloudflare.com/claim-preview?claimToken=uMyvNPLFEniqTRVVr-28rKtbh0aYZAQxWJHPeDAIqT4 The artifact covers:
|
|
@cursoragent you need to bump the version of the CLI and SDKs! |
|
❌ Unable to add follow-up after multiple attempts. The agent may be experiencing issues. Please try again later or Open in Web to view the status. Learn more about Cursor Agents |
|
@cursoragent babysit this pr |
|
babysit could not start: Full Self Driving is not enabled for this user. |
Co-authored-by: Gerard <gerard@latitude.so>
…it lock Co-authored-by: Gerard <gerard@latitude.so>
|
@neoxelox please review 🙏🏼 |
|
@cursoragent you need to bump the version of the CLI and SDKs! |
|
❌ Unable to add follow-up after multiple attempts. The agent may be experiencing issues. Please try again later or Open in Web to view the status. Learn more about Cursor Agents |
Co-authored-by: Gerard <gerard@latitude.so>
|
Addressed — bumped versions for the breaking
Regenerated the Python SDK client wrapper User-Agent with the new version. |
updateMonitor no longer accepts target, trigger, metric, or condition. Bump TS and Python SDKs to 9.0.0 and CLI to 7.0.0 per semver. Co-authored-by: Gerard <gerard@latitude.so>
|
cc @neoxelox |
…-json-parse-failure-1d6f * origin/development: (71 commits) Fix signup attribution across latitude.so and console boundary (#3941) chore(deps): bump astral-sh/setup-uv from 7 to 8.3.0 (#3994) chore: update bundled models.dev data (#3987) chore(deps): bump @tanstack/react-virtual (#4002) Lock monitor incident conditions after creation (#3947) chore(deps): bump @typescript/native-preview (#3989) chore(deps): bump taiki-e/install-action from 2.82.7 to 2.82.9 (#3991) chore(deps): bump typing-extensions in /packages/platform/op-gepa/python (#3992) chore(deps): bump opentelemetry-instrumentation-together (#3993) chore(deps): bump opentelemetry-instrumentation-langchain (#3995) chore(deps): bump @slack/web-api from 7.10.0 to 7.18.0 (#3996) chore(deps): bump docker/build-push-action from 7.2.0 to 7.3.0 (#3997) chore(deps): bump openinference-instrumentation-openai-agents (#3998) chore(deps): bump openinference-instrumentation-crewai (#3999) chore(deps): bump aws-actions/configure-aws-credentials (#4000) chore(deps): bump typing-extensions in /packages/telemetry/python (#4001) Fix OAuth token validation to enforce live organization membership (#3917) feat(wrapped): add skills breakdown to Claude Code Wrapped (report V3) (#3978) chore(deps): bump the npm_and_yarn group across 1 directory with 2 updates (#3902) chore(deps): bump anthropics/claude-code-action from 1.0.160 to 1.0.166 (#3990) ... # Conflicts: # packages/domain/flaggers/src/use-cases/run-flagger.test.ts


Summary
Per product feedback: nothing that changes when or how a monitor opens incidents should be editable after creation. This PR locks trigger type, metric, target, threshold, window, and sensitivity edits while keeping severity (and name/description/mute) editable.
Changes
Domain & API
updateMonitorUseCaserejects target, trigger, and condition/config changes for all monitorsPATCH /monitors/:slugbody is nowname,description, andseverityonlyWeb UI
Tabscomponent supports adisabledprop with opacity andcursor-not-allowed, fixing the metric measure selector looking clickable when lockedTesting
update-monitor.test.tsfor the new validation rulespnpm --filter @domain/monitors test@domain/monitors,@repo/operations,@repo/ui,@app/webopenapi.json,mcp.json, TS/Python SDKs, and CLI manifestsSlack Thread