https://github.com/Safronus/bpdp-manager
· scanned 2026-06-15 23:59 UTC (2 months, 3 weeks ago)
100 raw signals (0 security + 100 graph)
Last scanned 2 months, 3 weeks ago · v1 · 84 actionable findings from 1 signal source. 16 repeated signals grouped for readability. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.
All 2598 nodes from the latest scan, grouped by kind. Each node is a unit the engine identified (file, function, endpoint, table…). Most users won't need this view — it's primarily for debugging the engine's graph extraction or for AI agents that want to enumerate the project structure.
| Label | Layer | Status | Path |
|---|---|---|---|
test_b64_std_roundtrip |
software | healthy | tests/test_stag_files.py:20 |
test_find_ajax_loads |
software | healthy | tests/test_stag_files.py:25 |
test_section_from_body |
software | healthy | tests/test_stag_files.py:35 |
test_parse_file_fragment |
software | healthy | tests/test_stag_files.py:43 |
test_parse_file_fragment_size_variants |
software | healthy | tests/test_stag_files.py:63 |
test_refine_sections_text_then_appendix |
software | healthy | tests/test_stag_files.py:75 |
test_empty_fragment_no_files |
software | healthy | tests/test_stag_files.py:87 |
qapp |
software | healthy | tests/test_review_editor.py:22 |
service |
software | healthy | tests/test_review_editor.py:27 |
_thesis |
software | healthy | tests/test_review_editor.py:32 |
_review |
software | healthy | tests/test_review_editor.py:41 |
test_save_and_generate_closes_progress |
software | healthy | tests/test_review_editor.py:46 |
test_fulfilled_options_follow_template_language |
software | healthy | tests/test_review_editor.py:72 |
test_build_review_skeleton_role_and_language |
software | healthy | tests/test_review_editor.py:85 |
test_insert_skeleton_into_empty_overall |
software | healthy | tests/test_review_editor.py:98 |
test_editor_has_open_text_and_opposite_review_buttons |
software | healthy | tests/test_review_editor.py:107 |
test_editor_height_fits_within_screen |
software | healthy | tests/test_review_editor.py:117 |
service |
software | healthy | tests/test_email_sender.py:20 |
test_compose_subject |
software | healthy | tests/test_email_sender.py:27 |
test_compose_body_groups_bp_dp |
software | healthy | tests/test_email_sender.py:32 |
test_compose_body_no_secretary_name |
software | healthy | tests/test_email_sender.py:53 |
test_compose_body_custom_greeting |
software | healthy | tests/test_email_sender.py:60 |
test_recipients_dedup |
software | healthy | tests/test_email_sender.py:77 |
test_build_message_with_pdf |
software | healthy | tests/test_email_sender.py:86 |
test_build_message_requires_sender_and_recipient |
software | healthy | tests/test_email_sender.py:105 |
test_build_message_missing_attachment |
software | healthy | tests/test_email_sender.py:112 |
test_save_as_eml_roundtrip |
software | healthy | tests/test_email_sender.py:121 |
test_current_supervisor_review_pdf_and_mark_sent |
software | healthy | tests/test_email_sender.py:138 |
test_current_supervisor_review_pdf_none_when_no_pdf |
software | healthy | tests/test_email_sender.py:156 |
qapp |
software | healthy | tests/test_export_review_pdfs.py:19 |
_make_pdf |
software | healthy | tests/test_export_review_pdfs.py:23 |
test_exports_existing_and_skips_missing |
software | healthy | tests/test_export_review_pdfs.py:29 |
test_collision_overwrites |
software | healthy | tests/test_export_review_pdfs.py:54 |
test_no_pdf_does_not_open_folder_dialog |
software | healthy | tests/test_export_review_pdfs.py:71 |
test_empty_jobs |
software | healthy | tests/test_export_review_pdfs.py:82 |
test_cancelled_folder_dialog_copies_nothing |
software | healthy | tests/test_export_review_pdfs.py:93 |
_media_parts |
software | healthy | tests/test_xlsx_cell_writer.py:25 |
logo_template |
software | healthy | tests/test_xlsx_cell_writer.py:31 |
test_logo_preserved |
software | healthy | tests/test_xlsx_cell_writer.py:52 |
test_string_value_overwrite |
software | healthy | tests/test_xlsx_cell_writer.py:59 |
test_number_into_styled_empty_cell_keeps_style |
software | healthy | tests/test_xlsx_cell_writer.py:67 |
test_creates_missing_cell_and_row |
software | healthy | tests/test_xlsx_cell_writer.py:78 |
test_float_integer_written_as_int |
software | healthy | tests/test_xlsx_cell_writer.py:86 |
test_place_date_partial_replace |
software | healthy | tests/test_xlsx_cell_writer.py:94 |
test_empty_values_skipped |
software | healthy | tests/test_xlsx_cell_writer.py:108 |
test_invalid_coord_raises |
software | healthy | tests/test_xlsx_cell_writer.py:117 |
test_col_to_index |
software | healthy | tests/test_xlsx_cell_writer.py:123 |
test_clear_formula_caches_strips_value_keeps_formula |
software | healthy | tests/test_xlsx_cell_writer.py:130 |
test_clear_formula_caches_leaves_plain_values |
software | healthy | tests/test_xlsx_cell_writer.py:145 |
test_force_full_calc_adds_attribute |
software | healthy | tests/test_xlsx_cell_writer.py:151 |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
README.md |
software | healthy | README.md |
CLAUDE.md |
software | healthy | CLAUDE.md |
pyproject.toml |
software | healthy | pyproject.toml |
LICENSE |
software | healthy | LICENSE |
CHANGELOG.md |
software | healthy | CHANGELOG.md |
test_stag_files.py |
software | healthy | tests/test_stag_files.py |
test_review_editor.py |
software | healthy | tests/test_review_editor.py |
test_email_sender.py |
software | healthy | tests/test_email_sender.py |
test_export_review_pdfs.py |
software | healthy | tests/test_export_review_pdfs.py |
test_xlsx_cell_writer.py |
software | healthy | tests/test_xlsx_cell_writer.py |
test_stag_adipidno.py |
software | healthy | tests/test_stag_adipidno.py |
test_storage.py |
software | healthy | tests/test_storage.py |
test_works_overview.py |
software | healthy | tests/test_works_overview.py |
test_stag_download.py |
software | healthy | tests/test_stag_download.py |
test_stag_file_import.py |
software | healthy | tests/test_stag_file_import.py |
test_attachment_versioning.py |
software | healthy | tests/test_attachment_versioning.py |
__init__.py |
software | healthy | tests/__init__.py |
conftest.py |
software | healthy | tests/conftest.py |
test_harmonogram_parser.py |
software | healthy | tests/test_harmonogram_parser.py |
test_history_current_year_note.py |
software | healthy | tests/test_history_current_year_note.py |
test_default_data.py |
software | healthy | tests/test_default_data.py |
test_system_print.py |
software | healthy | tests/test_system_print.py |
test_xlsx_image_in_cell.py |
software | healthy | tests/test_xlsx_image_in_cell.py |
test_management.py |
software | healthy | tests/test_management.py |
test_rejected_students.py |
software | healthy | tests/test_rejected_students.py |
test_spellcheck.py |
software | healthy | tests/test_spellcheck.py |
test_stag_obor_propagate.py |
software | healthy | tests/test_stag_obor_propagate.py |
test_stag_preview_merge.py |
software | healthy | tests/test_stag_preview_merge.py |
test_myq_client.py |
software | healthy | tests/test_myq_client.py |
test_defense_record.py |
software | healthy | tests/test_defense_record.py |
test_calendar_export.py |
software | healthy | tests/test_calendar_export.py |
test_stag_consistency.py |
software | healthy | tests/test_stag_consistency.py |
test_multiselect_actions.py |
software | healthy | tests/test_multiselect_actions.py |
test_documents_widget.py |
software | healthy | tests/test_documents_widget.py |
test_opposing_status_grade.py |
software | healthy | tests/test_opposing_status_grade.py |
test_stag_urls.py |
software | healthy | tests/test_stag_urls.py |
test_proposals.py |
software | healthy | tests/test_proposals.py |
test_review_documents.py |
software | healthy | tests/test_review_documents.py |
test_review_sent_ui.py |
software | healthy | tests/test_review_sent_ui.py |
test_all_tab_year_colors.py |
software | healthy | tests/test_all_tab_year_colors.py |
test_xlsx_pdf_polish.py |
software | healthy | tests/test_xlsx_pdf_polish.py |
test_theses_tree_grades.py |
software | healthy | tests/test_theses_tree_grades.py |
test_appendix_cleanup.py |
software | healthy | tests/test_appendix_cleanup.py |
test_stag_badge_dismiss.py |
software | healthy | tests/test_stag_badge_dismiss.py |
test_review_grade.py |
software | healthy | tests/test_review_grade.py |
test_send_reviews_matching.py |
software | healthy | tests/test_send_reviews_matching.py |
test_review_grade_from_file.py |
software | healthy | tests/test_review_grade_from_file.py |
test_review_rowheight.py |
software | healthy | tests/test_review_rowheight.py |
test_stag_api.py |
software | healthy | tests/test_stag_api.py |
test_obor_badge.py |
software | healthy | tests/test_obor_badge.py |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
_FakeResp |
software | healthy | tests/test_stag_download.py:144 |
FakeClient |
software | healthy | tests/test_stag_download.py:236 |
_FakeNet |
software | healthy | tests/test_myq_client.py:51 |
_RaisingOpener |
software | healthy | tests/test_myq_client.py:276 |
FakeClient |
software | healthy | tests/test_stag_consistency.py:186 |
_StubPM |
software | healthy | tests/test_send_reviews_matching.py:26 |
FakePM |
software | healthy | tests/test_history_status_filter.py:32 |
T |
software | healthy | tests/test_history_status_filter.py:99 |
_FakePM |
software | healthy | tests/test_send_reviews_dialog.py:33 |
_FakeClient |
software | healthy | tests/test_myq_print_dialog.py:189 |
_FakeResp |
software | healthy | tests/test_spellcheck_download.py:12 |
FakeClient |
software | healthy | tests/test_stag_sync.py:140 |
_FakeResp |
software | healthy | tests/test_stag_connectivity.py:11 |
ThesisType |
software | healthy | src/bpdpmanager/models/enums.py:8 |
StudyForm |
software | healthy | src/bpdpmanager/models/enums.py:17 |
OpponentKind |
software | healthy | src/bpdpmanager/models/enums.py:26 |
AttachmentKind |
software | healthy | src/bpdpmanager/models/enums.py:35 |
PlagiarismVerdict |
software | healthy | src/bpdpmanager/models/enums.py:71 |
ThesisStatus |
software | healthy | src/bpdpmanager/models/enums.py:100 |
AcademicYear |
software | healthy | src/bpdpmanager/models/academic_year.py:10 |
TemplateCriterion |
software | healthy | src/bpdpmanager/models/review_template.py:19 |
ReviewTemplate |
software | healthy | src/bpdpmanager/models/review_template.py:35 |
Student |
software | healthy | src/bpdpmanager/models/student.py:10 |
Obor |
software | healthy | src/bpdpmanager/models/obor.py:6 |
ThesisProposal |
software | healthy | src/bpdpmanager/models/thesis_proposal.py:19 |
CommitteeMember |
software | healthy | src/bpdpmanager/models/komise.py:35 |
DefenseSlot |
software | healthy | src/bpdpmanager/models/komise.py:42 |
Committee |
software | healthy | src/bpdpmanager/models/komise.py:55 |
Deadline |
software | healthy | src/bpdpmanager/models/thesis.py:13 |
Attachment |
software | healthy | src/bpdpmanager/models/thesis.py:19 |
Thesis |
software | healthy | src/bpdpmanager/models/thesis.py:33 |
RejectedStudent |
software | healthy | src/bpdpmanager/models/rejected_student.py:15 |
KeyDateCategory |
software | healthy | src/bpdpmanager/models/harmonogram.py:9 |
KeyDate |
software | healthy | src/bpdpmanager/models/harmonogram.py:50 |
AcademicYearInfo |
software | healthy | src/bpdpmanager/models/harmonogram.py:79 |
SmtpConfig |
software | healthy | src/bpdpmanager/models/profile.py:11 |
Profile |
software | healthy | src/bpdpmanager/models/profile.py:26 |
ProfileRegistry |
software | healthy | src/bpdpmanager/models/profile.py:43 |
OpposingThesis |
software | healthy | src/bpdpmanager/models/opposing_thesis.py:21 |
Opponent |
software | healthy | src/bpdpmanager/models/opponent.py:11 |
Supervisor |
software | healthy | src/bpdpmanager/models/supervisor.py:18 |
CriterionScore |
software | healthy | src/bpdpmanager/models/review.py:23 |
Review |
software | healthy | src/bpdpmanager/models/review.py:40 |
RejectedStudentsDialog |
software | healthy | src/bpdpmanager/ui/rejected_students_dialog.py:25 |
OpposingTab |
software | healthy | src/bpdpmanager/ui/opposing_tab.py:88 |
_PrintWorker |
software | healthy | src/bpdpmanager/ui/myq_print_dialog.py:53 |
_SystemPrintWorker |
software | healthy | src/bpdpmanager/ui/myq_print_dialog.py:102 |
MyQPrintDialog |
software | healthy | src/bpdpmanager/ui/myq_print_dialog.py:129 |
NewProfileDialog |
software | healthy | src/bpdpmanager/ui/new_profile_dialog.py:28 |
HelpDialog |
software | healthy | src/bpdpmanager/ui/help_dialog.py:65 |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
tests |
software | healthy | tests |
scripts |
software | healthy | scripts |
examples |
software | healthy | examples |
src |
software | healthy | src |
bpdpmanager |
software | healthy | src/bpdpmanager |
models |
software | healthy | src/bpdpmanager/models |
i18n |
software | healthy | src/bpdpmanager/i18n |
ui |
software | healthy | src/bpdpmanager/ui |
widgets |
software | healthy | src/bpdpmanager/ui/widgets |
resources |
software | healthy | src/bpdpmanager/resources |
services |
software | healthy | src/bpdpmanager/services |
storage |
software | healthy | src/bpdpmanager/storage |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-b1l_olcv |
software | healthy | /tmp/repobility-clone-b1l_olcv |
This page is publicly accessible at:
https://repobility.com/scan/acd776fc-3f5a-411c-abb4-f4d454286543/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/acd776fc-3f5a-411c-abb4-f4d454286543/
Important — please don't re-submit the same URL repeatedly. The submission endpoint is idempotent: re-submitting the same git URL returns this same scan_token, not a new one. To re-scan this repo, sign up free and use the dashboard.