pyarchinit-mini 2.4.0__tar.gz → 2.4.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (475) hide show
  1. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/CHANGELOG.md +37 -0
  2. {pyarchinit_mini-2.4.0/pyarchinit_mini.egg-info → pyarchinit_mini-2.4.1}/PKG-INFO +1 -1
  3. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/__init__.py +1 -1
  4. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/paradata_ui_routes.py +22 -1
  5. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/base.html +2 -0
  6. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/harris_creator/editor.html +70 -12
  7. pyarchinit_mini-2.4.1/pyarchinit_mini/web_interface/templates/paradata/index.html +53 -0
  8. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1/pyarchinit_mini.egg-info}/PKG-INFO +1 -1
  9. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini.egg-info/SOURCES.txt +1 -0
  10. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyproject.toml +1 -1
  11. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/MANIFEST.in +0 -0
  12. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/README.md +0 -0
  13. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/babel.cfg +0 -0
  14. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/data/media_viewer_demo.db +0 -0
  15. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/data/pyarchinit_mini 2.db +0 -0
  16. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/data/pyarchinit_mini.db +0 -0
  17. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/data/pyarchinit_mini_sample.db +0 -0
  18. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/data/pyarchinit_tutorial.db +0 -0
  19. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/data/pyarchinit_tutorial_backup_20251030_093228.db +0 -0
  20. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/data/pyarchinit_tutorial_clean.db +0 -0
  21. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/data/pyarchinit_tutorial_video.db +0 -0
  22. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/data/pyarchinit_v18_demo.db +0 -0
  23. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/logo/logo_pyarchinit-mini.png +0 -0
  24. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/api/__init__.py +0 -0
  25. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/api/auth.py +0 -0
  26. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/api/dependencies.py +0 -0
  27. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/api/graphml.py +0 -0
  28. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/api/inventario.py +0 -0
  29. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/api/schemas.py +0 -0
  30. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/api/site.py +0 -0
  31. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/api/sync.py +0 -0
  32. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/api/us.py +0 -0
  33. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/cli/__init__.py +0 -0
  34. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/cli/export_import_cli.py +0 -0
  35. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/cli/extended_matrix_import.py +0 -0
  36. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/cli/graphml_cli.py +0 -0
  37. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/cli/harris_import.py +0 -0
  38. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/cli/harris_template.py +0 -0
  39. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/cli/migrate.py +0 -0
  40. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/cli/migrate_vocab.py +0 -0
  41. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/cli/pyarchinit_import_export_cli.py +0 -0
  42. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/cli/sync_cli.py +0 -0
  43. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/cli_interface/__init__.py +0 -0
  44. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/cli_interface/cli_app.py +0 -0
  45. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/config/__init__.py +0 -0
  46. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/config/connection_manager.py +0 -0
  47. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/config/em_node_config_manager.py +0 -0
  48. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/config/em_node_types.yaml +0 -0
  49. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/database/__init__.py +0 -0
  50. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/database/concurrency_manager.py +0 -0
  51. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/database/connection.py +0 -0
  52. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/database/database_creator.py +0 -0
  53. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/database/manager.py +0 -0
  54. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/database/migration_scripts/__init__.py +0 -0
  55. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/database/migration_scripts/add_file_path.py +0 -0
  56. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/database/migration_scripts/add_i18n_columns.py +0 -0
  57. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/database/migration_scripts/add_tipo_documento.py +0 -0
  58. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/database/migration_scripts/change_us_area_to_text.py +0 -0
  59. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/database/migration_scripts/change_us_area_to_text_simple.py +0 -0
  60. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/database/migrations/_2026_05_node_uuid_backfill.py +0 -0
  61. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/database/migrations/_2026_05_node_uuid_schema.py +0 -0
  62. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/database/migrations/_2026_05_vocab_alignment.py +0 -0
  63. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/database/migrations/__init__.py +0 -0
  64. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/database/migrations/backup.py +0 -0
  65. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/database/postgres_installer.py +0 -0
  66. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/database/schemas.py +0 -0
  67. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/database/utils.py +0 -0
  68. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/desktop_gui/__init__.py +0 -0
  69. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/desktop_gui/analytics_dialog.py +0 -0
  70. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/desktop_gui/assets/logo.png +0 -0
  71. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/desktop_gui/dialogs.py +0 -0
  72. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/desktop_gui/excel_import_dialog.py +0 -0
  73. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/desktop_gui/export_import_dialog.py +0 -0
  74. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/desktop_gui/graphml_export_dialog.py +0 -0
  75. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/desktop_gui/gui_app.py +0 -0
  76. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/desktop_gui/harris_matrix_editor.py +0 -0
  77. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/desktop_gui/i18n.py +0 -0
  78. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/desktop_gui/icons.py +0 -0
  79. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/desktop_gui/inventario_dialog_extended.py +0 -0
  80. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/desktop_gui/main_window.py +0 -0
  81. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/desktop_gui/media_manager_advanced.py +0 -0
  82. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/desktop_gui/postgres_installer_dialog.py +0 -0
  83. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/desktop_gui/pottery_dialog_extended.py +0 -0
  84. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/desktop_gui/pottery_panel.py +0 -0
  85. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/desktop_gui/pyarchinit_import_export_dialog.py +0 -0
  86. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/desktop_gui/thesaurus_dialog.py +0 -0
  87. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/desktop_gui/us_dialog_extended.py +0 -0
  88. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/dto/__init__.py +0 -0
  89. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/dto/inventario_dto.py +0 -0
  90. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/dto/site_dto.py +0 -0
  91. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/dto/us_dto.py +0 -0
  92. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/exceptions.py +0 -0
  93. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/graphml_converter/__init__.py +0 -0
  94. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/graphml_converter/converter.py +0 -0
  95. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/graphml_converter/dot_parser.py +0 -0
  96. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/graphml_converter/em_palette.py +0 -0
  97. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/graphml_converter/graphml_builder.py +0 -0
  98. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/graphml_converter/graphml_exporter.py +0 -0
  99. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/graphml_converter/pure_networkx_exporter.py +0 -0
  100. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/graphml_converter/svg_resources.py +0 -0
  101. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/graphml_converter/templates/EM_palette.graphml +0 -0
  102. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/graphml_converter/x11_colors.py +0 -0
  103. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/graphml_converter/yed_template.py +0 -0
  104. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/graphml_io/__init__.py +0 -0
  105. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/graphml_io/reader.py +0 -0
  106. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/graphml_io/writer.py +0 -0
  107. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/graphml_io/yed_writer.py +0 -0
  108. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/graphproj/__init__.py +0 -0
  109. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/graphproj/auto_regen.py +0 -0
  110. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/graphproj/edge_registry.py +0 -0
  111. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/graphproj/exceptions.py +0 -0
  112. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/graphproj/filesystem.py +0 -0
  113. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/graphproj/ingest_plan.py +0 -0
  114. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/graphproj/ingestor.py +0 -0
  115. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/graphproj/paradata_store.py +0 -0
  116. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/graphproj/projector.py +0 -0
  117. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/harris_matrix/__init__.py +0 -0
  118. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/harris_matrix/enhanced_visualizer.py +0 -0
  119. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/harris_matrix/matrix_generator.py +0 -0
  120. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/harris_matrix/matrix_visualizer.py +0 -0
  121. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/harris_matrix/pyarchinit_visualizer.py +0 -0
  122. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/harris_swimlane/__init__.py +0 -0
  123. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/harris_swimlane/compound_layout.py +0 -0
  124. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/harris_swimlane/exceptions.py +0 -0
  125. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/harris_swimlane/period_sync_service.py +0 -0
  126. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/harris_swimlane/row_provider.py +0 -0
  127. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/harris_swimlane/swimlane_state.py +0 -0
  128. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/i18n/__init__.py +0 -0
  129. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/i18n/flask_babel_config.py +0 -0
  130. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/i18n/locale_manager.py +0 -0
  131. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/__init__.py +0 -0
  132. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/__main__.py +0 -0
  133. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/blender_client.py +0 -0
  134. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/config.py +0 -0
  135. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/event_stream.py +0 -0
  136. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/graphml_parser.py +0 -0
  137. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/http_server.py +0 -0
  138. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/period_filter.py +0 -0
  139. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/prompts/__init__.py +0 -0
  140. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/prompts/base_prompt.py +0 -0
  141. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/prompts/period_visualization_prompt.py +0 -0
  142. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/prompts/stratigraphic_model_prompt.py +0 -0
  143. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/prompts/us_description_prompt.py +0 -0
  144. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/proxy_generator.py +0 -0
  145. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/resources/__init__.py +0 -0
  146. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/resources/base_resource.py +0 -0
  147. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/resources/graphml_resource.py +0 -0
  148. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/resources/periods_resource.py +0 -0
  149. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/resources/relationships_resource.py +0 -0
  150. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/resources/sites_resource.py +0 -0
  151. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/resources/us_resource.py +0 -0
  152. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/server.py +0 -0
  153. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/__init__.py +0 -0
  154. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/base_tool.py +0 -0
  155. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/batch_insert_tool.py +0 -0
  156. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/build_3d_tool.py +0 -0
  157. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/chatgpt_fetch_tool.py +0 -0
  158. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/chatgpt_search_tool.py +0 -0
  159. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/configure_em_nodes_tool.py +0 -0
  160. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/create_database_tool.py +0 -0
  161. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/create_harris_matrix_tool.py +0 -0
  162. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/data_import_parser_tool.py +0 -0
  163. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/data_management_tool.py +0 -0
  164. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/database_manager_tool.py +0 -0
  165. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/delete_data_tool.py +0 -0
  166. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/export_harris_matrix_graphml_tool.py +0 -0
  167. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/export_tool.py +0 -0
  168. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/filter_tool.py +0 -0
  169. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/generate_report_tool.py +0 -0
  170. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/get_schema_tool.py +0 -0
  171. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/import_excel_tool.py +0 -0
  172. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/insert_data_tool.py +0 -0
  173. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/manage_services_tool.py +0 -0
  174. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/material_tool.py +0 -0
  175. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/media_management_tool.py +0 -0
  176. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/position_tool.py +0 -0
  177. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/pyarchinit_sync_tool.py +0 -0
  178. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/resolve_conflicts_tool.py +0 -0
  179. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/service_management_tool.py +0 -0
  180. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/thesaurus_management_tool.py +0 -0
  181. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/update_data_tool.py +0 -0
  182. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/upload_file_tool.py +0 -0
  183. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/validate_relationship_format_tool.py +0 -0
  184. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/validate_relationship_integrity_tool.py +0 -0
  185. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/validate_stratigraphic_relationships_tool.py +0 -0
  186. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/mcp_server/tools/validate_stratigraphy_tool.py +0 -0
  187. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/media_manager/__init__.py +0 -0
  188. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/media_manager/media_handler.py +0 -0
  189. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/models/__init__.py +0 -0
  190. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/models/ai_chat.py +0 -0
  191. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/models/app_setting.py +0 -0
  192. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/models/base.py +0 -0
  193. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/models/datazione.py +0 -0
  194. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/models/extended_matrix.py +0 -0
  195. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/models/harris_matrix.py +0 -0
  196. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/models/inventario_materiali.py +0 -0
  197. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/models/media.py +0 -0
  198. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/models/pottery.py +0 -0
  199. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/models/site.py +0 -0
  200. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/models/thesaurus.py +0 -0
  201. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/models/tma.py +0 -0
  202. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/models/us.py +0 -0
  203. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/models/user.py +0 -0
  204. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/pdf_export/__init__.py +0 -0
  205. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/pdf_export/pdf_generator.py +0 -0
  206. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/pdf_export/pdf_generator_backup.py +0 -0
  207. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/pdf_export/pyarchinit_finds_template.py +0 -0
  208. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/pdf_export/pyarchinit_inventory_template.py +0 -0
  209. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/pdf_export/usm_implementation.py +0 -0
  210. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/s3d_integration/__init__.py +0 -0
  211. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/s3d_integration/model_manager.py +0 -0
  212. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/s3d_integration/s3d_converter.py +0 -0
  213. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/scripts/__init__.py +0 -0
  214. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/scripts/auto_translate.py +0 -0
  215. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/scripts/configure_claude_desktop.py +0 -0
  216. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/scripts/create_admin_user.py +0 -0
  217. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/scripts/create_correct_stratigraphy_sample.py +0 -0
  218. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/scripts/create_italian_sample_database.py +0 -0
  219. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/scripts/create_sample_for_webapp.py +0 -0
  220. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/scripts/create_sample_with_50_us.py +0 -0
  221. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/scripts/generate_test_3d_model.py +0 -0
  222. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/scripts/load_italian_as_main.py +0 -0
  223. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/scripts/load_sample_as_main.py +0 -0
  224. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/scripts/migrate_relationships.py +0 -0
  225. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/scripts/populate_sample_data.py +0 -0
  226. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/scripts/populate_simple_data.py +0 -0
  227. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/scripts/setup_auth.py +0 -0
  228. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/scripts/setup_user_env.py +0 -0
  229. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/scripts/test_cascade_delete.py +0 -0
  230. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/scripts/test_relationship_fix.py +0 -0
  231. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/scripts/update_sample_relationships.py +0 -0
  232. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/scripts/update_urls_and_versions.py +0 -0
  233. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/scripts/verify_docs.py +0 -0
  234. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/services/__init__.py +0 -0
  235. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/services/ai_assistant_service.py +0 -0
  236. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/services/ai_chat_service.py +0 -0
  237. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/services/analytics_service.py +0 -0
  238. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/services/app_setting_service.py +0 -0
  239. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/services/backup_service.py +0 -0
  240. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/services/command_parser.py +0 -0
  241. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/services/datazione_service.py +0 -0
  242. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/services/export_import_service.py +0 -0
  243. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/services/extended_matrix_excel_parser.py +0 -0
  244. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/services/import_export_service.py +0 -0
  245. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/services/inventario_service.py +0 -0
  246. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/services/mcp_executor.py +0 -0
  247. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/services/media_service.py +0 -0
  248. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/services/periodizzazione_service.py +0 -0
  249. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/services/pottery_dto.py +0 -0
  250. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/services/pottery_pdf_service.py +0 -0
  251. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/services/pottery_service.py +0 -0
  252. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/services/relationship_sync_service.py +0 -0
  253. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/services/search_service.py +0 -0
  254. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/services/site_service.py +0 -0
  255. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/services/thesaurus_service.py +0 -0
  256. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/services/tma_service.py +0 -0
  257. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/services/us_service.py +0 -0
  258. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/services/user_service.py +0 -0
  259. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/stratigraph/__init__.py +0 -0
  260. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/stratigraph/bundle_creator.py +0 -0
  261. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/stratigraph/bundle_manifest.py +0 -0
  262. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/stratigraph/bundle_validator.py +0 -0
  263. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/stratigraph/connectivity_monitor.py +0 -0
  264. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/stratigraph/sync_orchestrator.py +0 -0
  265. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/stratigraph/sync_queue.py +0 -0
  266. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/stratigraph/sync_state_machine.py +0 -0
  267. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/stratigraph/uuid_manager.py +0 -0
  268. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/translations/en/LC_MESSAGES/messages.mo +0 -0
  269. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/translations/en/LC_MESSAGES/messages.po +0 -0
  270. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/translations/it/LC_MESSAGES/messages.mo +0 -0
  271. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/translations/it/LC_MESSAGES/messages.po +0 -0
  272. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/translations/messages.pot +0 -0
  273. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/utils/__init__.py +0 -0
  274. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/utils/auth.py +0 -0
  275. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/utils/exceptions.py +0 -0
  276. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/utils/relationship_validator.py +0 -0
  277. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/utils/stratigraphic_validator.py +0 -0
  278. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/utils/tma_label_generator.py +0 -0
  279. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/utils/validators.py +0 -0
  280. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/vocab/__init__.py +0 -0
  281. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/vocab/exceptions.py +0 -0
  282. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/vocab/i18n.py +0 -0
  283. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/vocab/loader.py +0 -0
  284. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/vocab/provider.py +0 -0
  285. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/vocab/translations/vocab_en.json +0 -0
  286. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/vocab/translations/vocab_it.json +0 -0
  287. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/vocab/types.py +0 -0
  288. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/app.py +0 -0
  289. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/auth_routes.py +0 -0
  290. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/em_node_config_routes.py +0 -0
  291. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/excel_import_routes.py +0 -0
  292. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/graph_routes.py +0 -0
  293. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/harris_creator_routes.py +0 -0
  294. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/paradata_routes.py +0 -0
  295. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/pottery_routes.py +0 -0
  296. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/pyarchinit_import_export_routes.py +0 -0
  297. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/s3d_routes.py +0 -0
  298. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/socketio_events.py +0 -0
  299. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/static/css/style.css +0 -0
  300. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/static/images/favicon.ico +0 -0
  301. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/static/images/logo.png +0 -0
  302. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/static/images/no-image.png +0 -0
  303. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/static/images/pyarchinit-mini-logo.png +0 -0
  304. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/static/js/OrbitControls.js +0 -0
  305. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/static/js/harris_creator_editor.js +0 -0
  306. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/static/js/stratigraphic_layout.js +0 -0
  307. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/static/js/three-d-viewer.js +0 -0
  308. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/static/js/three.min.js +0 -0
  309. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/static/js/universal_search.js +0 -0
  310. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/static/uploads/3d_models/Sito Archeologico di Esempio/site/stratigraphy_test.bin +0 -0
  311. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/static/uploads/3d_models/Sito Archeologico di Esempio/site/stratigraphy_test.gltf +0 -0
  312. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/static/uploads/3d_models/Sito Archeologico di Esempio/site/stratigraphy_test.mtl +0 -0
  313. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/static/uploads/3d_models/Sito Archeologico di Esempio/site/stratigraphy_test.obj +0 -0
  314. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/3d_builder/index.html +0 -0
  315. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/3d_viewer/viewer.html +0 -0
  316. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/admin/backups.html +0 -0
  317. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/admin/database.html +0 -0
  318. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/admin/database_connect.html +0 -0
  319. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/admin/database_info.html +0 -0
  320. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/admin/database_upload.html +0 -0
  321. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/admin/settings_ai.html +0 -0
  322. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/ai/assistant.html +0 -0
  323. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/analytics/dashboard.html +0 -0
  324. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/auth/login.html +0 -0
  325. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/auth/users.html +0 -0
  326. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/blender_viewer.html +0 -0
  327. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/components/language_switcher.html +0 -0
  328. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/dashboard.html +0 -0
  329. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/datazioni/list.html +0 -0
  330. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/docs/index.html +0 -0
  331. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/em_node_config/index.html +0 -0
  332. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/excel_import/index.html +0 -0
  333. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/export/export_import.html +0 -0
  334. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/graph_import_preview.html +0 -0
  335. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/graph_import_result.html +0 -0
  336. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/harris_creator/index.html +0 -0
  337. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/harris_matrix/graphml_export.html +0 -0
  338. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/harris_matrix/large_graph_message.html +0 -0
  339. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/harris_matrix/stratigraph_viewer.html +0 -0
  340. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/harris_matrix/view.html +0 -0
  341. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/harris_matrix/view_graphviz.html +0 -0
  342. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/harris_matrix/viewer_3d_integrated.html +0 -0
  343. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/inventario/form.html +0 -0
  344. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/inventario/list.html +0 -0
  345. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/media/list.html +0 -0
  346. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/media/upload.html +0 -0
  347. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/messaging/contacts.html +0 -0
  348. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/operators/directory.html +0 -0
  349. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/paradata/edit.html +0 -0
  350. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/paradata/list.html +0 -0
  351. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/pdf/pottery_sheet.html +0 -0
  352. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/periodizzazione/form.html +0 -0
  353. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/periodizzazione/list.html +0 -0
  354. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/periodizzazione/periods.html +0 -0
  355. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/pottery/detail.html +0 -0
  356. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/pottery/form.html +0 -0
  357. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/pottery/import_form.html +0 -0
  358. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/pottery/list.html +0 -0
  359. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/pyarchinit_import_export/index.html +0 -0
  360. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/search/results.html +0 -0
  361. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/sites/detail.html +0 -0
  362. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/sites/form.html +0 -0
  363. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/sites/list.html +0 -0
  364. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/sites/map.html +0 -0
  365. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/stats/targeted.html +0 -0
  366. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/thesaurus/list.html +0 -0
  367. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/tma/form.html +0 -0
  368. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/tma/list.html +0 -0
  369. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/us/form.html +0 -0
  370. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/us/list.html +0 -0
  371. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/templates/validation/report.html +0 -0
  372. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/test_prova_extended_matrix.graphml +0 -0
  373. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/three_d_builder_routes.py +0 -0
  374. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/uploads/graphml/Sito Archeologico di Esempio_stratigraphy.graphml +0 -0
  375. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/uploads/graphml/Sito Archeologico di Esempio_stratigraphy.json +0 -0
  376. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/vocab_routes.py +0 -0
  377. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/web_interface/static/uploads/graphml/Scavo archeologico_heriverse.json +0 -0
  378. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/web_interface/static/uploads/graphml/Scavo archeologico_stratigraphy.graphml +0 -0
  379. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/web_interface/static/uploads/graphml/Scavo archeologico_stratigraphy.json +0 -0
  380. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini/web_interface/web_interface/static/uploads/graphml/Sito Archeologico di Esempio_stratigraphy.json +0 -0
  381. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini.egg-info/dependency_links.txt +0 -0
  382. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini.egg-info/entry_points.txt +0 -0
  383. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini.egg-info/not-zip-safe +0 -0
  384. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini.egg-info/requires.txt +0 -0
  385. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/pyarchinit_mini.egg-info/top_level.txt +0 -0
  386. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/requirements.txt +0 -0
  387. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/setup.cfg +0 -0
  388. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/setup.py +0 -0
  389. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/__init__.py +0 -0
  390. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/conftest.py +0 -0
  391. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/e2e/__init__.py +0 -0
  392. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/e2e/test_web_vocab_full_flow.py +0 -0
  393. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/fixtures/_generate_baseline_graphml.py +0 -0
  394. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/fixtures/_generate_harris_swimlane_synthetic.py +0 -0
  395. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/fixtures/_generate_synthetic_db.py +0 -0
  396. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/fixtures/build_legacy_with_pottery.py +0 -0
  397. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/integration/__init__.py +0 -0
  398. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/integration/test_admin_ai_settings_routes.py +0 -0
  399. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/integration/test_admin_backup_routes.py +0 -0
  400. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/integration/test_auto_regen_on_save.py +0 -0
  401. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/integration/test_full_sync_flow.py +0 -0
  402. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/integration/test_graph_import_flow.py +0 -0
  403. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/integration/test_graph_routes.py +0 -0
  404. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/integration/test_harris_matrix_post_cutover.py +0 -0
  405. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/integration/test_harris_matrix_visual_parity.py +0 -0
  406. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/integration/test_harris_swimlane_routes_create_row.py +0 -0
  407. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/integration/test_harris_swimlane_routes_load.py +0 -0
  408. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/integration/test_harris_swimlane_routes_save.py +0 -0
  409. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/integration/test_harris_swimlane_routes_session_missing.py +0 -0
  410. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/integration/test_migrate_vocab_cli.py +0 -0
  411. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/integration/test_paradata_routes_authors.py +0 -0
  412. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/integration/test_paradata_routes_other_types.py +0 -0
  413. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/integration/test_paradata_ui.py +0 -0
  414. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/integration/test_pottery_completion.py +0 -0
  415. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/integration/test_pottery_excel_roundtrip.py +0 -0
  416. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/integration/test_pottery_legacy_upgrade.py +0 -0
  417. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/integration/test_pottery_routes.py +0 -0
  418. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/integration/test_spec2_coverage_gaps.py +0 -0
  419. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/integration/test_vocab_routes.py +0 -0
  420. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/integration/test_yed_export_route.py +0 -0
  421. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/integration/test_yed_writer_parity.py +0 -0
  422. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/__init__.py +0 -0
  423. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_app_setting_model.py +0 -0
  424. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_app_setting_service.py +0 -0
  425. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_auto_regen.py +0 -0
  426. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_backup_service.py +0 -0
  427. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_bundle.py +0 -0
  428. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_concurrency_columns.py +0 -0
  429. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_concurrency_manager.py +0 -0
  430. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_connectivity_monitor.py +0 -0
  431. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_database_utils.py +0 -0
  432. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_deprecated_writers_shim.py +0 -0
  433. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_em_palette_vocab_backed.py +0 -0
  434. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_graphml_io_reader.py +0 -0
  435. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_graphml_io_writer.py +0 -0
  436. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_graphproj_edge_registry.py +0 -0
  437. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_graphproj_exceptions.py +0 -0
  438. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_graphproj_filesystem.py +0 -0
  439. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_graphproj_ingestor_apply.py +0 -0
  440. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_graphproj_ingestor_preview.py +0 -0
  441. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_graphproj_projector.py +0 -0
  442. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_harris_swimlane_compound_layout.py +0 -0
  443. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_harris_swimlane_exceptions.py +0 -0
  444. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_harris_swimlane_period_sync.py +0 -0
  445. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_harris_swimlane_row_provider.py +0 -0
  446. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_harris_swimlane_state_load.py +0 -0
  447. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_harris_swimlane_state_save.py +0 -0
  448. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_ingest_plan.py +0 -0
  449. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_inventario_schema.py +0 -0
  450. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_migrations_backup.py +0 -0
  451. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_migrations_idempotent.py +0 -0
  452. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_optimistic_locking.py +0 -0
  453. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_paradata_store_authors.py +0 -0
  454. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_paradata_store_basic.py +0 -0
  455. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_paradata_store_other_types.py +0 -0
  456. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_pottery_dto.py +0 -0
  457. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_pottery_model.py +0 -0
  458. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_pottery_service.py +0 -0
  459. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_s3d_converter_vocab_backed.py +0 -0
  460. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_site_service.py +0 -0
  461. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_sync_api.py +0 -0
  462. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_sync_cli.py +0 -0
  463. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_sync_orchestrator.py +0 -0
  464. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_sync_queue.py +0 -0
  465. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_sync_state_machine.py +0 -0
  466. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_us_dto_unita_tipo_validator.py +0 -0
  467. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_us_schema.py +0 -0
  468. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_uuid_manager.py +0 -0
  469. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_vocab_bootstrap_failures.py +0 -0
  470. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_vocab_exceptions.py +0 -0
  471. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_vocab_i18n.py +0 -0
  472. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_vocab_loader.py +0 -0
  473. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_vocab_provider.py +0 -0
  474. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_vocab_types.py +0 -0
  475. {pyarchinit_mini-2.4.0 → pyarchinit_mini-2.4.1}/tests/unit/test_yed_writer.py +0 -0
@@ -1,3 +1,40 @@
1
+ ## [2.4.1] - 2026-05-18
2
+
3
+ ### Fixed (IT)
4
+ - Editor Harris Matrix: `window._currentSite` ora inizializzato server-side
5
+ dall'hidden input `#site-name`, quindi i pulsanti Save / + New Row /
6
+ Export yEd GraphML funzionano anche se `/api/load/<site>` fallisce (caso
7
+ tipico: migration `node_uuid` non ancora applicata sul DB di produzione).
8
+ - Editor Harris Matrix: se `/api/load/<site>` ritorna errore, il corpo
9
+ della risposta viene mostrato in un alert con suggerimento di lanciare
10
+ `pyarchinit-mini-migrate-vocab --apply` (prima era silenzioso).
11
+ - Editor Harris Matrix: messaggio "No site loaded" sostituito con
12
+ istruzione esplicita di tornare all'indice del Creator.
13
+
14
+ ### Added (IT)
15
+ - Nuova pagina `/paradata/` (sezione Tools): picker sito + bottoni rapidi
16
+ ai 5 tipi di paradata (authors, licenses, embargoes, documents, epochs).
17
+ Link aggiunto sia al dropdown navbar che alla sidebar laterale.
18
+ - Modal di aiuto nell'editor Harris (icona "?") che spiega la differenza
19
+ tra GraphML (s3dgraphy clean, auto-regen, per Datacenter/3D), Export
20
+ yEd GraphML (TableNode swimlane, on-demand, per yEd Desktop), DOT
21
+ (Graphviz), PNG (snapshot raster).
22
+ - Tooltip migliorati su tutti i pulsanti di export.
23
+
24
+ ### Fixed (EN)
25
+ - Harris Matrix Editor: `window._currentSite` is now initialised server-side
26
+ from hidden input `#site-name`, so Save / + New Row / Export buttons work
27
+ even when `/api/load/<site>` fails (typical when the `node_uuid` migration
28
+ is still pending on production).
29
+ - Harris Matrix Editor: failed swimlane loads now surface the backend error
30
+ body in an alert with a hint to run `pyarchinit-mini-migrate-vocab`.
31
+
32
+ ### Added (EN)
33
+ - New `/paradata/` landing page (Tools section): site picker + quick links
34
+ to the 5 paradata kinds. Sidebar entries added.
35
+ - Help modal explaining the four export formats (GraphML, yEd GraphML,
36
+ DOT, PNG) accessible via a question-mark icon on the editor toolbar.
37
+
1
38
  ## [2.4.0] - 2026-05-18
2
39
 
3
40
  ### Added (IT)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pyarchinit-mini
3
- Version: 2.4.0
3
+ Version: 2.4.1
4
4
  Summary: Lightweight archaeological data management system with REST API, Web UI, Desktop GUI, CLI, multi-user authentication, real-time collaboration, analytics dashboard, PyArchInit import/export, Heriverse/ATON export integration, and 3D CRUD viewer
5
5
  Home-page: https://github.com/enzococca/pyarchinit-mini
6
6
  Author: PyArchInit Team
@@ -23,7 +23,7 @@ Features:
23
23
  - Scalable and modular architecture
24
24
  """
25
25
 
26
- __version__ = "2.4.0"
26
+ __version__ = "2.4.1"
27
27
  __author__ = "PyArchInit Team"
28
28
  __email__ = "enzo.ccc@gmail.com"
29
29
 
@@ -3,7 +3,9 @@
3
3
  Backed by ParadataStore (JSON sidecar). REST counterparts live in
4
4
  paradata_routes.py.
5
5
  """
6
- from flask import Blueprint, render_template, request, redirect, url_for, abort
6
+ import os
7
+
8
+ from flask import Blueprint, current_app, render_template, request, redirect, url_for, abort
7
9
 
8
10
  from pyarchinit_mini.graphproj.paradata_store import ParadataStore
9
11
  from pyarchinit_mini.graphproj.exceptions import ParadataConflict, ParadataNotFound
@@ -47,6 +49,25 @@ def _kind_or_404(kind):
47
49
  return KIND_DEF[kind]
48
50
 
49
51
 
52
+ @paradata_ui_bp.get("/", endpoint="index")
53
+ def index():
54
+ """Paradata landing: list available sites + the 5 kinds."""
55
+ from pyarchinit_mini.models.site import Site
56
+ if hasattr(current_app, "db_manager"):
57
+ session_ctx = current_app.db_manager.connection.get_session()
58
+ else:
59
+ from pyarchinit_mini.database.connection import DatabaseConnection
60
+ db_url = os.getenv("DATABASE_URL", "sqlite:///pyarchinit_mini.db")
61
+ session_ctx = DatabaseConnection.from_url(db_url).get_session()
62
+ with session_ctx as db:
63
+ sites = [s.sito for s in db.query(Site).order_by(Site.sito).all()]
64
+ return render_template(
65
+ "paradata/index.html",
66
+ sites=sites,
67
+ kinds=list(KIND_DEF.keys()),
68
+ )
69
+
70
+
50
71
  @paradata_ui_bp.get("/<site>/<kind>", endpoint="list")
51
72
  def list_(site, kind):
52
73
  cfg = _kind_or_404(kind)
@@ -84,6 +84,7 @@
84
84
  <li><hr class="dropdown-divider"></li>
85
85
  <li><h6 class="dropdown-header">{{ _('Tools') }}</h6></li>
86
86
  <li><a class="dropdown-item" href="{{ url_for('harris_creator.index') }}"><i class="fas fa-project-diagram"></i> {{ _('Harris Matrix Creator') }}</a></li>
87
+ <li><a class="dropdown-item" href="{{ url_for('paradata_ui.index') }}"><i class="fas fa-tags"></i> {{ _('Paradata') }}</a></li>
87
88
  <li><a class="dropdown-item" href="{{ url_for('three_d_builder.blender_viewer') }}"><i class="fas fa-cube"></i> {{ _('Blender 3D') }}</a></li>
88
89
  <li><a class="dropdown-item" href="{{ url_for('upload_media') }}"><i class="fas fa-images"></i> {{ _('Media') }}</a></li>
89
90
  <li><a class="dropdown-item" href="{{ url_for('excel_import.index') }}"><i class="fas fa-file-excel"></i> {{ _('Excel Import') }}</a></li>
@@ -177,6 +178,7 @@
177
178
  <li><a href="{{ url_for('upload_media') }}"><i class="fas fa-upload"></i> {{ _('Upload Media') }}</a></li>
178
179
  <li><a href="{{ url_for('media_list') }}"><i class="fas fa-photo-video"></i> {{ _('Media Files') }}</a></li>
179
180
  <li><a href="{{ url_for('harris_creator.index') }}"><i class="fas fa-project-diagram"></i> {{ _('Harris Matrix Creator') }}</a></li>
181
+ <li><a href="{{ url_for('paradata_ui.index') }}"><i class="fas fa-tags"></i> {{ _('Paradata') }}</a></li>
180
182
  <li><a href="{{ url_for('export_harris_graphml') }}"><i class="fas fa-sitemap"></i> {{ _('Harris Export') }}</a></li>
181
183
  </ul>
182
184
  </div>
@@ -158,19 +158,24 @@
158
158
  <button class="btn btn-success btn-sm" id="save-btn" title="Save to database">
159
159
  <i class="fas fa-save"></i> Save
160
160
  </button>
161
- <button class="btn btn-info btn-sm" id="export-graphml-btn" title="Export to GraphML">
161
+ <button class="btn btn-info btn-sm" id="export-graphml-btn"
162
+ title="EM-canonical GraphML (s3dgraphy schema, for Datacenter / 3D pipeline)">
162
163
  <i class="fas fa-download"></i> GraphML
163
164
  </button>
164
- <button class="btn btn-secondary btn-sm" id="export-dot-btn" title="Export to DOT">
165
+ <button class="btn btn-secondary btn-sm" id="export-dot-btn" title="Export to Graphviz DOT">
165
166
  <i class="fas fa-download"></i> DOT
166
167
  </button>
167
- <button class="btn btn-warning btn-sm" id="export-png-btn" title="Export as PNG">
168
+ <button class="btn btn-warning btn-sm" id="export-png-btn" title="Export current view as PNG image">
168
169
  <i class="fas fa-image"></i> PNG
169
170
  </button>
170
171
  <!-- Spec 3-bis: Harris Swimlane controls -->
171
- <button onclick="showNewRowModal()" class="btn btn-primary btn-sm" title="Add a new swimlane row">+ New Row</button>
172
- <button onclick="saveSwimlaneState()" class="btn btn-success btn-sm" title="Save swimlane changes">&#128190; Save Swimlane</button>
173
- <button onclick="exportYedGraphml()" class="btn btn-info btn-sm" title="Export yEd GraphML">&#11015; Export yEd GraphML</button>
172
+ <button onclick="showNewRowModal()" class="btn btn-primary btn-sm" title="Add a new swimlane row (period + phase)">+ New Row</button>
173
+ <button onclick="saveSwimlaneState()" class="btn btn-success btn-sm" title="Save swimlane changes back to the database">&#128190; Save Swimlane</button>
174
+ <button onclick="exportYedGraphml()" class="btn btn-info btn-sm"
175
+ title="yEd-flavored GraphML with TableNode swimlanes (open in yEd Desktop)">&#11015; Export yEd GraphML</button>
176
+ <button type="button" class="btn btn-outline-info btn-sm" data-bs-toggle="modal" data-bs-target="#exportFormatsHelp" title="What are these export formats?">
177
+ <i class="fas fa-question-circle"></i>
178
+ </button>
174
179
  <a href="{{ url_for('harris_creator.index') }}" class="btn btn-outline-secondary btn-sm">
175
180
  <i class="fas fa-arrow-left"></i> Back
176
181
  </a>
@@ -373,6 +378,47 @@
373
378
  <input type="hidden" id="site-name" value="{{ site_name }}">
374
379
  <input type="hidden" id="existing-nodes" value="{{ existing_nodes }}">
375
380
  <input type="hidden" id="existing-relationships" value="{{ existing_relationships }}">
381
+
382
+ <!-- Export formats help modal -->
383
+ <div class="modal fade" id="exportFormatsHelp" tabindex="-1" aria-hidden="true">
384
+ <div class="modal-dialog modal-lg">
385
+ <div class="modal-content">
386
+ <div class="modal-header">
387
+ <h5 class="modal-title"><i class="fas fa-question-circle"></i> Export formats &mdash; GraphML vs yEd GraphML</h5>
388
+ <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
389
+ </div>
390
+ <div class="modal-body">
391
+ <p>The editor exposes <strong>two GraphML outputs</strong> that look similar but serve different audiences.</p>
392
+ <table class="table table-bordered table-sm">
393
+ <thead class="table-light">
394
+ <tr><th></th><th class="text-info">GraphML</th><th class="text-info">Export yEd GraphML</th></tr>
395
+ </thead>
396
+ <tbody>
397
+ <tr><th>Trigger</th><td>Auto-regenerated on every US save (Spec&nbsp;2)</td><td>On-demand when you click the button (Spec&nbsp;3-bis)</td></tr>
398
+ <tr><th>File</th><td><code>data/paradata/&lt;site&gt;/stratigraphy.graphml</code></td><td><code>data/exports/harris_yed/&lt;site&gt;-harris-yed.graphml</code></td></tr>
399
+ <tr><th>Schema</th><td>s3dgraphy clean &mdash; canonical EM nodes (StratigraphicNode) and edges (<code>overlies</code>, <code>abuts</code>, <code>is_after</code>, &hellip;)</td><td>yEd-flavored &mdash; <code>y:TableNode</code> + <code>y:Rows</code> for swimlanes, <code>y:ShapeNode</code> children with VocabProvider colors</td></tr>
400
+ <tr><th>Audience</th><td>EM Datacenter, 3D pipeline, Heriverse, programmatic consumers</td><td>Humans using <strong>yEd Desktop</strong> for review/printing</td></tr>
401
+ <tr><th>Round-trip</th><td>Yes (s3dgraphy reader)</td><td>No (one-way export for presentation)</td></tr>
402
+ </tbody>
403
+ </table>
404
+ <h6>DOT / PNG</h6>
405
+ <ul>
406
+ <li><strong>DOT</strong> &mdash; Graphviz source, useful for batch rendering or version-controlling diagrams as text.</li>
407
+ <li><strong>PNG</strong> &mdash; Rasterized snapshot of the current Cytoscape view.</li>
408
+ </ul>
409
+ <h6>Quick reference</h6>
410
+ <ul>
411
+ <li>Need to feed a 3D / EM pipeline &rarr; use <strong>GraphML</strong>.</li>
412
+ <li>Need to open in yEd Desktop and tweak by hand &rarr; use <strong>Export yEd GraphML</strong>.</li>
413
+ <li>Need a quick image for a report &rarr; use <strong>PNG</strong>.</li>
414
+ </ul>
415
+ </div>
416
+ <div class="modal-footer">
417
+ <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
418
+ </div>
419
+ </div>
420
+ </div>
421
+ </div>
376
422
  {% endblock %}
377
423
 
378
424
  {% block extra_js %}
@@ -392,17 +438,29 @@
392
438
  <script>
393
439
  // === Spec 3-bis: Harris Swimlane integration ===
394
440
 
441
+ // Initialize _currentSite server-side from hidden input so Save/+ Row/Export
442
+ // work even if loadSwimlaneState() never succeeds (e.g. DB migration pending).
443
+ window._currentSite = (document.getElementById('site-name') || {}).value || null;
444
+
395
445
  async function loadSwimlaneState(site) {
396
446
  try {
397
447
  const r = await fetch(`/harris-creator/api/load/${encodeURIComponent(site)}`);
398
448
  if (!r.ok) {
399
- console.error("Failed to load swimlane state:", await r.text());
449
+ const body = await r.text();
450
+ console.error("Failed to load swimlane state:", body);
451
+ // Surface backend errors so the user understands why swimlanes
452
+ // are missing (typical cause: node_uuid column / migration not run).
453
+ const msg = body.length > 400 ? body.slice(0, 400) + '...' : body;
454
+ alert(`Swimlane load failed (HTTP ${r.status}):\n\n${msg}\n\n` +
455
+ `If you see "node_uuid does not exist", run the migration on the server:\n` +
456
+ ` pyarchinit-mini-migrate-vocab --apply --yes --database <DSN>`);
400
457
  return;
401
458
  }
402
459
  const state = await r.json();
403
460
  renderSwimlaneState(state);
404
461
  } catch (e) {
405
462
  console.error("loadSwimlaneState error:", e);
463
+ alert(`Swimlane load error: ${e.message}`);
406
464
  }
407
465
  }
408
466
 
@@ -470,10 +528,10 @@ function renderSwimlaneState(state) {
470
528
  console.log(`Loaded swimlane state for ${state.site}: ${state.rows.length} rows, ${usNodes.length} US, ${state.edges.length} edges`);
471
529
  }
472
530
 
473
- // Auto-load on page ready if ?site=... in URL
531
+ // Auto-load on page ready: use ?site=... if present, else server-rendered site_name.
474
532
  window.addEventListener('DOMContentLoaded', () => {
475
533
  const params = new URLSearchParams(window.location.search);
476
- const site = params.get('site');
534
+ const site = params.get('site') || window._currentSite;
477
535
  if (site) {
478
536
  // Wait briefly for Cytoscape to init then load
479
537
  const tryLoad = (retries) => {
@@ -545,7 +603,7 @@ function hideUnsavedIndicator() {
545
603
  async function saveSwimlaneState() {
546
604
  const site = window._currentSite;
547
605
  if (!site) {
548
- alert('No site loaded. Open editor with ?site=<name>');
606
+ alert('No site selected. Return to the Harris Matrix Creator index and choose or create a site.');
549
607
  return;
550
608
  }
551
609
  try {
@@ -576,7 +634,7 @@ async function saveSwimlaneState() {
576
634
  function showNewRowModal() {
577
635
  const site = window._currentSite;
578
636
  if (!site) {
579
- alert('No site loaded.');
637
+ alert('No site selected. Return to the Harris Matrix Creator index and choose or create a site.');
580
638
  return;
581
639
  }
582
640
  const period = prompt('Period name:');
@@ -610,7 +668,7 @@ function showNewRowModal() {
610
668
  function exportYedGraphml() {
611
669
  const site = window._currentSite;
612
670
  if (!site) {
613
- alert('No site loaded.');
671
+ alert('No site selected. Return to the Harris Matrix Creator index and choose or create a site.');
614
672
  return;
615
673
  }
616
674
  window.location.href = `/harris-creator/api/export/${encodeURIComponent(site)}/yed-graphml`;
@@ -0,0 +1,53 @@
1
+ {% extends "base.html" %}
2
+ {% block title %}{{ _('Paradata') }} - PyArchInit-Mini{% endblock %}
3
+ {% block content %}
4
+ <div class="container py-4">
5
+ <h1><i class="fas fa-tags"></i> {{ _('Paradata') }}</h1>
6
+ <p class="text-muted">
7
+ {{ _('Per-site paradata sidecar: authors, licenses, embargoes, documents, epochs. Stored as JSON next to the auto-regenerated stratigraphy graph.') }}
8
+ </p>
9
+
10
+ {% if not sites %}
11
+ <div class="alert alert-info">{{ _('No sites available. Create a site first.') }}</div>
12
+ {% else %}
13
+ <div class="card mb-4">
14
+ <div class="card-body">
15
+ <label for="site-picker" class="form-label">{{ _('Choose a site') }}</label>
16
+ <select id="site-picker" class="form-select">
17
+ <option value="">— {{ _('select') }} —</option>
18
+ {% for s in sites %}<option value="{{ s }}">{{ s }}</option>{% endfor %}
19
+ </select>
20
+ </div>
21
+ </div>
22
+
23
+ <div id="kind-buttons" class="d-none">
24
+ <h5>{{ _('Manage') }}:</h5>
25
+ <div class="d-flex flex-wrap gap-2">
26
+ {% for k in kinds %}
27
+ <a id="kind-link-{{ k }}" href="#" class="btn btn-outline-primary">
28
+ <i class="fas fa-folder"></i> {{ k|capitalize }}
29
+ </a>
30
+ {% endfor %}
31
+ </div>
32
+ </div>
33
+ {% endif %}
34
+ </div>
35
+
36
+ <script>
37
+ (function() {
38
+ const picker = document.getElementById('site-picker');
39
+ if (!picker) return;
40
+ const wrap = document.getElementById('kind-buttons');
41
+ const base = "{{ url_for('paradata_ui.list', site='__SITE__', kind='__KIND__') }}";
42
+ picker.addEventListener('change', () => {
43
+ const site = picker.value;
44
+ if (!site) { wrap.classList.add('d-none'); return; }
45
+ wrap.classList.remove('d-none');
46
+ {% for k in kinds %}
47
+ document.getElementById('kind-link-{{ k }}').href =
48
+ base.replace('__SITE__', encodeURIComponent(site)).replace('__KIND__', '{{ k }}');
49
+ {% endfor %}
50
+ });
51
+ })();
52
+ </script>
53
+ {% endblock %}
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pyarchinit-mini
3
- Version: 2.4.0
3
+ Version: 2.4.1
4
4
  Summary: Lightweight archaeological data management system with REST API, Web UI, Desktop GUI, CLI, multi-user authentication, real-time collaboration, analytics dashboard, PyArchInit import/export, Heriverse/ATON export integration, and 3D CRUD viewer
5
5
  Home-page: https://github.com/enzococca/pyarchinit-mini
6
6
  Author: PyArchInit Team
@@ -355,6 +355,7 @@ pyarchinit_mini/web_interface/templates/media/upload.html
355
355
  pyarchinit_mini/web_interface/templates/messaging/contacts.html
356
356
  pyarchinit_mini/web_interface/templates/operators/directory.html
357
357
  pyarchinit_mini/web_interface/templates/paradata/edit.html
358
+ pyarchinit_mini/web_interface/templates/paradata/index.html
358
359
  pyarchinit_mini/web_interface/templates/paradata/list.html
359
360
  pyarchinit_mini/web_interface/templates/pdf/pottery_sheet.html
360
361
  pyarchinit_mini/web_interface/templates/periodizzazione/form.html
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "pyarchinit-mini"
7
- version = "2.4.0"
7
+ version = "2.4.1"
8
8
  description = "Lightweight archaeological data management system with REST API, Web UI, Desktop GUI, CLI, multi-user authentication, real-time collaboration, analytics dashboard, PyArchInit import/export, Heriverse/ATON export integration, and 3D CRUD viewer"
9
9
  readme = "README.md"
10
10
  license = {text = "GPL-2.0"}