Skip to content

feat(stepfun): add step-3.7-flash model#88082

Merged
steipete merged 15 commits into
openclaw:mainfrom
lit26:feat/stepfun-step-3.7-flash
Jul 9, 2026
Merged

feat(stepfun): add step-3.7-flash model#88082
steipete merged 15 commits into
openclaw:mainfrom
lit26:feat/stepfun-step-3.7-flash

Conversation

@lit26

@lit26 lit26 commented May 29, 2026

Copy link
Copy Markdown
Contributor

What Problem This Solves

StepFun released step-3.7-flash, but OpenClaw's direct StepFun catalogs exposed only the Step 3.5 family. Users could not select the new model through either the Standard stepfun provider or the subscription-backed stepfun-plan provider.

Why This Change Was Made

  • Add step-3.7-flash to both official static catalogs while preserving the existing Step 3.5 defaults.
  • Match StepFun's published 256K context, Standard pricing, image input, tool-calling, and low/medium/high reasoning-effort contract.
  • Declare the actual Chat Completions wire behavior: system messages, max_tokens, no OpenAI-only store, stream_options, developer-role, or strict-tool fields.
  • Map OpenClaw's unsupported off, minimal, xhigh, and max levels to StepFun's nearest supported effort.

User Impact

Users can select stepfun/step-3.7-flash or stepfun-plan/step-3.7-flash. Existing installations remain on their current Step 3.5 default until the user explicitly switches. OpenClaw advertises text and image input; StepFun's native video input remains outside OpenClaw's current model-input schema.

Evidence

@openclaw-barnacle openclaw-barnacle Bot added docs Improvements or additions to documentation agents Agent runtime and tooling extensions: stepfun size: XS triage: mock-only-proof Candidate: PR proof only shows tests, mocks, snapshots, lint, typecheck, or CI. triage: needs-real-behavior-proof Candidate: external PR needs after-fix proof from a real setup. and removed triage: mock-only-proof Candidate: PR proof only shows tests, mocks, snapshots, lint, typecheck, or CI. labels May 29, 2026
@clawsweeper

clawsweeper Bot commented May 29, 2026

Copy link
Copy Markdown
Contributor

Codex review: needs real behavior proof before merge. Reviewed July 9, 2026, 2:13 AM ET / 06:13 UTC.

Summary
The PR adds step-3.7-flash metadata to both bundled StepFun provider catalogs, updates StepFun docs, and adds focused provider/request-payload regression coverage while preserving Step 3.5 defaults.

PR surface: Source +80, Tests +93, Docs +65. Total +238 across 4 files.

Reproducibility: not applicable. as a bug reproduction; this is an additive provider model feature. Source inspection shows current main lacks step-3.7-flash, while the PR head adds it to both StepFun catalogs.

Review metrics: 1 noteworthy metric.

  • StepFun catalog defaults: 2 model rows added, 0 default refs changed. The change is additive for model selection and does not silently move existing StepFun users off the Step 3.5 defaults.

Merge readiness
Overall: 🦪 silver shellfish
Proof: 🦪 silver shellfish
Patch quality: 🦞 diamond lobster
Result: blocked until real behavior proof from a real setup is added.

Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch.

Rank-up moves:

  • [P1] Add redacted terminal output showing openclaw models list --provider stepfun and openclaw models list --provider stepfun-plan after the change, or a live step-3.7-flash inference transcript if credentials are available.
  • Wait for the remaining exact-head CI checks to complete successfully.

Proof guidance:

  • [P1] Needs real behavior proof before merge: The PR body and maintainer comment provide sanitized Crabbox formatting/test output and emitted-payload regression coverage, but no real OpenClaw catalog output or live StepFun inference proof for the new model. After adding proof, update the PR body; ClawSweeper should re-review automatically. If it does not, the PR author or someone with repository write access can comment @clawsweeper re-review.

Risk before merge

  • [P1] The current proof attached to the PR is targeted formatting and Vitest request-payload validation, not a real OpenClaw model-list run or redacted live StepFun inference transcript for the new model.
  • [P1] The current head is mergeable but behind and still had 6 checks in progress at review time, so exact-head CI needs to finish before merge.

Maintainer options:

  1. Decide the mitigation before merge
    Land the additive StepFun model metadata/docs/tests after exact-head CI is green and maintainers either receive lightweight real OpenClaw catalog/inference proof or explicitly accept the request-payload test proof for this provider-catalog update.
  2. Pause or close
    Do not merge this PR until maintainers decide whether the risk is worth taking.

Next step before merge

  • [P1] No automated code repair is indicated; the remaining action is maintainer proof acceptance plus exact-head CI/merge handling.

Maintainer decision needed

  • Question: Should this PR wait for real OpenClaw catalog or live StepFun proof, or may maintainers accept the current request-payload regression tests plus official StepFun docs for this catalog-only update?
  • Rationale: Repository policy treats external API/provider behavior as dependency-backed and external PRs normally need real behavior proof; this PR has strong metadata/tests and maintainer fixups, but no attached live catalog or inference output for step-3.7-flash.
  • Likely owner: steipete — This account is assigned to the PR and authored the recent PR-head compatibility/test fixups that made the change land-ready aside from proof and CI acceptance.
  • Options:
    • Request Lightweight Real Proof (recommended): Ask for redacted terminal output showing openclaw models list for both StepFun providers, or a live step-3.7-flash inference transcript if credentials are available, before merge.
    • Accept Current Proof: A maintainer can explicitly accept official StepFun docs plus emitted-payload tests as sufficient for this additive catalog update and merge once CI is green.
    • Pause For Provider Owner Review: Hold the PR until a StepFun/provider owner confirms the model metadata and proof bar.

Security
Cleared: The diff changes bundled provider metadata, docs, and tests only; it adds no dependencies, workflows, permissions, credential handling, package scripts, or new code-execution path.

Review details

Best possible solution:

Land the additive StepFun model metadata/docs/tests after exact-head CI is green and maintainers either receive lightweight real OpenClaw catalog/inference proof or explicitly accept the request-payload test proof for this provider-catalog update.

Do we have a high-confidence way to reproduce the issue?

Not applicable as a bug reproduction; this is an additive provider model feature. Source inspection shows current main lacks step-3.7-flash, while the PR head adds it to both StepFun catalogs.

Is this the best way to solve the issue?

Yes for the code shape: the bundled StepFun plugin manifest, provider docs, and focused provider/request-payload tests are the right owner boundary. The remaining uncertainty is proof sufficiency, not a better implementation location.

AGENTS.md: found and applied where relevant.

Codex review notes: model internal, reasoning high; reviewed against a780541ea6c5.

Label changes

Label changes:

  • add rating: 🦪 silver shellfish: Overall readiness is 🦪 silver shellfish; proof is 🦪 silver shellfish and patch quality is 🦞 diamond lobster. Replaced prior rating: 🐚 platinum hermit.
  • remove proof: sufficient: Current real behavior proof status is mock_only, not sufficient.
  • remove rating: 🐚 platinum hermit: Current PR rating is rating: 🦪 silver shellfish, so this older rating label is no longer current.

Label justifications:

  • P2: This is a bounded provider-catalog feature with limited blast radius and no confirmed runtime regression in the patch.
  • rating: 🦪 silver shellfish: Overall readiness is 🦪 silver shellfish; proof is 🦪 silver shellfish and patch quality is 🦞 diamond lobster. Replaced prior rating: 🐚 platinum hermit.
  • status: 👀 ready for maintainer look: ClawSweeper has no concrete contributor-facing blocker left for this PR. Needs real behavior proof before merge: The PR body and maintainer comment provide sanitized Crabbox formatting/test output and emitted-payload regression coverage, but no real OpenClaw catalog output or live StepFun inference proof for the new model. After adding proof, update the PR body; ClawSweeper should re-review automatically. If it does not, the PR author or someone with repository write access can comment @clawsweeper re-review.
Evidence reviewed

PR surface:

Source +80, Tests +93, Docs +65. Total +238 across 4 files.

View PR surface stats
Area Files Added Removed Net
Source 1 80 0 +80
Tests 2 95 2 +93
Docs 1 73 8 +65
Config 0 0 0 0
Generated 0 0 0 0
Other 0 0 0 0
Total 4 248 10 +238

What I checked:

  • Repository policy read: Root and scoped AGENTS.md guidance for provider plugins, docs, and agent tests was read and applied to the provider-boundary, changelog, and dependency-contract review. (AGENTS.md:1, a780541ea6c5)
  • Current main lacks the requested model: Current main's StepFun manifest lists only the existing step-3.5-flash standard row and Step Plan 3.5 rows; step-3.7-flash is absent. (extensions/stepfun/openclaw.plugin.json:29, a780541ea6c5)
  • PR head adds Step 3.7 rows additively: The PR head adds step-3.7-flash to both stepfun and stepfun-plan with text/image input, 262144 context/max tokens, StepFun pricing for standard, zero plan cost matching existing plan rows, and compatibility flags for the Chat Completions payload. (extensions/stepfun/openclaw.plugin.json:29, 0ad970c66111)
  • Existing defaults are preserved: The PR head keeps STEPFUN_DEFAULT_MODEL_ID as step-3.5-flash, so existing StepFun onboarding/default model selection is not silently changed. (extensions/stepfun/provider-catalog.ts:14, 0ad970c66111)
  • Focused request-payload coverage exists: The PR adds tests that assert the new model metadata, unchanged defaults, reasoning_effort, max_tokens, omitted OpenAI-only fields, and system-message behavior for the StepFun OpenAI-compatible transport path. (extensions/stepfun/index.test.ts:39, 0ad970c66111)
  • Runtime consumes the compat metadata: getCompat reads model compat flags and the Chat Completions parameter builder chooses max_tokens and emits reasoning_effort only when the model supports it, matching the PR's metadata/test boundary. (src/agents/openai-transport-stream.ts:3633, a780541ea6c5)

Likely related people:

  • hengm3467: Authored the merged StepFun provider work that added the manifest, catalog builder, docs, and provider catalog tests extended by this PR. (role: introduced StepFun provider surface; confidence: high; commits: 52d8dc5b56c1, 326d9427197e; files: extensions/stepfun/openclaw.plugin.json, extensions/stepfun/provider-catalog.ts, docs/providers/stepfun.md)
  • odysseus0: GitHub metadata for the merged StepFun provider PR identifies this account as the merger of the original StepFun provider implementation. (role: original provider PR merger; confidence: high; commits: 326d9427197e; files: extensions/stepfun/openclaw.plugin.json, extensions/stepfun/provider-catalog.ts, docs/providers/stepfun.md)
  • steipete: This PR is assigned to this account, and this account authored the recent PR-head compatibility and test fixups that made the StepFun 3.7 payload behavior match the documented API contract. (role: current reviewer and recent adjacent contributor; confidence: high; commits: 670215315b77, 975b68cfdb92, 6d7386fcf2d6; files: extensions/stepfun/openclaw.plugin.json, extensions/stepfun/index.test.ts, docs/providers/stepfun.md)
  • Vincent Koc: Recent history includes StepFun provider docs rewrites and release-adjacent commits touching the same docs/manifest surfaces, making this a useful routing signal for docs/provider review. (role: recent provider-docs contributor; confidence: medium; commits: 81d32c05f431, e085fa1a3ffd; files: docs/providers/stepfun.md, extensions/stepfun/openclaw.plugin.json)
What the crustacean ranks mean
  • 🦀 challenger crab: rare, exceptional readiness with strong proof, clean implementation, and convincing validation.
  • 🦞 diamond lobster: very strong readiness with only minor maintainer review expected.
  • 🐚 platinum hermit: good normal PR, likely mergeable with ordinary maintainer review.
  • 🦐 gold shrimp: useful signal, but proof or patch confidence is still limited.
  • 🦪 silver shellfish: thin signal; proof, validation, or implementation needs work.
  • 🧂 unranked krab: not merge-ready because proof is missing/unusable or there are serious correctness or safety concerns.
  • 🌊 off-meta tidepool: rating does not apply to this item.

Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics.

How this review workflow works
  • ClawSweeper keeps one durable marker-backed review comment per issue or PR.
  • Re-runs edit this comment so the latest verdict, findings, and automation markers stay together instead of adding duplicate bot comments.
  • A fresh review can be triggered by eligible @clawsweeper re-review comments, exact-item GitHub events, scheduled/background review runs, or manual workflow dispatch.
  • PR/issue authors and users with repository write access can comment @clawsweeper re-review or @clawsweeper re-run on an open PR or issue to request a fresh review only.
  • Maintainers can also comment @clawsweeper review to request a fresh review only.
  • Fresh-review commands do not start repair, autofix, rebase, CI repair, or automerge.
  • Maintainer-only repair and merge flows require explicit commands such as @clawsweeper autofix, @clawsweeper automerge, @clawsweeper fix ci, or @clawsweeper address review.
  • Maintainers can comment @clawsweeper explain to ask for more context, or @clawsweeper stop to stop active automation.
Review history (4 earlier review cycles)
  • reviewed 2026-07-01T17:25:19.463Z sha 8dc0cb2 :: needs real behavior proof before merge. :: [P2] Align StepFun input metadata with routed capabilities
  • reviewed 2026-07-09T05:34:43.912Z sha 8616240 :: needs maintainer review before merge. :: none
  • reviewed 2026-07-09T05:44:11.232Z sha 8616240 :: needs changes before merge. :: [P2] Run the docs formatter on the StepFun tables
  • reviewed 2026-07-09T06:04:37.591Z sha 6d7386f :: needs maintainer review before merge. :: none

@clawsweeper clawsweeper Bot added rating: 🧂 unranked krab Not merge-ready due to missing proof or serious correctness/safety concerns. status: 📣 needs proof The PR needs real behavior proof before ClawSweeper can clear the contributor ask. P2 Normal backlog priority with limited blast radius. merge-risk: 🚨 compatibility 🚨 May break existing users, config, migrations, defaults, or upgrade paths. merge-risk: 🚨 auth-provider 🚨 May break OAuth, tokens, provider routing, model choice, or credentials. labels May 29, 2026
@openclaw-barnacle openclaw-barnacle Bot added triage: mock-only-proof Candidate: PR proof only shows tests, mocks, snapshots, lint, typecheck, or CI. triage: needs-real-behavior-proof Candidate: external PR needs after-fix proof from a real setup. proof: supplied External PR includes structured after-fix real behavior proof. and removed triage: needs-real-behavior-proof Candidate: external PR needs after-fix proof from a real setup. triage: mock-only-proof Candidate: PR proof only shows tests, mocks, snapshots, lint, typecheck, or CI. labels May 29, 2026
@clawsweeper clawsweeper Bot added rating: 🦐 gold shrimp Decent PR readiness signal, but merge confidence is limited. and removed rating: 🧂 unranked krab Not merge-ready due to missing proof or serious correctness/safety concerns. labels May 29, 2026
@clawsweeper clawsweeper Bot added rating: 🦪 silver shellfish Thin PR readiness signal; proof, validation, or implementation needs work. and removed rating: 🦐 gold shrimp Decent PR readiness signal, but merge confidence is limited. labels Jun 15, 2026
@clawsweeper

clawsweeper Bot commented Jun 27, 2026

Copy link
Copy Markdown
Contributor

@lit26 thanks for the PR. ClawSweeper is still waiting on real behavior proof before this can move forward.

Useful proof can be a screenshot, short video, terminal output, copied live output, linked artifact, or redacted logs that show the changed behavior after the fix. Please redact private tokens, phone numbers, private endpoints, customer data, and anything else sensitive.

Once proof is added to the PR body or a comment, ClawSweeper or a maintainer can re-check it.

@lit26
lit26 force-pushed the feat/stepfun-step-3.7-flash branch from 3179016 to ba5d6cc Compare June 29, 2026 09:42
Tianning Li added 2 commits June 29, 2026 20:04
Output was artificially capped at 65536; StepFun docs set max_tokens
default to INF, bounded only by the 256K context window. Raise
step-3.7-flash maxTokens to 262144 on both stepfun and stepfun-plan,
matching contextWindow. Per models.dev anomalyco/models.dev#1903.
step-3.5-flash entries unchanged.
Step Plan endpoint bills per subscription plan, not per token, matching
the sibling stepfun-plan/step-3.5-flash and step-3.5-flash-2603 entries
which already carry zero cost. Standard stepfun/step-3.7-flash keeps its
per-token rate. Per models.dev anomalyco/models.dev#1903, whose step-plan
providers omit cost entirely.
@lit26
lit26 marked this pull request as ready for review June 30, 2026 16:39
@clawsweeper clawsweeper Bot added proof: sufficient ClawSweeper judged the real behavior proof convincing. rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR. and removed rating: 🦪 silver shellfish Thin PR readiness signal; proof, validation, or implementation needs work. status: 📣 needs proof The PR needs real behavior proof before ClawSweeper can clear the contributor ask. merge-risk: 🚨 compatibility 🚨 May break existing users, config, migrations, defaults, or upgrade paths. merge-risk: 🚨 auth-provider 🚨 May break OAuth, tokens, provider routing, model choice, or credentials. labels Jul 9, 2026
@clawsweeper clawsweeper Bot added rating: 🦐 gold shrimp Decent PR readiness signal, but merge confidence is limited. status: ⏳ waiting on author ClawSweeper has contributor-facing work open and is waiting for author action. and removed rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR. labels Jul 9, 2026
@clawsweeper clawsweeper Bot added rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR. and removed rating: 🦐 gold shrimp Decent PR readiness signal, but merge confidence is limited. status: ⏳ waiting on author ClawSweeper has contributor-facing work open and is waiting for author action. labels Jul 9, 2026
@steipete

steipete commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Maintainer fixups complete and land-ready:

  • preserved the existing Step 3.5 defaults on Standard and Step Plan;
  • limited advertised OpenClaw input to text/image;
  • added low/medium/high reasoning propagation, including the agent-turn off -> low fallback;
  • matched StepFun's Chat Completions request contract (system, max_tokens, no OpenAI-only store/developer/strict/stream-options fields);
  • added emitted-payload regression coverage and provider docs; release-note context stays in the PR body because CHANGELOG.md is release-owned.

Exact-head proof at 0ad970c66111a7974954c85e6f54afcf7248dd6e:

  • sanitized public-AWS Crabbox run_564f467801fc (no secrets, instance role, tailnet, or LAN access);
  • targeted oxfmt --check: pass;
  • pnpm test extensions/stepfun/index.test.ts src/agents/models-config.providers.stepfun.test.ts: 6 tests pass across 2 shards;
  • fresh Codex autoreview: clean, no accepted/actionable findings.

Proof gap: no approved StepFun credential was available for direct inference. The emitted request payload is regression-tested against StepFun's official API contract linked in the PR body.

Thanks @lit26 for adding the model coverage.

@steipete
steipete merged commit 583ca34 into openclaw:main Jul 9, 2026
105 checks passed
@steipete

steipete commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Merged via squash.

github-actions Bot pushed a commit to Desicool/openclaw that referenced this pull request Jul 9, 2026
* feat(stepfun): add step-3.7-flash model and make it default

* fix(stepfun): set step-3.7-flash cacheRead cost to 0.04

* fix(stepfun): raise step-3.7-flash maxTokens to context limit

Output was artificially capped at 65536; StepFun docs set max_tokens
default to INF, bounded only by the 256K context window. Raise
step-3.7-flash maxTokens to 262144 on both stepfun and stepfun-plan,
matching contextWindow. Per models.dev anomalyco/models.dev#1903.
step-3.5-flash entries unchanged.

* fix(stepfun): zero step-plan step-3.7-flash cost for plan billing

Step Plan endpoint bills per subscription plan, not per token, matching
the sibling stepfun-plan/step-3.5-flash and step-3.5-flash-2603 entries
which already carry zero cost. Standard stepfun/step-3.7-flash keeps its
per-token rate. Per models.dev anomalyco/models.dev#1903, whose step-plan
providers omit cost entirely.

* docs(changelog): note StepFun 3.7 support

* style(stepfun): format provider table

* fix(stepfun): forward reasoning effort

* fix(stepfun): scope reasoning compat to 3.7

* test(stepfun): keep 3.5 reasoning compat unchanged

* fix(stepfun): carry off fallback through agent turns

* fix(stepfun): use documented token limit field

* fix(stepfun): match chat completions contract

* chore(stepfun): keep changelog release-owned

---------

Co-authored-by: Tianning Li <[email protected]>
Co-authored-by: Peter Steinberger <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

agents Agent runtime and tooling docs Improvements or additions to documentation extensions: stepfun P2 Normal backlog priority with limited blast radius. proof: sufficient ClawSweeper judged the real behavior proof convincing. proof: supplied External PR includes structured after-fix real behavior proof. rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. size: S status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants