Skip to content

Promote main -> release (conflict-resolved) - #5414

Merged
M3gA-Mind merged 185 commits into
tinyhumansai:releasefrom
M3gA-Mind:promote/main-to-release-2026-08-06
Aug 5, 2026
Merged

Promote main -> release (conflict-resolved)#5414
M3gA-Mind merged 185 commits into
tinyhumansai:releasefrom
M3gA-Mind:promote/main-to-release-2026-08-06

Conversation

@M3gA-Mind

Copy link
Copy Markdown
Collaborator

Brings release to main's tree. Only the six version-bearing files differ, held at 0.63.9 so the release does not go backwards.

Verification

$ git diff --stat upstream/main
 Cargo.lock                    | 2 +-
 Cargo.toml                    | 2 +-
 app/package.json              | 2 +-
 app/src-tauri/Cargo.lock      | 2 +-
 app/src-tauri/Cargo.toml      | 2 +-
 app/src-tauri/tauri.conf.json | 2 +-
 6 files changed, 6 insertions(+), 6 deletions(-)

Every hunk is 0.63.60.63.9 and nothing else. Both lockfiles changed only their own package entry ([[package]] openhuman and [[package]] OpenHuman) — main's dependency resolution is untouched. All nine submodule pins match main exactly.

release carried no unique code

Checked three ways rather than assumed:

  1. Path-level. Both trees dumped with blob hashes and compared. Outside src/openhuman/ — the only area the kernelization reorganized — there are zero paths that exist in release but not in main. Every release-only path lies inside the kernelized tree.

  2. Commit-level. All 7 release-only commits accounted for: four chore(release) version bumps (touching only the six version files), two single-parent squashes of earlier promotes, and one real code commit.

  3. That one real code commit. 42cdf77e7 (fix(appimage): unblock release smoke by relaxing the userns sysctl (#5251)) touches two scripts, and both are byte-identical in main:

    Path blob on release blob on main
    scripts/release/test-strip-appimage-rpaths.sh fefb7c1b7cfecfc99f978fe91039c4c5a912e994 fefb7c1b7cfecfc99f978fe91039c4c5a912e994
    scripts/release/validate-appimage-runtime.sh 40ea9b15926d7a917016e78e4be0882fb61dfeb8 40ea9b15926d7a917016e78e4be0882fb61dfeb8

    main carries it as 9750b8077 and has since gone further with 11d744abe (fix(appimage): give the release startup smoke a D-Bus session bus (#5255)).

Nothing is dropped by taking main's tree.

Why there were 83 conflicts

Structural fallout from #5328, not real divergence. That PR collapsed src/openhuman/ from 124 flat domain directories into 31 gate-aligned families. release predates the reorg, so every moved file collided as add/add or file-location rather than as a disagreement about content — 63 content, 11 add/add, 4 modify/delete, 3 file-location, 2 submodule.

Resolution: take main's tree wholesale, delete the 11 pre-kernelization paths main no longer has (4 × agent_registry/agents/flow_memory_agent/*, 3 × medulla_chat/*, memory_store/content/tags.rs, thread_goals/mod.rs, todos/ops.rs, todos/README.md — all inside src/openhuman/, none outside), take main's submodule pins, and restore release's version in the six manifests.


⚠️ Note for the maintainer — root cause, and it will recur

This divergence is not a one-off. The repository allows squash merges only (allow_merge_commit: false, allow_rebase_merge: false, allow_squash_merge: true).

A squashed promote PR produces a single-parent commit on release. It copies main's content but never records main as an ancestor. Both prior promotes show this — a40fbb79d (#5242) and 8ea875c13 (#5256) each have exactly one parent — which is why the merge-base of main and release is still frozen at 2219d4207, and why main reads as 184 commits ahead even though release has all of its earlier content.

So every promote rebuilds the full divergence from scratch: 184 commits and 83 conflicts this cycle, more next.

This PR's head is a genuine two-parent merge (eab45dd6a + e29bfc66f), but squashing it on merge will discard the second parent and leave the merge-base frozen again.

What stops it recurring: enable merge commits for the release branch, or promote by fast-forward/push rather than through a squashed PR. Either records the ancestry so the next promote is a no-op instead of a re-resolution. Your call.

YellowSnnowmann and others added 30 commits July 21, 2026 19:01
…eature (tinyhumansai#5049) (tinyhumansai#5061)

Co-authored-by: Steven Enamakel <31011319+senamakel@users.noreply.github.com>
…ai#4786)

Co-authored-by: Sami Rusani <14844597+samrusani@users.noreply.github.com>
Co-authored-by: binyangzhu000-sudo <224954946+binyangzhu000-sudo@users.noreply.github.com>
Co-authored-by: Steven Enamakel <enamakel@tinyhumans.ai>
…nsai#5103)

Co-authored-by: Sami Rusani <14844597+samrusani@users.noreply.github.com>
…4929) (tinyhumansai#4998)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Steven Enamakel <31011319+senamakel@users.noreply.github.com>
Co-authored-by: Cyrus Gray <144336577+graycyrus@users.noreply.github.com>
Co-authored-by: oxoxDev <164490987+oxoxDev@users.noreply.github.com>
Co-authored-by: YellowSnnowmann <167776381+YellowSnnowmann@users.noreply.github.com>
Co-authored-by: Steven Enamakel <enamakel@tinyhumans.ai>
Co-authored-by: CodeGhost21 <164498022+CodeGhost21@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-authored-by: sanil-23 <sanil@tinyhumans.ai>
Co-authored-by: M3gA-Mind <elvin@mahadao.com>
Co-authored-by: oxoxDev <oxoxdev@users.noreply.github.com>
Co-authored-by: Sami Rusani <14844597+samrusani@users.noreply.github.com>
Co-authored-by: Steven Enamakel <enamakel@tinyhumans.ai>
…roval prompt (tinyhumansai#5094)

Co-authored-by: Steven Enamakel <enamakel@tinyhumans.ai>
…completes epic tinyhumansai#4795 (tinyhumansai#5029)

Co-authored-by: Steven Enamakel <enamakel@tinyhumans.ai>
YellowSnnowmann and others added 26 commits August 3, 2026 20:55
tinyhumansai#5167) (tinyhumansai#5340)

Co-authored-by: Medulla <medulla@tinyhumans.ai>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
…transcript soak (tinyhumansai#5396)

Co-authored-by: Medulla <medulla@tinyhumans.ai>
…ers (tinyhumansai#5367)

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-authored-by: Medulla <medulla@tinyhumans.ai>
release carried no unique code. Its 7 commits ahead of main are four
`chore(release)` version bumps, two single-parent squashes of earlier
promotes, and `42cdf77e7` (appimage userns sysctl) — whose two scripts
are byte-identical to main's, which also carries the follow-up
`11d744abe` (D-Bus session bus for the startup smoke).

The 83 merge conflicts were structural fallout from tinyhumansai#5328, which
collapsed src/openhuman/ from 124 flat domain dirs into 31 gate-aligned
families. release predates that reorg, so moved files collided as add/add
and file-location rather than as real disagreements.

Resolution: take main's tree wholesale, delete the 11 pre-kernelization
paths main no longer has, take main's submodule pins, and keep release's
version (0.63.9 > main's 0.63.6 — a release must never go backwards).

Verified: `git diff upstream/main` is exactly the six version-bearing
files, one line each.
@greptile-apps

greptile-apps Bot commented Aug 5, 2026

Copy link
Copy Markdown

Too many files changed for review (2547 files, 100 file limit).

@M3gA-Mind
M3gA-Mind merged commit 72a7f24 into tinyhumansai:release Aug 5, 2026
27 of 31 checks passed

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 3d0d28af05

ℹ️ 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".

// success — `loadFlows()` clears `error`, which would otherwise wipe
// the failure banner set in the `catch` below.
await runFlow(flow.id);
const result = await runFlowDetached(flow.id);

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Pass declared inputs before starting a run

When a saved flow declares required graph.inputs, this call starts flows_run_detached with no inputs object. The new server path validates declared inputs synchronously before it returns a run id, and the API comment says both UI Run controls must collect those values first, so parameterized flows now fail from the list Run button (and the canvas Run button has the same omission) instead of prompting the user and starting. Please collect the required values and pass them as the third argument before calling runFlowDetached.

Useful? React with 👍 / 👎.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.