Spaces:
Sleeping
Sleeping
| """The synthetic training dataset (training/make_dataset.py) stays well-formed.""" | |
| from server.schema import ActionPlan | |
| from training.make_dataset import SEEDS, to_record | |
| def test_enough_seeds(): | |
| assert len(SEEDS) >= 20 | |
| def test_seed_shape_and_validity(): | |
| for now, thread, plan in SEEDS: | |
| assert isinstance(now, str) and isinstance(thread, str) | |
| # every target plan must validate against the serving schema | |
| ActionPlan(**plan) | |
| def test_to_record_builds_chat_triple(): | |
| now, thread, plan = SEEDS[0] | |
| rec = to_record(now, thread, plan) | |
| roles = [m["role"] for m in rec["messages"]] | |
| assert roles == ["system", "user", "assistant"] | |
| def test_covers_hard_cases(): | |
| """Sanity that the expansion includes empties, conflicts, clarifications, images.""" | |
| plans = [p for _, _, p in SEEDS] | |
| assert any(p["events"] == [] for p in plans) # no-event chitchat | |
| assert any(p["conflicts"] for p in plans) # a conflict case | |
| assert any(p["proposed_times"] for p in plans) # alternatives offered | |
| assert any(p.get("needs_clarification") for p in plans) # ambiguity | |
| threads = [t for _, t, _ in SEEDS] | |
| assert any("[image:" in t for t in threads) # image-described | |