opencode-llmstack 0.9.3__py3-none-any.whl → 0.9.4__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- llmstack/__init__.py +1 -1
- llmstack/app.py +3 -2
- {opencode_llmstack-0.9.3.data → opencode_llmstack-0.9.4.data}/data/CHANGELOG.md +15 -0
- {opencode_llmstack-0.9.3.dist-info → opencode_llmstack-0.9.4.dist-info}/METADATA +1 -1
- {opencode_llmstack-0.9.3.dist-info → opencode_llmstack-0.9.4.dist-info}/RECORD +11 -11
- {opencode_llmstack-0.9.3.data → opencode_llmstack-0.9.4.data}/data/LICENSE +0 -0
- {opencode_llmstack-0.9.3.data → opencode_llmstack-0.9.4.data}/data/UPGRADING.md +0 -0
- {opencode_llmstack-0.9.3.dist-info → opencode_llmstack-0.9.4.dist-info}/WHEEL +0 -0
- {opencode_llmstack-0.9.3.dist-info → opencode_llmstack-0.9.4.dist-info}/entry_points.txt +0 -0
- {opencode_llmstack-0.9.3.dist-info → opencode_llmstack-0.9.4.dist-info}/licenses/LICENSE +0 -0
- {opencode_llmstack-0.9.3.dist-info → opencode_llmstack-0.9.4.dist-info}/top_level.txt +0 -0
llmstack/__init__.py
CHANGED
llmstack/app.py
CHANGED
|
@@ -355,9 +355,10 @@ def classify(body: dict[str, Any]) -> tuple[str, str]:
|
|
|
355
355
|
return AGENT_MODEL, f"ultra-trigger->agent ({ULTRA_MODEL} unavailable)"
|
|
356
356
|
|
|
357
357
|
n_turns = sum(1 for m in (messages or []) if m.get("role") == "user")
|
|
358
|
+
_last_msgs = [{"role": "user", "content": last_user}] if last_user else None
|
|
358
359
|
has_code_signal = (
|
|
359
|
-
_matches(CODE_BLOCK,
|
|
360
|
-
or _matches(AGENT_SIGNALS,
|
|
360
|
+
_matches(CODE_BLOCK, _last_msgs, prompt)
|
|
361
|
+
or _matches(AGENT_SIGNALS, _last_msgs, prompt)
|
|
361
362
|
)
|
|
362
363
|
|
|
363
364
|
est = _estimate_tokens(messages, prompt)
|
|
@@ -4,6 +4,21 @@ All notable changes to `opencode-llmstack` are documented here.
|
|
|
4
4
|
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
+
## [0.9.4] — 2026-05-11
|
|
8
|
+
|
|
9
|
+
### Fixed
|
|
10
|
+
- `classify()` now scopes `has_code_signal` to the **last user message only**
|
|
11
|
+
(was scanning the full conversation history). Previously, any prior coding
|
|
12
|
+
exchange in the session (code blocks, agent verbs) would permanently block
|
|
13
|
+
plan routing for the rest of the conversation — e.g. "explain why these
|
|
14
|
+
changes are important?" after a refactor request would never reach `plan`.
|
|
15
|
+
- Added regression test:
|
|
16
|
+
`test_plan_signal_after_prior_coding_exchange_routes_to_plan`.
|
|
17
|
+
- `__version__` corrected from `"0.9.2"` to `"0.9.4"` (was skewed vs
|
|
18
|
+
`pyproject.toml` since 0.9.3).
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
7
22
|
## [0.9.2] — 2026-05-11
|
|
8
23
|
|
|
9
24
|
### Fixed
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
llmstack/AGENTS.md,sha256=4DVUkqJ1-EP-cDNRCpznzghOOX6dAMbVWdcwyfFCALw,528
|
|
2
|
-
llmstack/__init__.py,sha256=
|
|
2
|
+
llmstack/__init__.py,sha256=C56mGWt0YsaDyU0C7R_PpsIPw67G0jm4nRAqGKLVh5s,855
|
|
3
3
|
llmstack/__main__.py,sha256=wXHd5-BmCCHUfNEmy2rbilBSyVhi4KD1dSIO_4NlxuE,199
|
|
4
4
|
llmstack/_platform.py,sha256=eDY3T9krkaBigG5xXxqzIbH3MhdZqX3BWe7bozOsAso,13099
|
|
5
|
-
llmstack/app.py,sha256=
|
|
5
|
+
llmstack/app.py,sha256=FpxEWpfvnRdRJg3IQdCOSdSuqPQG6iYKpBNGcfUR9wA,28554
|
|
6
6
|
llmstack/check_models.py,sha256=WvTS2Td4acp-Q0-yWXUgXAgAgFOmpxiaeSDuAoivirw,4559
|
|
7
7
|
llmstack/cli.py,sha256=Om70PzHrmU81y2Mw1sB6eeUs1fRHP0PnsCEVNC0UNvI,11341
|
|
8
8
|
llmstack/models.ini,sha256=U38Z6wfGCpmgQTCNbnp1zu80rUrhNGWFTvI2nhVx1Mo,20556
|
|
@@ -30,12 +30,12 @@ llmstack/download/ggufs.py,sha256=2hCr-svUiPIV2I3ruwTbXo6lPn9m-VBOqa3DFbvdIcA,54
|
|
|
30
30
|
llmstack/generators/__init__.py,sha256=LfbcReuyYBCdVuT9J5RKo7-f8n585YBU3Hus6DsxqTs,1189
|
|
31
31
|
llmstack/generators/llama_swap.py,sha256=KdYH9N6TJECotZvyxvAjaa3kRyzn4YOi2T6D2UdyVKw,14785
|
|
32
32
|
llmstack/generators/opencode.py,sha256=s_FrLXUBnLzRGQovl1PcAEs7V_P52wT1vnvvxMcKfs4,11203
|
|
33
|
-
opencode_llmstack-0.9.
|
|
34
|
-
opencode_llmstack-0.9.
|
|
35
|
-
opencode_llmstack-0.9.
|
|
36
|
-
opencode_llmstack-0.9.
|
|
37
|
-
opencode_llmstack-0.9.
|
|
38
|
-
opencode_llmstack-0.9.
|
|
39
|
-
opencode_llmstack-0.9.
|
|
40
|
-
opencode_llmstack-0.9.
|
|
41
|
-
opencode_llmstack-0.9.
|
|
33
|
+
opencode_llmstack-0.9.4.data/data/CHANGELOG.md,sha256=58feU0rA9bBYvecDoFaLcwwgezLPkD3MSt0vRUVjdF8,5837
|
|
34
|
+
opencode_llmstack-0.9.4.data/data/LICENSE,sha256=6G-Otw6BHIM1WJSBlJ04P1rDVCqbDEzKpdOlSr5CqIY,1078
|
|
35
|
+
opencode_llmstack-0.9.4.data/data/UPGRADING.md,sha256=0XSNZ9trCviFLH5EL3Jz02fO2_8AfqB8_9aX0-o1bik,24927
|
|
36
|
+
opencode_llmstack-0.9.4.dist-info/licenses/LICENSE,sha256=6G-Otw6BHIM1WJSBlJ04P1rDVCqbDEzKpdOlSr5CqIY,1078
|
|
37
|
+
opencode_llmstack-0.9.4.dist-info/METADATA,sha256=hHxDa4-Iqb7saWESfg82n4DEhFpM0J9uY9hAosnuJAQ,36323
|
|
38
|
+
opencode_llmstack-0.9.4.dist-info/WHEEL,sha256=aeYiig01lYGDzBgS8HxWXOg3uV61G9ijOsup-k9o1sk,91
|
|
39
|
+
opencode_llmstack-0.9.4.dist-info/entry_points.txt,sha256=soomjpqvl4KzFScgpQbu96vgcLriOtkB9MbiSC0rvZ8,47
|
|
40
|
+
opencode_llmstack-0.9.4.dist-info/top_level.txt,sha256=tMv9sDWp8RW_DNNY8cuM4Uy4sND-KwTLcsScl5gdcEQ,9
|
|
41
|
+
opencode_llmstack-0.9.4.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|