1+ from intent_frame import IntentFrame
2+ from capsule import Capsule
3+ from validator import Validator
4+ from constraint_engine import Constraint , ConstraintEngine
5+ from execution_engine import ExecutionEngine
6+
7+
8+ def dummy_transform (inputs ):
9+ return {"length" : len (inputs .get ("resume_text" , "" ))}
10+
11+
12+ # -----------------------------
13+ # Constraints
14+ # -----------------------------
15+ constraints = ConstraintEngine ([
16+ Constraint ("resume_text_required" , lambda i : "resume_text" in i ),
17+ Constraint ("resume_text_not_empty" , lambda i : len (i .get ("resume_text" , "" )) > 0 ),
18+ ])
19+
20+
21+ # -----------------------------
22+ # Intent
23+ # -----------------------------
24+ intent = IntentFrame (
25+ goal = "Full engine test" ,
26+ inputs = {"resume_text" : "This is a test resume." },
27+ validators = ["resume-style-check" , "keyword-density" ],
28+ )
29+
30+
31+ # -----------------------------
32+ # Capsules
33+ # -----------------------------
34+ capsules = [
35+ Capsule (
36+ name = "resume-analysis" ,
37+ transform = dummy_transform ,
38+ validators = [
39+ Validator ("resume-style-check" ),
40+ Validator ("keyword-density" ),
41+ ],
42+ )
43+ ]
44+
45+
46+ # -----------------------------
47+ # Execution Engine
48+ # -----------------------------
49+ engine = ExecutionEngine (capsules , constraints )
50+
51+
52+ # -----------------------------
53+ # Run the full pipeline
54+ # -----------------------------
55+ records = engine .run (intent )
56+
57+ for r in records :
58+ print (r .to_dict ())
0 commit comments