Merge main into release (resolves #4732 conflicts) - #4737
Conversation
…(Phase 1 + 3a + 5 groundwork) (tinyhumansai#4614)
…rs (Phase 3, slices 1–2) (tinyhumansai#4622)
… reducers (Phase 3, slices 3–4) (tinyhumansai#4626)
…odel (usage middleware, G2, build_turn_models) (tinyhumansai#4625)
…orchestrator posture) (tinyhumansai#4630)
…porting Completed (B6) (tinyhumansai#4659)
…5.1 validation (B14) (tinyhumansai#4664)
…working receive loop (tinyhumansai#4660)
… to stop cross-account bleed (tinyhumansai#4421) (tinyhumansai#4642)
…nput_context dry-run + boolean typing (B13, B7, B8) (tinyhumansai#4665)
…kflows (frontend paths) (tinyhumansai#4668)
… teach the orchestrator to manage a fleet (tinyhumansai#4693)
…routing-divergence warning (B15) (tinyhumansai#4698)
…can't resurrect its webview (tinyhumansai#4697)
…schema is absent (B16) (tinyhumansai#4702)
…dow + connections sessions (tinyhumansai#4713)
…e the local core RPC (tinyhumansai#4715)
…he copilot can't re-save the flow (tinyhumansai#4628) Co-authored-by: Steven Enamakel <enamakel@tinyhumans.ai>
…hed folder items (tinyhumansai#4700) Co-authored-by: Steven Enamakel <enamakel@tinyhumans.ai>
…nsai#4246) (tinyhumansai#4696) Co-authored-by: Steven Enamakel <enamakel@tinyhumans.ai>
…e_count (tinyhumansai#4712) Co-authored-by: Steven Enamakel <enamakel@tinyhumans.ai>
…sing (tinyhumansai#4699) Co-authored-by: Steven Enamakel <enamakel@tinyhumans.ai>
…sai#4694) Co-authored-by: Steven Enamakel <enamakel@tinyhumans.ai>
…nt (tinyhumansai#4369) (tinyhumansai#4402) Co-authored-by: Steven Enamakel <enamakel@tinyhumans.ai>
tinyhumansai#4722) Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
…executors, wire allowlist (tinyhumansai#4725)
Resolve conflicts for PR tinyhumansai#4732 (main -> release): - Version files (Cargo.toml, package.json, tauri.conf.json, Cargo.lock x2): keep release's 0.58.15 (release must not regress its published version). - app/test/e2e/specs/{cron-jobs-flow,telegram-channel-flow}.spec.ts: keep main's versions — they supersede release's approach (canonical waitForHomePage helper + tuned macOS-runner timeouts); release's variants referenced spec-local helpers that are not shared.
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Comment |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: dc3b979836
ℹ️ About Codex in GitHub
Codex has been enabled to automatically 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 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
| // The 'Enabled' status badge (CoreJobList renders t('common.enabled')) can paint a | ||
| // beat after the row name. Poll for it instead of point-checking right away — the | ||
| // bare textExists() check raced the render on the slower macOS runner. | ||
| await waitForText('Enabled', 10_000); |
There was a problem hiding this comment.
Keep the disabled seeded cron path valid
In the normal path after onboarding, morning_briefing is created disabled (seed_morning_briefing passes enabled=false in src/openhuman/cron/seed.rs), and CoreJobList therefore renders the Paused badge plus Resume, not Enabled/Pause. Waiting for Enabled here makes this E2E time out before the later pause/remove checks; normalize by clicking Resume first or assert the disabled state.
Useful? React with 👍 / 👎.
| const preJobs = Array.isArray(preCheck.result?.result) ? preCheck.result.result : []; | ||
| if (!preJobs.some((j: { name?: string }) => j?.name === MORNING_BRIEFING)) { | ||
| stepLog('morning_briefing not auto-seeded — seeding via cron_create'); | ||
| const seed = await callOpenhumanRpc('openhuman.cron_create', { |
There was a problem hiding this comment.
Seed with the registered cron_add RPC
When the auto-seed is delayed/missing, this fallback calls openhuman.cron_create, but the cron controller only registers add/list/update/… (src/openhuman/cron/schemas.rs exposes function: "add", so the RPC method is openhuman.cron_add). This branch will fail with an unknown method before the test reaches the UI; use cron_add with the CronSchedule object shape instead.
Useful? React with 👍 / 👎.
| setRequests(prev => | ||
| prev.some(r => r.request_id === parsed.request_id) ? prev : [...prev, parsed] | ||
| ); |
There was a problem hiding this comment.
Reconcile flow approvals resolved elsewhere
This hook only appends requests from the socket and removes them when this chat card calls dismiss; if the same flow gate is approved/denied from the run inspector/notification center or expires server-side, the chat banner remains indefinitely and offers actions for a request the core no longer has. Reconcile against approval_list_pending or consume a resolution/expiry signal so non-chat decisions clear these cards too.
Useful? React with 👍 / 👎.
Summary
Conflict-free replacement for #4732 (
main→release). #4732 could not be resolved in place becausemainis a protected branch (no direct push / restricted ref creation), so the resolved merge is delivered here as a clean PR intorelease.This branch is
mainmerged withrelease, so it is a superset of both — merging it advancesreleaseto the converged state with no conflicts.Conflict resolution
8 conflicts, all resolved:
Cargo.toml,app/package.json,app/src-tauri/Cargo.toml,app/src-tauri/tauri.conf.json,Cargo.lock,app/src-tauri/Cargo.lock) → kept release's 0.58.15 (release must not regress its published version; main was on 0.58.14).app/test/e2e/specs/cron-jobs-flow.spec.tsandapp/test/e2e/specs/telegram-channel-flow.spec.ts→ kept main's versions. Both branches edited these specs (main via its 72 commits, release via fix(ci): unblock release workflow actions #4610). Main's versions win: they are self-consistent (imports resolve;waitForCronRowdefined locally), whereas release's variants referenced spec-local helpers (ensureCronJobEnabledInPanel,ensureMorningBriefingJob,waitForTelegramGetUpdates, ...) that are not shared helpers. Main's own conflict comments explicitly describe replacing release's "stale subset that flaked on the slower macOS runner" with the canonicalwaitForHomePagehelper and tuned timeouts.Net delta vs
mainis only the0.58.14 → 0.58.15version bump — all other release content is already present in main.Related