From a0df0e559d9cddaf31cd324b1c69341a29aa4d62 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 21 Jul 2026 12:45:59 +0000 Subject: [PATCH 1/2] Initial plan From aa6dfe4bab35fa0bc8a9259ef3a133372c7aa7b9 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 21 Jul 2026 12:49:08 +0000 Subject: [PATCH 2/2] fix: avoid exposing exception details to HTTP clients (CWE-209) --- simple_org_chart/app_main.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/simple_org_chart/app_main.py b/simple_org_chart/app_main.py index dc5ed88..888758e 100644 --- a/simple_org_chart/app_main.py +++ b/simple_org_chart/app_main.py @@ -3788,7 +3788,7 @@ def _background_full_scan(): with _full_scan_lock: st = _read_scan_state() st['running'] = False - st['error'] = str(exc) + st['error'] = 'An internal error occurred during the scan.' _write_scan_state(st) worker = threading.Thread(target=_background_full_scan, daemon=True) @@ -4050,7 +4050,7 @@ def trigger_update(): return jsonify({'message': 'Update started'}), 200 except Exception as e: logger.error(f"Error triggering update: {e}") - mark_data_update_finished(success=False, error=str(e), source='manual') + mark_data_update_finished(success=False, error='An internal error occurred.', source='manual') return jsonify({'error': 'Update failed'}), 500 @app.route('/api/clear-data', methods=['POST']) @@ -4102,7 +4102,7 @@ def clear_cached_data(): worker.start() except Exception as e: logger.error(f"Error triggering update after clearing data: {e}") - mark_data_update_finished(success=False, error=str(e), source='manual') + mark_data_update_finished(success=False, error='An internal error occurred.', source='manual') return jsonify({'cleared': removed, 'error': 'Sync failed to start'}), 500 return jsonify({'cleared': removed, 'message': 'Data cleared; fresh sync started'}), 200