Skip to content

refactor(flows): move portable authoring assets upstream - #6341

Merged
senamakel merged 5 commits into
tinyhumansai:mainfrom
senamakel:flows-to-tinyflows
Sep 18, 2026
Merged

senamakel merged 5 commits into
tinyhumansai:mainfrom
senamakel:flows-to-tinyflows

Conversation

@senamakel

Copy link
Copy Markdown
Member

Summary

  • consume the portable flow-authoring resources from tinyflows-copilot
  • remove the unused local workflow-builder prompt and duplicate manual
  • retain only OpenHuman skill-runtime registration
  • align MCP prompt rendering with the pinned ConnectedServerOverview contract

Dependency

Depends on tinyhumansai/tinyflows#91. Mark ready after that PR merges and the submodule pointer is available from main.

Testing

  • cargo test -p tinyflows-copilot
  • focused OpenHuman flow-skill tests (3 passed)
  • focused MCP prompt tests (5 passed)

Co-authored-by: Medulla <medulla@tinyhumans.ai>
@coderabbitai

coderabbitai Bot commented Sep 18, 2026

Copy link
Copy Markdown
Contributor

Warning

Review paused — included plan limit reached

Keep your review moving with free on-demand reviews.

  • Run this review for free

On-demand reviews are free for the next 2 days.

Promotion and pricing details

On-demand reviews are free for the next 2 days. After that, they cost $0.25 per reviewed file.

Review limit details

Or wait 5 minutes for your next included review.

Check out review usage here.

Limit details: You’ve used all 10 included reviews currently available.

Learn how review limits work.

Review configuration:

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Advanced

Run ID: 35105b73-8262-442e-ba1e-17469fec7a2d

📥 Commits

Reviewing files that changed from the base of the PR and between fed1742 and 87f80e5.

📒 Files selected for processing (15)
  • crates/openhuman-core/src/agent/registry/agents/orchestrator/prompt.rs
  • crates/openhuman-core/src/agent/registry/agents/orchestrator/prompt_tests.rs
  • crates/openhuman-core/src/flows/README.md
  • crates/openhuman-core/src/flows/agents/workflow_builder/prompt.md
  • crates/openhuman-core/src/flows/builder_tools/dry_run_diagnostics.rs
  • crates/openhuman-core/src/flows/ops/run_rows.rs
  • crates/openhuman-core/src/flows/skills/flow-authoring/WORKFLOW.md
  • crates/openhuman-core/src/flows/skills/flow-authoring/references/dry-run.md
  • crates/openhuman-core/src/flows/skills/flow-authoring/references/expressions.md
  • crates/openhuman-core/src/flows/skills/flow-authoring/references/node-config.md
  • crates/openhuman-core/src/flows/skills/mod.rs
  • crates/openhuman-core/src/flows/skills/skills_tests.rs
  • crates/openhuman-core/src/flows/tinyflows/caps/prompt.rs
  • crates/openhuman-core/src/skills/README.md
  • vendor/tinyflows

Comment @coderabbitai help to get the list of available commands.

Co-authored-by: Medulla <medulla@tinyhumans.ai>
@senamakel senamakel self-assigned this Sep 18, 2026
senamakel and others added 3 commits September 18, 2026 22:12
# Conflicts:
#	crates/openhuman-core/src/agent/registry/agents/orchestrator/prompt_tests.rs
#	vendor/tinyflows
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Consolidate the collection of file paths into a single expression by removing intermediate variable assignments, making the test code more concise without changing its behavior.

Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
@senamakel
senamakel marked this pull request as ready for review September 18, 2026 20:09
@senamakel
senamakel requested a review from a team September 18, 2026 20:09
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for security reviews. Please try again later.

@tinysweeper

tinysweeper Bot commented Sep 18, 2026

Copy link
Copy Markdown

Tiny Sweeper review

Tiny Sweeper reviewed this change across 6 lane(s) and found 1 active actionable finding(s). Detailed lane evidence and any incomplete work are listed below.

State: Reviewing pending checks
Priority: medium
Reviewed head: 87f80e5c3e67
Updated: 1789763828 (Unix time)

Review snapshot

Change surface Files Review signal Count
Production 5 Active findings 1
Tests 2 Noted findings 0
Documentation 7 Resolved findings 0
Configuration 0 Pending checks/questions 4

Completeness: Complete
Test assessment: No supported feature-to-test mapping was available; this does not mean tests are absent or passed.

What changed

The review could not produce a supported behavioral summary; inspect the cited changed surface and lane details below.

Features

None identified with supported citations.

Tests

No supported feature-to-test mapping was produced. Test execution is not inferred.

Findings

  • medium · critique · Continue past error entries without a readable message — `node_error_message` selects the first item containing an `error` field, then applies `error_message` to that value. If the first error is an empty object, `error_message` returns (crates/openhuman\-core/src/flows/builder\_tools/dry\_run\_diagnostics\.rs:126)

Pending checks: Rust E2E (mock backend), Build Playwright E2E Artifact, E2E (Playwright / web lane), Desktop E2E (full suite, 3 OS)

Before merge

  • Wait for Rust E2E (mock backend), Build Playwright E2E Artifact, E2E (Playwright / web lane), Desktop E2E (full suite, 3 OS).

How this fits together

flowchart LR
  n0["format_connected_mcp_block<br/>changed"]:::changed
  n1["...lls_back_to_tool_count_and_qualified_name<br/>changed"]:::changed
  n2["format"]:::impacted
  n3["build"]:::impacted
  n4["render_installed_skills"]:::impacted
  n5["execute"]:::impacted
  n1 -->|calls| n0
  n1 -->|tests| n0
  n1 -->|calls| n2
  n1 -->|tests| n2
  n3 -->|calls| n4
  n5 -->|calls| n2
  classDef changed fill:#0d4429,stroke:#238636,color:#e6edf3
  classDef impacted fill:#161b22,stroke:#6e7681,color:#c9d1d9
  classDef flagged fill:#5a1e02,stroke:#d93f0b,color:#ffffff
  classDef blocking fill:#67060c,stroke:#f85149,color:#ffffff
Loading
Agent review details

critique

  • Conclusion: Success
  • Scope reviewed: all assigned evidence
  • Lane summary: Reviewed 8 files; 3 findings. _The code index is behind this pull request (indexed at `396a4431d27b`), so retrieved context may be out of date._ _3 memory call(s) failed (model: cortex: v1/answer answered 502 Bad Gateway), so this review saw part of what the engine holds._
  • Evidence: crates/openhuman\-core/src/flows/builder\_tools/dry\_run\_diagnostics\.rs — Continue past error entries without a readable message

security

  • Conclusion: Success
  • Scope reviewed: all assigned evidence
  • Lane summary: Reviewed 6 files; 0 findings. 2 files were not security-reviewed: crates/openhuman-core/src/flows/README.md (prose or tabular data), crates/openhuman-core/src/skills/README.md (prose or tabular data). _The code index is behind this pull request (indexed at `396a4431d27b`), so retrieved context may be out of date._ _3 memory call(s) failed (model: cortex: v1/answer answered 502 Bad Gateway), so this review saw part of what the engine holds._

tests

  • Conclusion: Success
  • Scope reviewed: all assigned evidence
  • Lane summary: Most changes refactoringly move logic upstream, but the deletion of the workflow_builder agent's prompt.md breaks the agent without providing a replacement. This must be fixed before merging. (1 finding discarded for not matching a changed line) _The code index is behind this pull request (indexed at `396a4431d27b`), so retrieved context may be out of date._ _3 memory call(s) failed (model: cortex: v1/answer answered 502 Bad Gateway), so this review saw part of what the engine holds._

commits

  • Conclusion: Neutral
  • Scope reviewed: all assigned evidence
  • Lane summary: Nothing sensitive found in what this pull request commits.

description

  • Conclusion: Success
  • Scope reviewed: all assigned evidence
  • Lane summary: The PR moves portable authoring assets to the upstream tinyflows-copilot crate, removes the local workflow-builder prompt and manual, and updates the code to consume the upstream resources. Tests are refactored accordingly. The only behavioral change (removing the fallback to initialize instructions in MCP prompt rendering) is intentional and covered by an updated test. No new issues are introduced. _The code index is behind this pull request (indexed at `396a4431d27b`), so retrieved context may be out of date._ _3 memory call(s) failed (model: cortex: v1/answer answered 502 Bad Gateway), so this review saw part of what the engine holds._

e2e

  • Conclusion: Neutral
  • Scope reviewed: all assigned evidence
  • Lane summary: The pull request removes the fallback to MCP server `initialize` instructions in the orchestrator prompt and deletes the entire workflow builder system prompt (`prompt.md`) without adding equivalent content elsewhere. Neither change is exercised by an existing end-to-end test, so regressions in these externally-facing behaviors could ship undetected. (2 findings discarded for not matching a changed line) Waiting on end-to-end jobs: `Rust E2E (mock backend)`, `Build Playwright E2E Artifact`, `E2E (Playwright / web lane)`, `Desktop E2E (full suite, 3 OS)`. 1 end-to-end job passed on this head.
  • Unresolved questions/checks: Rust E2E (mock backend), Build Playwright E2E Artifact, E2E (Playwright / web lane), Desktop E2E (full suite, 3 OS)
Evidence and run details
  • Models: ladder/vectors, gpt-5.6-luna, deepseek-v4-flash
  • Spend: $0.015991
  • Tokens: 375533 input · 27423 output · 6213 cached · 1122 embedding
Head State Pass summary
87f80e5c3e67 pending 1 active finding(s), 0 resolved finding(s) (at 1789763828)

tinysweeper 0.1.0

@tinysweeper tinysweeper 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.

tinysweeper found nothing blocking. Approving.

             $0.0160 · 375,533 in / 27,423 out · 6,213 cached (2%) · ladder/vectors, gpt-5.6-luna, deepseek-v4-flash · 1,122 embedded
critique:    $0.0084 · 165,211 in / 9,063 out  · 3,141 cached (2%) · gpt-5.6-luna, deepseek-v4-flash
security:    $0.0047 · 92,349 in  / 1,659 out  · 0 cached (0%)     · gpt-5.6-luna
tests:       $0.0008 · 33,489 in  / 4,980 out  · 1,024 cached (3%) · deepseek-v4-flash
description: $0.0007 · 24,908 in  / 2,775 out  · 1,024 cached (4%) · deepseek-v4-flash
e2e:         $0.0009 · 37,528 in  / 5,311 out  · 1,024 cached (3%) · deepseek-v4-flash

.as_str()
.map(str::to_string)
})
tinyflows::diagnostics::node_error_message(output, node_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.

priority medium critique confident

Continue past error entries without a readable message

node_error_message selects the first item containing an error field, then applies error_message to that value. If the first error is an empty object, error_message returns its JSON representation (for example, {}), so a later item containing {"message":"useful detail"} is never examined. The previous implementation skipped entries without a string error.message and would return that later readable message. Preserve the old per-item search semantics, or update the shared helper to continue searching when an error value is not a useful message.

[RULE] error-message-selection ·

@tinysweeper tinysweeper Bot added the priority: p2 Soon. Real but survivable — a rough edge, a gap, a thing that will bite later. label Sep 18, 2026
@senamakel
senamakel merged commit 97eb925 into tinyhumansai:main Sep 18, 2026
27 of 31 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

priority: p2 Soon. Real but survivable — a rough edge, a gap, a thing that will bite later.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant