mirror of
https://github.com/hansjone/oclaw.git
synced 2026-10-09 03:30:48 +08:00
- Rename platform/ to svc/ to avoid shadowing stdlib platform. - Replace from oclaw.* with from svc/runtime/interfaces; update -m CLI paths. - tests/conftest: prepend repo root to sys.path (no parent-folder package name). - CI: paths and offline_eval script under repo root. - Ops scripts: PYTHONPATH must be repo root for python -m runtime.* (fixes gateway/WhatsApp sidecar startup). - Fix default oclaw.json path in tabular/file attachment limits; stabilize attachment test config. Co-authored-by: Cursor <cursoragent@cursor.com>
18 lines
625 B
Python
18 lines
625 B
Python
from __future__ import annotations
|
||
|
||
from runtime.skills_prompt import format_skills_for_prompt
|
||
|
||
|
||
def test_format_skills_for_prompt_line_shape() -> None:
|
||
out = format_skills_for_prompt(
|
||
[("demo", "desc", "/tmp/skills/demo/SKILL.md")],
|
||
max_chars=50_000,
|
||
)
|
||
assert "## 技能(skills):" in out
|
||
assert '- name:"demo", description:"desc", path:"/tmp/skills/demo/SKILL.md"' in out
|
||
|
||
|
||
def test_format_skills_for_prompt_truncates_by_budget() -> None:
|
||
entries = [(f"s{i}", "d", f"/p/{i}") for i in range(30)]
|
||
out = format_skills_for_prompt(entries, max_chars=800)
|
||
assert len(out) <= 800
|