faaizashiq commited on
Commit
0faeba1
·
verified ·
1 Parent(s): caeaa00

Update backend/main.py

Browse files
Files changed (1) hide show
  1. backend/main.py +5 -16
backend/main.py CHANGED
@@ -53,9 +53,8 @@ def generate_level():
53
  return jsonify(level_data)
54
  except Exception as e:
55
  print(f"CRITICAL ERROR /api/level/generate: {e}")
56
- # Final Safety Net: Return a basic fallback if everything else explodes
57
- import copy
58
- fallback_base = {
59
  "type": "maze",
60
  "level_id": "emergency_fallback",
61
  "title": "System Practice",
@@ -64,17 +63,7 @@ def generate_level():
64
  "allowed_blocks": ["move_forward"],
65
  "tutorial_text": "Move to the goal."
66
  }
67
- levels = []
68
- for i in range(5):
69
- lvl = copy.deepcopy(fallback_base)
70
- lvl["level_id"] = f"{lvl['level_id']}_{i+1}"
71
- lvl["title"] = f"{lvl['title']} - Phase {i+1}"
72
- levels.append(lvl)
73
-
74
- return jsonify({
75
- "story_arc_title": "Emergency System Arc",
76
- "levels": levels
77
- })
78
 
79
  @app.route('/api/level/feedback', methods=['POST'])
80
  def level_feedback():
@@ -85,13 +74,14 @@ def level_feedback():
85
  data = request.json or {}
86
  level_data = data.get('level_data')
87
  rating = data.get('rating')
 
88
 
89
  if not level_data or not rating:
90
  return jsonify({"message": "Invalid data ignored"}), 400
91
 
92
  try:
93
  # Teach the agent!
94
- scenario_agent.learn_from_feedback(level_data, int(rating))
95
  return jsonify({"status": "learned", "message": "Thanks for the feedback!"})
96
  except Exception as e:
97
  print(f"Feedback Error: {e}")
@@ -138,4 +128,3 @@ def generate_hint():
138
  if __name__ == '__main__':
139
  port = int(os.environ.get('PORT', 5000))
140
  app.run(host='0.0.0.0', port=port, debug=True)
141
-
 
53
  return jsonify(level_data)
54
  except Exception as e:
55
  print(f"CRITICAL ERROR /api/level/generate: {e}")
56
+ # Final Safety Net: Return a basic Maze fallback if everything else explodes
57
+ fallback = {
 
58
  "type": "maze",
59
  "level_id": "emergency_fallback",
60
  "title": "System Practice",
 
63
  "allowed_blocks": ["move_forward"],
64
  "tutorial_text": "Move to the goal."
65
  }
66
+ return jsonify(fallback)
 
 
 
 
 
 
 
 
 
 
67
 
68
  @app.route('/api/level/feedback', methods=['POST'])
69
  def level_feedback():
 
74
  data = request.json or {}
75
  level_data = data.get('level_data')
76
  rating = data.get('rating')
77
+ developer_feedback = data.get('developer_feedback')
78
 
79
  if not level_data or not rating:
80
  return jsonify({"message": "Invalid data ignored"}), 400
81
 
82
  try:
83
  # Teach the agent!
84
+ scenario_agent.learn_from_feedback(level_data, int(rating), developer_feedback)
85
  return jsonify({"status": "learned", "message": "Thanks for the feedback!"})
86
  except Exception as e:
87
  print(f"Feedback Error: {e}")
 
128
  if __name__ == '__main__':
129
  port = int(os.environ.get('PORT', 5000))
130
  app.run(host='0.0.0.0', port=port, debug=True)