MCPcopy Create free account
hub / github.com/917Dhj/DeepPaperNote / main

Function main

scripts/plan_figures.py:477–503  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

475
476
477def main() -> None:
478 from common import emit
479
480 args = parser().parse_args()
481 primary = maybe_load_json_record(args.input) if args.input else None
482 evidence = maybe_load_json_record(args.evidence) if args.evidence else None
483 assets = maybe_load_json_record(args.assets) if args.assets else None
484 data = merge_inputs(primary, evidence, assets)
485 if not data:
486 raise SystemExit("plan_figures.py requires at least one JSON input.")
487
488 evidence_pack = data.get("evidence_pack", {}) if isinstance(data.get("evidence_pack"), dict) else {}
489 page_assets = data.get("page_assets", []) if isinstance(data.get("page_assets"), list) else []
490 image_assets = data.get("image_assets", []) if isinstance(data.get("image_assets"), list) else []
491 figure_assets = data.get("figure_assets", []) if isinstance(data.get("figure_assets"), list) else []
492 items = build_figure_items(evidence_pack, limit=args.max_items)
493 items = attach_candidate_images(items, page_assets, image_assets, figure_assets)
494 payload = {
495 "status": "ok",
496 "script": "plan_figures.py",
497 "paper_id": args.paper_id or data.get("paper_id", ""),
498 "figure_plan": {
499 "paper_id": args.paper_id or data.get("paper_id", ""),
500 "figures": items,
501 },
502 }
503 emit(payload, args.output)
504
505
506if __name__ == "__main__":

Callers 1

plan_figures.pyFile · 0.70

Calls 6

maybe_load_json_recordFunction · 0.90
emitFunction · 0.90
merge_inputsFunction · 0.85
build_figure_itemsFunction · 0.85
attach_candidate_imagesFunction · 0.85
parserFunction · 0.70

Tested by

no test coverage detected