MCPcopy Create free account
hub / github.com/CodeClash-ai/CodeClash / _render_game_viewer_impl

Function _render_game_viewer_impl

codeclash/viewer/app.py:1029–1066  ·  view source on GitHub ↗

Internal implementation of render_game_viewer with timeout

(folder_path: Path, selected_folder: str)

Source from the content-addressed store, hash-verified

1027
1028@timeout(120)
1029def _render_game_viewer_impl(folder_path: Path, selected_folder: str) -> str:
1030 """Internal implementation of render_game_viewer with timeout"""
1031 # Parse the selected game
1032 parser = LogParser(folder_path)
1033 metadata = parser.parse_game_metadata()
1034
1035 # Group trajectories by round
1036 # In static mode, load all data (messages and diffs)
1037 # In dynamic mode, don't load (will be lazy-loaded)
1038 load_all_data = STATIC_MODE
1039 trajectories_by_round = {}
1040 for player_name, round_num in parser.get_available_trajectories():
1041 if round_num not in trajectories_by_round:
1042 trajectories_by_round[round_num] = []
1043 trajectory = parser.parse_trajectory(
1044 player_name, round_num, load_diffs=load_all_data, load_messages=load_all_data
1045 )
1046 if trajectory:
1047 trajectories_by_round[round_num].append(trajectory)
1048
1049 # Get analysis data (skip line counting - will be loaded on demand)
1050 sim_wins_data = parser.analyze_sim_wins_per_round()
1051 matrix_data = parser.load_matrix_analysis()
1052
1053 # Get navigation info
1054 navigation_info = get_navigation_info(selected_folder)
1055
1056 return render_template(
1057 "index.html",
1058 selected_folder=selected_folder,
1059 selected_folder_path=str(folder_path),
1060 metadata=metadata,
1061 trajectories_by_round=trajectories_by_round,
1062 sim_wins_data=sim_wins_data,
1063 matrix_data=matrix_data,
1064 navigation=navigation_info,
1065 is_static=STATIC_MODE,
1066 )
1067
1068
1069@print_timing

Callers 1

render_game_viewerFunction · 0.85

Calls 7

parse_game_metadataMethod · 0.95
parse_trajectoryMethod · 0.95
load_matrix_analysisMethod · 0.95
LogParserClass · 0.85
get_navigation_infoFunction · 0.85

Tested by

no test coverage detected