Make create_skill author a skill leaf stub like create_category

This commit is contained in:
Denton Social
2026-09-23 23:02:59 -05:00
parent f5419183bc
commit 225b4df959
6 changed files with 261 additions and 34 deletions
+17 -1
View File
@@ -15,7 +15,7 @@ from semif_agent.cli import build_scheduler, load_config
from semif_agent.decisions import Request
from semif_agent.dream import dream
from semif_agent.engine import EngineUnavailable
from semif_agent.skills import CategoryDraft, generate_category
from semif_agent.skills import CategoryDraft, SkillDraft, generate_category, generate_skill
def require_real(config: dict):
@@ -121,4 +121,20 @@ def test_generate_category(tmp_path):
)
print(f"draft: {draft.name!r}{draft.description!r}")
assert isinstance(draft, CategoryDraft)
assert draft.name and draft.description
def test_generate_skill(tmp_path):
"""Authoring a skill leaf stub through the real decision model."""
config = load_config()
require_real(config)
scheduler, config = build_scheduler(config)
draft = generate_skill(
scheduler.engine,
Request("tell me if my package was delivered"),
"tracking",
scheduler.tree,
)
print(f"draft: {draft.name!r}{draft.description!r}")
assert isinstance(draft, SkillDraft)
assert draft.name and draft.description