On July 2, 2026, the Solon team released v4.0.3 — just 22 days after v4.0.0 and 7 days after v4.0.2. Three releases in under a month. The pace tells a clear story: Solon's iteration speed is accelerating, and the focus is firmly on AI Agent infrastructure.
Here's what's new and why it matters.
What's in v4.0.3
| Category | Change | Description |
|---|---|---|
| 🆕 New | solon-ai-loop | AI loop execution module for iterative agent reasoning |
| 🆕 New | solon-ai-talent-code | Code talent plugin, extracted from solon-ai-harness |
| 🆕 New | ScopeLocal.Factory interface | More flexible scoped variable factory |
| 🆕 New | ScopeLocalJdk25 auto-load | JDK 25 scoped values support, auto-detected |
| 🔧 Adjust | Restored BeanContainer.wrapPublish | Transition compatibility buffer |
| 🔧 Adjust | Restored ResourceUtil.scanClasses | Same, giving ecosystem plugins time to migrate |
The Three Changes That Matter Most
1. solon-ai-loop: The Agent's "Iteration Engine"
This is the most significant new module in this release.
What problem does it solve?
In ReActAgent and TeamAgent, reasoning steps are linear — think, act, observe, done. But many real-world scenarios require agents to loop:
- Code generation: write code → compile fails → read error → fix → recompile → until green
- Automated testing: write tests → run → analyze failure → fix → rerun → until pass
- Data cleaning: clean → validation fails → adjust params → clean again → verify → until合格
solon-ai-loop provides a controlled loop execution framework, allowing agents to iterate until a termination condition is met. It works with the existing StopLoopInterceptor to control max iterations, timeouts, and even manual interruption.
2. solon-ai-talent-code: Code Abilities as a Standalone Module
Before v4.0.3, code-related talents (file reading/writing, shell execution, LSP analysis, etc.) were bundled inside Harness. If you only needed ChatModel + code abilities, you had to pull in the entire Harness.
Now solon-ai-talent-code is independent, giving you a lightweight, focused dependency:
<!-- Code abilities only, no Harness needed -->
<dependency>
<groupId>org.noear</groupId>
<artifactId>solon-ai-talent-code</artifactId>
<version>4.0.3</version>
</dependency>
This makes Harness leaner, and makes code talents reusable in other contexts — like SolonCode CLI, which is itself Harness-driven.
3. JDK 25 ScopeLocal Auto-Loading
JDK 25 is the upcoming LTS release (September 2026), and Solon has a tradition of pre-adapting before the official JDK release.
The ScopeLocalJdk25 auto-load mechanism means: when you upgrade to JDK 25, Solon automatically switches to JDK 25's scoped value implementation — zero code changes, zero config.
This is "compatible with Java 8 ~ Java 25" in action — not just running on new JDKs, but actually leveraging their capabilities.
From M1 to GA: 11 Days
v4.0.3-M1 (milestone) was released in late June 2026, and it took just 11 days to reach GA status.
The v4.0.x release cadence:
| Version | Date | Interval |
|---|---|---|
| v4.0.0 | 2026-06-10 | - |
| v4.0.2 | 2026-06-25 | 15 days |
| v4.0.3-M1 | 2026-06-late | ~5 days |
| v4.0.3 | 2026-07-02 | ~11 days (incl. M1) |
Three GA releases in under four months tells us two things:
- The v4.x core stack is stable — each release is incremental, not firefighting
- AI ecosystem is the primary iteration focus — all three releases center on AI modules
v4.0.x LTS Support
Per the official LTS plan (solon.noear.org/article/lts):
| Dimension | Timeline |
|---|---|
| Initial release | 2026-06 |
| Open-source support ends | 2026-12 |
| Commercial support ends | 2029-06 (3 years) |
v4.0.x is the current main line, with full LTS guarantees. Expect a minor release roughly every 20 days, with each minor version line having independent LTS maintenance.
If you're on v3.x in production, v3.10.x is still actively maintained — no rush to migrate.
What This Means for the AI Ecosystem
Modularization Progressing
v4.0.0 → skill renamed to talent (unified naming)
v4.0.2 → multiple new AI plugins added
v4.0.3 → talent-code extracted, AI Loop added
Solon AI's modularization follows a "unify then split" pattern — first standardize the concepts, then extract reusable modules.
Loop Capability Filled
Previously, Solon AI lacked a loop abstraction. Developers had to write custom loop logic inside onObservation, leading to code duplication and poor control over termination, timeout, and resource cleanup.
solon-ai-loop fills this gap. Combined with StopLoopInterceptor, you now have clean, controlled iteration:
// Conceptual example
Harness.harness(agent)
.addInterceptor(new StopLoopInterceptor(maxIterations))
.loop(context -> {
return agent.step(context);
})
.start();
Paving the Way for SolonCode
The extraction of solon-ai-talent-code directly benefits SolonCode CLI — Solon's AI coding assistant. SolonCode is Harness-driven under the hood. With code talents as a standalone module, SolonCode can depend on talent-code without pulling in the full Harness weight, improving CLI startup time and reducing package size.
Upgrade Path
New Projects
Start directly with v4.0.3:
<dependency>
<groupId>org.noear</groupId>
<artifactId>solon</artifactId>
<version>4.0.3</version>
</dependency>
From v4.0.2
Compatible upgrade — just bump the version number. No breaking changes.
From v4.0.0
If you're still using the old solon-ai-skill-* package names (pre-v4.0.0), migrate to solon-ai-talent-*. The migration guide was published alongside v4.0.0.
From v3.x
v3.x → v4.x changes are concentrated in AI modules and package restructuring. The core framework (solon, solon-web, etc.) is largely compatible. Validate on a test project first.
What's Next
Based on the current iteration direction and community discussions:
- solon-ai-talent-code will continue evolving — expect deeper LSP integration and Git operations
- MCP protocol tracking — the MCP protocol itself is evolving fast, Solon will keep pace
- v4.0.4 is already on the roadmap — roughly late July at the current cadence
Final Thoughts
v4.0.3 isn't a "big" release. But it's a revealing one: the Solon team is using high-frequency iteration to rapidly fill capability gaps in the AI ecosystem.
In the 22 days from v4.0.0 to v4.0.3, we've seen:
- Unified naming (skill → talent)
- Core capabilities extracted (talent-code)
- Loop engine built (AI Loop)
- Next-gen JDK support (JDK 25)
Each release is small. But each one moves the needle.
Links