Repository navigation
Share automations in solenta.json with per-machine opt-in (#1590) - #1605
Conversation
Solenta-Message-Id: b1bb2813-6247-4eb2-8dff-6aaac1887a70
Solenta-Message-Id: 5810051b-42c9-433f-a737-2f5b1b226e91
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Memory-only project-scope saves never rewrite the file, so the commit prompt was a lie. Co-authored-by: Cursor <cursoragent@cursor.com>
…1590) Approve-and-run was firing a stale overlay prompt, file-only listed rows threw, and the approve card did not refresh after trust. Co-authored-by: Cursor <cursoragent@cursor.com>
…1590). Co-authored-by: Cursor <cursoragent@cursor.com>
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
Keep the poller on the merged file row and use main's Linear/Sentry trigger-note title. Co-authored-by: Cursor <cursoragent@cursor.com>
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 88e934da3a
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| lastError: overlay.lastError, | ||
| consecutiveFailures: overlay.consecutiveFailures, | ||
| pendingRunThreadId: overlay.pendingRunThreadId, | ||
| nextRunAt: overlay.nextRunAt, |
There was a problem hiding this comment.
Recompute due time when a shared schedule changes
When a checked-in automation changes its preset or hour while this machine already has an overlay, the merge unconditionally retains the overlay's old nextRunAt. Approving the new file hash therefore leaves a weekly-to-hourly change dormant until the old weekly deadline, or can fire a newly daily automation at the old hourly deadline. Compare the stored definition fields with the file definition and recompute nextRunAt when the schedule changed.
Useful? React with 👍 / 👎.
| const written = writeAutomations(project.path, rows); | ||
| persistAutomationsTrust(store, project.id, written.hash); |
There was a problem hiding this comment.
Refresh project metadata after shared automation writes
When an untrusted project automation is edited, this path writes a new hash and auto-trusts it, but the renderer's add/update/remove callbacks only refresh the automation list, not projects. The view consequently retains the old untrusted automationsFile hash, keeps the enable toggle disabled, and offers an Approve action that fails as stale until some unrelated project refresh occurs. Shared CRUD should re-list projects, or the main process should push the updated project metadata.
Useful? React with 👍 / 👎.
Project-scoped automations now live in
solenta.jsonso teammates can share definitions. Each machine still opts in before those automations auto-fire. Closes #1590.Changes
solenta.json;enabled, cursor, and memory stay in the local overlay (shared:<projectId>:<slug>).enabledon this machine and, for project scope,automationsTrustmatching the current automations hash (separate from command trust).enabled.solenta.jsonwrite.Verification
electron/test/automations.test.js+automations-file.test.js+automation-triggers.test.js+webScopes.test.js: 80 passtest/automationsView.test.tsx: 33 passnpm run typecheck: passnpm test/test:electronsweep on this HEAD; earlier Task 8 sweep was before the two review-fix commitsNotes for reviewers
mainhas moved (#1588/#1604Linear/Sentry poller,#1599chat-created enable). Expect merge conflicts inelectron/automation-triggers.jsand automations UI/settings.projects:changedpush; trust and approve-and-run re-list viaapi.projects.list().cursor-grok-4.6 via Cursor
Made with Cursor