buvis-gems 0.12.6__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.
- buvis_gems-0.12.6/.github/dependabot.yml +14 -0
- buvis_gems-0.12.6/.github/workflows/deploy-docs.yml +43 -0
- buvis_gems-0.12.6/.github/workflows/publish.yml +136 -0
- buvis_gems-0.12.6/.github/workflows/test.yml +178 -0
- buvis_gems-0.12.6/.github/workflows/update-snapshots.yml +68 -0
- buvis_gems-0.12.6/.gitignore +74 -0
- buvis_gems-0.12.6/.mise.toml +2 -0
- buvis_gems-0.12.6/.pre-commit-config.yaml +31 -0
- buvis_gems-0.12.6/AGENTS.md +208 -0
- buvis_gems-0.12.6/CHANGELOG.md +438 -0
- buvis_gems-0.12.6/CLAUDE.md +7 -0
- buvis_gems-0.12.6/LICENSE +21 -0
- buvis_gems-0.12.6/PKG-INFO +198 -0
- buvis_gems-0.12.6/README.md +125 -0
- buvis_gems-0.12.6/SECURITY.md +9 -0
- buvis_gems-0.12.6/dev/bin/check_tool_wiring.py +102 -0
- buvis_gems-0.12.6/dev/bin/gen_zettel_writer_fixtures.py +129 -0
- buvis_gems-0.12.6/dev/bin/pin_deps.py +166 -0
- buvis_gems-0.12.6/dev/bin/release +141 -0
- buvis_gems-0.12.6/dev/bin/scaffold.py +340 -0
- buvis_gems-0.12.6/docs/Makefile +20 -0
- buvis_gems-0.12.6/docs/reference/klyreon/ancient-philosophy-applied-to-zettelkasten.md +151 -0
- buvis_gems-0.12.6/docs/reference/klyreon/anti-example-prior-build-output.md +101 -0
- buvis_gems-0.12.6/docs/reference/klyreon/lessons-from-prior-iterations.md +50 -0
- buvis_gems-0.12.6/docs/reference/klyreon/original-karpathy-idea-proposal.md +74 -0
- buvis_gems-0.12.6/docs/reference/klyreon/zettel-format-specification.md +862 -0
- buvis_gems-0.12.6/docs/source/_static/.gitkeep +0 -0
- buvis_gems-0.12.6/docs/source/adapters.rst +269 -0
- buvis_gems-0.12.6/docs/source/bim-query-examples.md +868 -0
- buvis_gems-0.12.6/docs/source/completions.rst +100 -0
- buvis_gems-0.12.6/docs/source/conf.py +19 -0
- buvis_gems-0.12.6/docs/source/configuration.rst +775 -0
- buvis_gems-0.12.6/docs/source/development.rst +86 -0
- buvis_gems-0.12.6/docs/source/filesystem.rst +68 -0
- buvis_gems-0.12.6/docs/source/formatting.rst +65 -0
- buvis_gems-0.12.6/docs/source/index.rst +54 -0
- buvis_gems-0.12.6/docs/source/tools/bim.rst +636 -0
- buvis_gems-0.12.6/docs/source/tools/dot.rst +186 -0
- buvis_gems-0.12.6/docs/source/tools/fctracker.rst +72 -0
- buvis_gems-0.12.6/docs/source/tools/fren.rst +48 -0
- buvis_gems-0.12.6/docs/source/tools/hello-world.rst +44 -0
- buvis_gems-0.12.6/docs/source/tools/morph.rst +30 -0
- buvis_gems-0.12.6/docs/source/tools/muc.rst +63 -0
- buvis_gems-0.12.6/docs/source/tools/netscan.rst +55 -0
- buvis_gems-0.12.6/docs/source/tools/outlookctl.rst +32 -0
- buvis_gems-0.12.6/docs/source/tools/pidash.rst +110 -0
- buvis_gems-0.12.6/docs/source/tools/pinger.rst +42 -0
- buvis_gems-0.12.6/docs/source/tools/puc.rst +33 -0
- buvis_gems-0.12.6/docs/source/tools/readerctl.rst +49 -0
- buvis_gems-0.12.6/docs/source/tools/sysup.rst +77 -0
- buvis_gems-0.12.6/docs/source/tools/vuc.rst +18 -0
- buvis_gems-0.12.6/docs/source/tools/zseq.rst +38 -0
- buvis_gems-0.12.6/docs/source/tools.rst +133 -0
- buvis_gems-0.12.6/docs/source/zettel.rst +373 -0
- buvis_gems-0.12.6/hatch_build.py +96 -0
- buvis_gems-0.12.6/pyproject.toml +159 -0
- buvis_gems-0.12.6/renovate.json +4 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/__init__.py +12 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/adapters/__init__.py +40 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/adapters/console/__init__.py +5 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/adapters/console/capturing_rich_handler.py +26 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/adapters/console/console.py +394 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/adapters/jira/__init__.py +24 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/adapters/jira/domain/__init__.py +11 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/adapters/jira/domain/jira_comment_dto.py +27 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/adapters/jira/domain/jira_issue_dto.py +43 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/adapters/jira/domain/jira_search_result.py +24 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/adapters/jira/exceptions.py +51 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/adapters/jira/jira.py +397 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/adapters/jira/settings.py +37 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/adapters/outlook_local/__init__.py +6 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/adapters/outlook_local/exceptions.py +11 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/adapters/outlook_local/outlook_local.py +196 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/adapters/shell/__init__.py +5 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/adapters/shell/shell.py +162 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/adapters/uv/__init__.py +6 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/adapters/uv/uv.py +71 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/adapters/uv/uv_tool.py +143 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/configuration/__init__.py +66 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/configuration/click_integration.py +468 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/configuration/config_writer.py +373 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/configuration/examples/__init__.py +11 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/configuration/examples/music_settings.py +29 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/configuration/examples/photo_settings.py +28 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/configuration/exceptions.py +35 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/configuration/loader.py +273 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/configuration/resolver.py +270 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/configuration/settings.py +99 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/configuration/validators.py +114 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/filesystem/__init__.py +5 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/filesystem/file_metadata/file_metadata_reader.py +86 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/formatting/__init__.py +15 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/formatting/string_operator/__init__.py +6 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/formatting/string_operator/abbr.py +139 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/formatting/string_operator/string_case_tools.py +96 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/formatting/string_operator/string_operator.py +257 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/formatting/string_operator/suggest_tags.py +68 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/formatting/string_operator/word_level_tools.py +61 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/manifest.py +66 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/py.typed +0 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/result.py +50 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/updater/__init__.py +106 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/updater/checker.py +101 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/updater/detector.py +151 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/updater/executor.py +183 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/updater/state.py +83 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/__init__.py +20 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/_core.pyi +16 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/application/__init__.py +1 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/application/use_cases/__init__.py +17 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/application/use_cases/create_zettel_use_case.py +34 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/application/use_cases/delete_zettel_use_case.py +15 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/application/use_cases/print_zettel_use_case.py +41 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/application/use_cases/query_zettels_use_case.py +305 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/application/use_cases/read_zettel_use_case.py +54 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/application/use_cases/update_zettel_use_case.py +40 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/__init__.py +1 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/__init__.py +9 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/project/__init__.py +5 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/project/fixers/__init__.py +7 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/project/fixers/fix_lists_bullets.py +37 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/project/fixers/normalize_sections_order.py +47 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/project/fixers/set_default_completed.py +22 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/project/project.py +105 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/project/project_consistency_service.py +21 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/project/project_migration_service.py +20 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/project/services/__init__.py +1 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/project/services/log_parser.py +170 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/project/upgrades/__init__.py +27 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/project/upgrades/migrate_loop_log.py +264 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/project/upgrades/migrate_parent_reference.py +35 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/zettel/__init__.py +5 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/zettel/fixers/__init__.py +27 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/zettel/fixers/align_h1_to_title.py +33 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/zettel/fixers/fix_title_format.py +37 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/zettel/fixers/remove_duplicate_tags.py +23 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/zettel/fixers/set_default_date.py +24 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/zettel/fixers/set_default_id.py +30 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/zettel/fixers/set_default_processed.py +19 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/zettel/fixers/set_default_publish.py +17 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/zettel/fixers/set_default_tags.py +22 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/zettel/fixers/set_default_title.py +30 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/zettel/fixers/set_default_type.py +22 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/zettel/fixers/sort_tags.py +19 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/zettel/upgrades/__init__.py +11 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/zettel/upgrades/move_tag_to_tags.py +32 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/zettel/upgrades/move_zkn_id_to_id.py +23 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/zettel/upgrades/normalize_type.py +33 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/zettel/zettel.py +224 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/zettel/zettel_consistency_service.py +47 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/entities/zettel/zettel_migration_service.py +21 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/interfaces/__init__.py +15 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/interfaces/expression_evaluator.py +7 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/interfaces/zettel_formatter.py +31 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/interfaces/zettel_repository.py +87 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/interfaces/zettel_repository_exceptions.py +32 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/services/__init__.py +6 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/services/base.py +25 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/services/zettel_factory.py +55 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/templates/__init__.py +70 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/templates/article.yaml +4 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/templates/cheatsheet.yaml +4 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/templates/contact.yaml +13 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/templates/course.yaml +13 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/templates/definition.yaml +4 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/templates/how_to.yaml +4 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/templates/list.yaml +4 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/templates/meeting_minutes.yaml +27 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/templates/note.py +26 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/templates/procedure.yaml +4 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/templates/project.py +42 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/templates/quote.yaml +5 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/templates/recipe.yaml +4 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/templates/snippet.yaml +8 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/templates/wiki_article.yaml +4 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/templates/yaml_template.py +78 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/value_objects/__init__.py +39 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/value_objects/log_entry.py +22 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/value_objects/property_schema.py +31 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/value_objects/query_spec.py +124 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/domain/value_objects/zettel_data.py +31 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/infrastructure/__init__.py +1 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/infrastructure/formatting/__init__.py +1 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/infrastructure/formatting/markdown_zettel_formatter/__init__.py +23 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/infrastructure/formatting/markdown_zettel_formatter/helpers.py +162 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/infrastructure/formatting/markdown_zettel_formatter/markdown_zettel_formatter.py +54 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/infrastructure/persistence/__init__.py +13 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/infrastructure/persistence/file_parsers/__init__.py +5 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/infrastructure/persistence/file_parsers/parsers/__init__.py +1 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/infrastructure/persistence/file_parsers/parsers/markdown/__init__.py +21 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/infrastructure/persistence/file_parsers/parsers/markdown/back_matter_preprocessor.py +46 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/infrastructure/persistence/file_parsers/parsers/markdown/front_matter_preprocessor.py +34 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/infrastructure/persistence/file_parsers/parsers/markdown/helpers.py +128 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/infrastructure/persistence/file_parsers/parsers/markdown/markdown.py +31 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/infrastructure/persistence/file_parsers/zettel_file_parser.py +90 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/infrastructure/persistence/markdown_zettel_repository/__init__.py +5 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/infrastructure/persistence/markdown_zettel_repository/markdown_zettel_repository.py +111 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/infrastructure/persistence/template_loader.py +90 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/infrastructure/query/__init__.py +1 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/infrastructure/query/expression_engine.py +300 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/infrastructure/query/output_formatter.py +127 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/infrastructure/query/query_spec_parser.py +325 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/integrations/__init__.py +1 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/integrations/jira/__init__.py +12 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/integrations/jira/assemblers/__init__.py +5 -0
- buvis_gems-0.12.6/src/lib/buvis/pybase/zettel/integrations/jira/assemblers/project_zettel_jira_issue.py +98 -0
- buvis_gems-0.12.6/src/rust/Cargo.lock +659 -0
- buvis_gems-0.12.6/src/rust/Cargo.toml +20 -0
- buvis_gems-0.12.6/src/rust/pyproject.toml +11 -0
- buvis_gems-0.12.6/src/rust/src/consistency/defaults.rs +126 -0
- buvis_gems-0.12.6/src/rust/src/consistency/fixers.rs +241 -0
- buvis_gems-0.12.6/src/rust/src/consistency/mod.rs +22 -0
- buvis_gems-0.12.6/src/rust/src/lib.rs +19 -0
- buvis_gems-0.12.6/src/rust/src/migration/mod.rs +22 -0
- buvis_gems-0.12.6/src/rust/src/migration/move_tag_to_tags.rs +65 -0
- buvis_gems-0.12.6/src/rust/src/migration/move_zkn_id.rs +39 -0
- buvis_gems-0.12.6/src/rust/src/migration/normalize_type.rs +48 -0
- buvis_gems-0.12.6/src/rust/src/migration/project.rs +286 -0
- buvis_gems-0.12.6/src/rust/src/parser/back_matter.rs +179 -0
- buvis_gems-0.12.6/src/rust/src/parser/enrichment.rs +91 -0
- buvis_gems-0.12.6/src/rust/src/parser/front_matter.rs +102 -0
- buvis_gems-0.12.6/src/rust/src/parser/key_normalizer.rs +65 -0
- buvis_gems-0.12.6/src/rust/src/parser/mod.rs +69 -0
- buvis_gems-0.12.6/src/rust/src/parser/sections.rs +57 -0
- buvis_gems-0.12.6/src/rust/src/pybridge.rs +265 -0
- buvis_gems-0.12.6/src/rust/src/scanner.rs +461 -0
- buvis_gems-0.12.6/src/rust/src/types.rs +137 -0
- buvis_gems-0.12.6/src/tools/bim/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/bim/__main__.py +6 -0
- buvis_gems-0.12.6/src/tools/bim/cli.py +772 -0
- buvis_gems-0.12.6/src/tools/bim/commands/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/bim/commands/archive_note/__init__.py +5 -0
- buvis_gems-0.12.6/src/tools/bim/commands/archive_note/archive_note.py +61 -0
- buvis_gems-0.12.6/src/tools/bim/commands/create_note/__init__.py +5 -0
- buvis_gems-0.12.6/src/tools/bim/commands/create_note/create_note.py +63 -0
- buvis_gems-0.12.6/src/tools/bim/commands/delete_note/__init__.py +5 -0
- buvis_gems-0.12.6/src/tools/bim/commands/delete_note/delete_note.py +39 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/__init__.py +0 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/audit/__init__.py +63 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/audit/audit.py +89 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/audit/auditor.py +202 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/audit/models.py +188 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/audit/pdf_checks.py +213 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/audit/reporter.py +170 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/audit/rules_checks.py +344 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/audit/walker.py +110 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/ingest/__init__.py +5 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/ingest/ingest.py +45 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/promote/__init__.py +5 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/promote/promote.py +340 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/rules/__init__.py +3 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/rules/backtest.py +119 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/rules/list.py +49 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/rules/test.py +102 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/rules/validate.py +98 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/shared/__init__.py +0 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/shared/atomic_write.py +55 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/shared/classifier.py +476 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/shared/extractor.py +478 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/shared/hashing.py +24 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/shared/health.py +68 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/shared/issuers.py +252 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/shared/naming.py +82 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/shared/ocr.py +224 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/shared/pipeline.py +776 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/shared/pipeline_helpers.py +350 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/shared/progress.py +100 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/shared/rules/__init__.py +11 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/shared/rules/engine.py +113 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/shared/rules/extractor.py +109 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/shared/rules/matcher.py +142 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/shared/rules/models.py +239 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/shared/rules/transforms.py +66 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/shared/settings_models.py +161 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/shared/state_db.py +273 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/shared/triage.py +182 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/shared/validators.py +26 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/shared/zettel_helpers.py +61 -0
- buvis_gems-0.12.6/src/tools/bim/commands/doc/shared/zettel_writer.py +292 -0
- buvis_gems-0.12.6/src/tools/bim/commands/edit_note/__init__.py +5 -0
- buvis_gems-0.12.6/src/tools/bim/commands/edit_note/edit_note.py +48 -0
- buvis_gems-0.12.6/src/tools/bim/commands/format_note/__init__.py +5 -0
- buvis_gems-0.12.6/src/tools/bim/commands/format_note/format_note.py +76 -0
- buvis_gems-0.12.6/src/tools/bim/commands/import_note/__init__.py +5 -0
- buvis_gems-0.12.6/src/tools/bim/commands/import_note/import_note.py +77 -0
- buvis_gems-0.12.6/src/tools/bim/commands/query/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/bim/commands/query/active_projects.yaml +62 -0
- buvis_gems-0.12.6/src/tools/bim/commands/query/all_open_tasks.yaml +36 -0
- buvis_gems-0.12.6/src/tools/bim/commands/query/contacts.yaml +60 -0
- buvis_gems-0.12.6/src/tools/bim/commands/query/courses_backlog.yaml +31 -0
- buvis_gems-0.12.6/src/tools/bim/commands/query/courses_completed.yaml +31 -0
- buvis_gems-0.12.6/src/tools/bim/commands/query/courses_in_progress.yaml +33 -0
- buvis_gems-0.12.6/src/tools/bim/commands/query/daily_tasks_act.yaml +50 -0
- buvis_gems-0.12.6/src/tools/bim/commands/query/daily_tasks_wait.yaml +45 -0
- buvis_gems-0.12.6/src/tools/bim/commands/query/gtd_actions_review.yaml +47 -0
- buvis_gems-0.12.6/src/tools/bim/commands/query/inbox.yaml +43 -0
- buvis_gems-0.12.6/src/tools/bim/commands/query/meetings.yaml +56 -0
- buvis_gems-0.12.6/src/tools/bim/commands/query/missing_contacts_meetings.yaml +26 -0
- buvis_gems-0.12.6/src/tools/bim/commands/query/missing_contacts_projects.yaml +37 -0
- buvis_gems-0.12.6/src/tools/bim/commands/query/overdue_now_projects.yaml +54 -0
- buvis_gems-0.12.6/src/tools/bim/commands/query/projects_no_gtd_actions.yaml +21 -0
- buvis_gems-0.12.6/src/tools/bim/commands/query/query.py +47 -0
- buvis_gems-0.12.6/src/tools/bim/commands/query/random_unprocessed.yaml +20 -0
- buvis_gems-0.12.6/src/tools/bim/commands/query/recent.yaml +28 -0
- buvis_gems-0.12.6/src/tools/bim/commands/query/task_warnings.yaml +29 -0
- buvis_gems-0.12.6/src/tools/bim/commands/query/unprocessed.yaml +45 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/_actions.py +184 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/_app.py +41 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/_routes.py +204 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/_sse.py +63 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/frontend/package-lock.json +3359 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/frontend/package.json +24 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/frontend/src/app.css +56 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/frontend/src/app.html +15 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/frontend/src/lib/api.ts +146 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/frontend/src/lib/components/ActionBar.svelte +104 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/frontend/src/lib/components/ConfirmDialog.svelte +85 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/frontend/src/lib/components/DataTable.svelte +303 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/frontend/src/lib/components/ItemPanel.svelte +251 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/frontend/src/lib/components/KanbanBoard.svelte +245 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/frontend/src/lib/components/MarkdownEditor.svelte +184 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/frontend/src/lib/components/PropertyField.svelte +85 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/frontend/src/lib/components/QueryPicker.svelte +111 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/frontend/src/lib/components/widgets/CheckboxWidget.svelte +57 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/frontend/src/lib/components/widgets/DateWidget.svelte +45 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/frontend/src/lib/components/widgets/LinkWidget.svelte +38 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/frontend/src/lib/components/widgets/SelectWidget.svelte +39 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/frontend/src/lib/components/widgets/TagsWidget.svelte +94 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/frontend/src/lib/components/widgets/TextWidget.svelte +14 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/frontend/src/lib/sse.ts +37 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/frontend/src/lib/stores.ts +9 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/frontend/src/routes/+layout.svelte +21 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/frontend/src/routes/+layout.ts +2 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/frontend/src/routes/+page.svelte +202 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/frontend/svelte.config.js +16 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/frontend/tsconfig.json +14 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/frontend/vite.config.ts +11 -0
- buvis_gems-0.12.6/src/tools/bim/commands/serve/serve.py +30 -0
- buvis_gems-0.12.6/src/tools/bim/commands/shared/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/bim/commands/shared/os_open.py +19 -0
- buvis_gems-0.12.6/src/tools/bim/commands/shared/sections.py +18 -0
- buvis_gems-0.12.6/src/tools/bim/commands/show_note/__init__.py +5 -0
- buvis_gems-0.12.6/src/tools/bim/commands/show_note/show_note.py +47 -0
- buvis_gems-0.12.6/src/tools/bim/commands/sync_note/__init__.py +0 -0
- buvis_gems-0.12.6/src/tools/bim/commands/sync_note/sync_note.py +108 -0
- buvis_gems-0.12.6/src/tools/bim/dependencies.py +274 -0
- buvis_gems-0.12.6/src/tools/bim/doc_rules_cli.py +153 -0
- buvis_gems-0.12.6/src/tools/bim/integrations/__init__.py +3 -0
- buvis_gems-0.12.6/src/tools/bim/integrations/jira_adapter.py +41 -0
- buvis_gems-0.12.6/src/tools/bim/manifest.toml +29 -0
- buvis_gems-0.12.6/src/tools/bim/params/__init__.py +31 -0
- buvis_gems-0.12.6/src/tools/bim/params/archive_note.py +11 -0
- buvis_gems-0.12.6/src/tools/bim/params/create_note.py +16 -0
- buvis_gems-0.12.6/src/tools/bim/params/delete_note.py +11 -0
- buvis_gems-0.12.6/src/tools/bim/params/doc_ingest.py +36 -0
- buvis_gems-0.12.6/src/tools/bim/params/doc_promote.py +17 -0
- buvis_gems-0.12.6/src/tools/bim/params/edit_note.py +31 -0
- buvis_gems-0.12.6/src/tools/bim/params/format_note.py +27 -0
- buvis_gems-0.12.6/src/tools/bim/params/import_note.py +13 -0
- buvis_gems-0.12.6/src/tools/bim/params/path_params.py +11 -0
- buvis_gems-0.12.6/src/tools/bim/params/query.py +28 -0
- buvis_gems-0.12.6/src/tools/bim/params/serve.py +13 -0
- buvis_gems-0.12.6/src/tools/bim/params/show_note.py +7 -0
- buvis_gems-0.12.6/src/tools/bim/params/sync_note.py +11 -0
- buvis_gems-0.12.6/src/tools/bim/settings.py +20 -0
- buvis_gems-0.12.6/src/tools/bim/shared/__init__.py +3 -0
- buvis_gems-0.12.6/src/tools/bim/shared/edit_helpers.py +22 -0
- buvis_gems-0.12.6/src/tools/bim/shared/import_helpers.py +120 -0
- buvis_gems-0.12.6/src/tools/bim/shared/query_paths.py +76 -0
- buvis_gems-0.12.6/src/tools/bim/shared/query_presentation.py +291 -0
- buvis_gems-0.12.6/src/tools/bim/tui/__init__.py +3 -0
- buvis_gems-0.12.6/src/tools/bim/tui/create_note.py +185 -0
- buvis_gems-0.12.6/src/tools/bim/tui/edit_note.py +203 -0
- buvis_gems-0.12.6/src/tools/bim/tui/query.py +549 -0
- buvis_gems-0.12.6/src/tools/bim/tui/show_note.py +45 -0
- buvis_gems-0.12.6/src/tools/dot/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/dot/__main__.py +6 -0
- buvis_gems-0.12.6/src/tools/dot/cli.py +148 -0
- buvis_gems-0.12.6/src/tools/dot/commands/__init__.py +25 -0
- buvis_gems-0.12.6/src/tools/dot/commands/add/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/dot/commands/add/add.py +66 -0
- buvis_gems-0.12.6/src/tools/dot/commands/commit/__init__.py +3 -0
- buvis_gems-0.12.6/src/tools/dot/commands/commit/commit.py +45 -0
- buvis_gems-0.12.6/src/tools/dot/commands/delete/__init__.py +0 -0
- buvis_gems-0.12.6/src/tools/dot/commands/delete/delete.py +76 -0
- buvis_gems-0.12.6/src/tools/dot/commands/encrypt/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/dot/commands/encrypt/encrypt.py +46 -0
- buvis_gems-0.12.6/src/tools/dot/commands/pull/__init__.py +3 -0
- buvis_gems-0.12.6/src/tools/dot/commands/pull/pull.py +55 -0
- buvis_gems-0.12.6/src/tools/dot/commands/push/__init__.py +3 -0
- buvis_gems-0.12.6/src/tools/dot/commands/push/push.py +54 -0
- buvis_gems-0.12.6/src/tools/dot/commands/rm/__init__.py +5 -0
- buvis_gems-0.12.6/src/tools/dot/commands/rm/rm.py +76 -0
- buvis_gems-0.12.6/src/tools/dot/commands/run/__init__.py +3 -0
- buvis_gems-0.12.6/src/tools/dot/commands/run/run.py +34 -0
- buvis_gems-0.12.6/src/tools/dot/commands/status/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/dot/commands/status/status.py +118 -0
- buvis_gems-0.12.6/src/tools/dot/commands/unstage/__init__.py +0 -0
- buvis_gems-0.12.6/src/tools/dot/commands/unstage/unstage.py +41 -0
- buvis_gems-0.12.6/src/tools/dot/manifest.toml +23 -0
- buvis_gems-0.12.6/src/tools/dot/settings.py +18 -0
- buvis_gems-0.12.6/src/tools/dot/tui/__init__.py +3 -0
- buvis_gems-0.12.6/src/tools/dot/tui/app.py +103 -0
- buvis_gems-0.12.6/src/tools/dot/tui/commands/__init__.py +0 -0
- buvis_gems-0.12.6/src/tools/dot/tui/commands/browse.py +116 -0
- buvis_gems-0.12.6/src/tools/dot/tui/commands/secrets.py +95 -0
- buvis_gems-0.12.6/src/tools/dot/tui/git_ops.py +234 -0
- buvis_gems-0.12.6/src/tools/dot/tui/models.py +24 -0
- buvis_gems-0.12.6/src/tools/dot/tui/patch.py +234 -0
- buvis_gems-0.12.6/src/tools/dot/tui/screens/__init__.py +7 -0
- buvis_gems-0.12.6/src/tools/dot/tui/screens/browse.py +124 -0
- buvis_gems-0.12.6/src/tools/dot/tui/screens/main.py +386 -0
- buvis_gems-0.12.6/src/tools/dot/tui/screens/secrets.py +201 -0
- buvis_gems-0.12.6/src/tools/dot/tui/widgets/__init__.py +21 -0
- buvis_gems-0.12.6/src/tools/dot/tui/widgets/commit_modal.py +43 -0
- buvis_gems-0.12.6/src/tools/dot/tui/widgets/diff_view.py +379 -0
- buvis_gems-0.12.6/src/tools/dot/tui/widgets/dir_list.py +96 -0
- buvis_gems-0.12.6/src/tools/dot/tui/widgets/file_list.py +126 -0
- buvis_gems-0.12.6/src/tools/dot/tui/widgets/gitignore_modal.py +47 -0
- buvis_gems-0.12.6/src/tools/dot/tui/widgets/passphrase_modal.py +48 -0
- buvis_gems-0.12.6/src/tools/dot/tui/widgets/revert_confirm_modal.py +54 -0
- buvis_gems-0.12.6/src/tools/dot/tui/widgets/status_bar.py +46 -0
- buvis_gems-0.12.6/src/tools/fctracker/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/fctracker/__main__.py +6 -0
- buvis_gems-0.12.6/src/tools/fctracker/adapters/__init__.py +7 -0
- buvis_gems-0.12.6/src/tools/fctracker/adapters/config/config.py +46 -0
- buvis_gems-0.12.6/src/tools/fctracker/adapters/transactions/transactions_dir_scanner.py +18 -0
- buvis_gems-0.12.6/src/tools/fctracker/adapters/transactions/transactions_reader.py +41 -0
- buvis_gems-0.12.6/src/tools/fctracker/cli.py +97 -0
- buvis_gems-0.12.6/src/tools/fctracker/commands/__init__.py +6 -0
- buvis_gems-0.12.6/src/tools/fctracker/commands/balance/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/fctracker/commands/balance/balance.py +48 -0
- buvis_gems-0.12.6/src/tools/fctracker/commands/transactions/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/fctracker/commands/transactions/transactions.py +95 -0
- buvis_gems-0.12.6/src/tools/fctracker/domain/__init__.py +8 -0
- buvis_gems-0.12.6/src/tools/fctracker/domain/account.py +68 -0
- buvis_gems-0.12.6/src/tools/fctracker/domain/deposit.py +40 -0
- buvis_gems-0.12.6/src/tools/fctracker/domain/quantified_item.py +26 -0
- buvis_gems-0.12.6/src/tools/fctracker/domain/quantified_queue.py +60 -0
- buvis_gems-0.12.6/src/tools/fctracker/domain/transaction.py +21 -0
- buvis_gems-0.12.6/src/tools/fctracker/domain/withdrawal.py +41 -0
- buvis_gems-0.12.6/src/tools/fctracker/manifest.toml +20 -0
- buvis_gems-0.12.6/src/tools/fctracker/settings.py +30 -0
- buvis_gems-0.12.6/src/tools/fren/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/fren/__main__.py +6 -0
- buvis_gems-0.12.6/src/tools/fren/cli.py +55 -0
- buvis_gems-0.12.6/src/tools/fren/commands/__init__.py +8 -0
- buvis_gems-0.12.6/src/tools/fren/commands/directorize/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/fren/commands/directorize/directorize.py +38 -0
- buvis_gems-0.12.6/src/tools/fren/commands/flatten/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/fren/commands/flatten/flatten.py +51 -0
- buvis_gems-0.12.6/src/tools/fren/commands/normalize/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/fren/commands/normalize/normalize.py +58 -0
- buvis_gems-0.12.6/src/tools/fren/commands/slug/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/fren/commands/slug/slug.py +103 -0
- buvis_gems-0.12.6/src/tools/fren/manifest.toml +22 -0
- buvis_gems-0.12.6/src/tools/fren/settings.py +14 -0
- buvis_gems-0.12.6/src/tools/hello_world/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/hello_world/__main__.py +6 -0
- buvis_gems-0.12.6/src/tools/hello_world/cli.py +100 -0
- buvis_gems-0.12.6/src/tools/hello_world/commands/__init__.py +7 -0
- buvis_gems-0.12.6/src/tools/hello_world/commands/diagnostics/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/hello_world/commands/diagnostics/diagnostics.py +29 -0
- buvis_gems-0.12.6/src/tools/hello_world/commands/list_fonts/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/hello_world/commands/list_fonts/list_fonts.py +11 -0
- buvis_gems-0.12.6/src/tools/hello_world/commands/print_figlet/__init__.py +0 -0
- buvis_gems-0.12.6/src/tools/hello_world/commands/print_figlet/print_figlet.py +25 -0
- buvis_gems-0.12.6/src/tools/hello_world/manifest.toml +21 -0
- buvis_gems-0.12.6/src/tools/hello_world/settings.py +17 -0
- buvis_gems-0.12.6/src/tools/morph/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/morph/__main__.py +6 -0
- buvis_gems-0.12.6/src/tools/morph/cli.py +82 -0
- buvis_gems-0.12.6/src/tools/morph/commands/__init__.py +6 -0
- buvis_gems-0.12.6/src/tools/morph/commands/deblank/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/morph/commands/deblank/deblank.py +125 -0
- buvis_gems-0.12.6/src/tools/morph/commands/html2md/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/morph/commands/html2md/html2md.py +78 -0
- buvis_gems-0.12.6/src/tools/morph/commands/pdf2png/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/morph/commands/pdf2png/pdf2png.py +81 -0
- buvis_gems-0.12.6/src/tools/morph/manifest.toml +21 -0
- buvis_gems-0.12.6/src/tools/morph/settings.py +14 -0
- buvis_gems-0.12.6/src/tools/muc/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/muc/__main__.py +6 -0
- buvis_gems-0.12.6/src/tools/muc/cli.py +101 -0
- buvis_gems-0.12.6/src/tools/muc/commands/__init__.py +7 -0
- buvis_gems-0.12.6/src/tools/muc/commands/cover/__init__.py +5 -0
- buvis_gems-0.12.6/src/tools/muc/commands/cover/cover.py +72 -0
- buvis_gems-0.12.6/src/tools/muc/commands/limit/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/muc/commands/limit/limit.py +90 -0
- buvis_gems-0.12.6/src/tools/muc/commands/tidy/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/muc/commands/tidy/tidy.py +20 -0
- buvis_gems-0.12.6/src/tools/muc/manifest.toml +20 -0
- buvis_gems-0.12.6/src/tools/muc/settings.py +39 -0
- buvis_gems-0.12.6/src/tools/muc/shared/__init__.py +3 -0
- buvis_gems-0.12.6/src/tools/muc/shared/dir_tree/__init__.py +5 -0
- buvis_gems-0.12.6/src/tools/muc/shared/dir_tree/delete_by_extension.py +23 -0
- buvis_gems-0.12.6/src/tools/muc/shared/dir_tree/dir_tree.py +126 -0
- buvis_gems-0.12.6/src/tools/muc/shared/dir_tree/lowercase_file_extensions.py +24 -0
- buvis_gems-0.12.6/src/tools/muc/shared/dir_tree/merge_mac_metadata.py +57 -0
- buvis_gems-0.12.6/src/tools/muc/shared/dir_tree/remove_empty_directories.py +20 -0
- buvis_gems-0.12.6/src/tools/muc/shared/dir_tree/rename_equivalent_extensions.py +36 -0
- buvis_gems-0.12.6/src/tools/muc/shared/dir_tree/safe_rglob.py +49 -0
- buvis_gems-0.12.6/src/tools/netscan/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/netscan/__main__.py +6 -0
- buvis_gems-0.12.6/src/tools/netscan/cli.py +61 -0
- buvis_gems-0.12.6/src/tools/netscan/commands/__init__.py +6 -0
- buvis_gems-0.12.6/src/tools/netscan/commands/hosts/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/netscan/commands/hosts/hosts.py +41 -0
- buvis_gems-0.12.6/src/tools/netscan/commands/ssh/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/netscan/commands/ssh/ssh.py +62 -0
- buvis_gems-0.12.6/src/tools/netscan/manifest.toml +20 -0
- buvis_gems-0.12.6/src/tools/netscan/settings.py +17 -0
- buvis_gems-0.12.6/src/tools/netscan/shared/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/netscan/shared/network.py +45 -0
- buvis_gems-0.12.6/src/tools/outlookctl/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/outlookctl/__main__.py +6 -0
- buvis_gems-0.12.6/src/tools/outlookctl/cli.py +45 -0
- buvis_gems-0.12.6/src/tools/outlookctl/commands/__init__.py +5 -0
- buvis_gems-0.12.6/src/tools/outlookctl/commands/create_timeblock/__init__.py +0 -0
- buvis_gems-0.12.6/src/tools/outlookctl/commands/create_timeblock/create_timeblock.py +14 -0
- buvis_gems-0.12.6/src/tools/outlookctl/manifest.toml +19 -0
- buvis_gems-0.12.6/src/tools/outlookctl/settings.py +16 -0
- buvis_gems-0.12.6/src/tools/pidash/README.md +22 -0
- buvis_gems-0.12.6/src/tools/pidash/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/pidash/__main__.py +6 -0
- buvis_gems-0.12.6/src/tools/pidash/cli.py +185 -0
- buvis_gems-0.12.6/src/tools/pidash/commands/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/pidash/commands/hooks/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/pidash/commands/hooks/install.py +151 -0
- buvis_gems-0.12.6/src/tools/pidash/commands/hooks/settings.py +95 -0
- buvis_gems-0.12.6/src/tools/pidash/commands/hooks/status.py +101 -0
- buvis_gems-0.12.6/src/tools/pidash/commands/hooks/uninstall.py +92 -0
- buvis_gems-0.12.6/src/tools/pidash/hooks/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/pidash/hooks/cleanup_session.py +52 -0
- buvis_gems-0.12.6/src/tools/pidash/hooks/clear_attention.py +34 -0
- buvis_gems-0.12.6/src/tools/pidash/hooks/session.py +87 -0
- buvis_gems-0.12.6/src/tools/pidash/hooks/set_attention.py +32 -0
- buvis_gems-0.12.6/src/tools/pidash/hooks/sync_agent_return.py +143 -0
- buvis_gems-0.12.6/src/tools/pidash/hooks/update_tasks.py +195 -0
- buvis_gems-0.12.6/src/tools/pidash/manifest.toml +20 -0
- buvis_gems-0.12.6/src/tools/pidash/tui/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/pidash/tui/app.py +430 -0
- buvis_gems-0.12.6/src/tools/pidash/tui/state.py +176 -0
- buvis_gems-0.12.6/src/tools/pidash/tui/watcher.py +127 -0
- buvis_gems-0.12.6/src/tools/pidash/tui/widgets.py +235 -0
- buvis_gems-0.12.6/src/tools/pinger/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/pinger/__main__.py +6 -0
- buvis_gems-0.12.6/src/tools/pinger/cli.py +49 -0
- buvis_gems-0.12.6/src/tools/pinger/commands/__init__.py +5 -0
- buvis_gems-0.12.6/src/tools/pinger/commands/wait/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/pinger/commands/wait/wait.py +25 -0
- buvis_gems-0.12.6/src/tools/pinger/manifest.toml +19 -0
- buvis_gems-0.12.6/src/tools/pinger/settings.py +17 -0
- buvis_gems-0.12.6/src/tools/puc/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/puc/__main__.py +6 -0
- buvis_gems-0.12.6/src/tools/puc/cli.py +45 -0
- buvis_gems-0.12.6/src/tools/puc/commands/__init__.py +5 -0
- buvis_gems-0.12.6/src/tools/puc/commands/strip/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/puc/commands/strip/strip.py +84 -0
- buvis_gems-0.12.6/src/tools/puc/manifest.toml +19 -0
- buvis_gems-0.12.6/src/tools/puc/settings.py +26 -0
- buvis_gems-0.12.6/src/tools/readerctl/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/readerctl/__main__.py +6 -0
- buvis_gems-0.12.6/src/tools/readerctl/adapters/__init__.py +5 -0
- buvis_gems-0.12.6/src/tools/readerctl/adapters/reader_api/reader_api.py +58 -0
- buvis_gems-0.12.6/src/tools/readerctl/adapters/response.py +13 -0
- buvis_gems-0.12.6/src/tools/readerctl/cli.py +110 -0
- buvis_gems-0.12.6/src/tools/readerctl/commands/__init__.py +6 -0
- buvis_gems-0.12.6/src/tools/readerctl/commands/add/__init__.py +3 -0
- buvis_gems-0.12.6/src/tools/readerctl/commands/add/add.py +17 -0
- buvis_gems-0.12.6/src/tools/readerctl/commands/login/__init__.py +3 -0
- buvis_gems-0.12.6/src/tools/readerctl/commands/login/login.py +35 -0
- buvis_gems-0.12.6/src/tools/readerctl/manifest.toml +20 -0
- buvis_gems-0.12.6/src/tools/readerctl/settings.py +16 -0
- buvis_gems-0.12.6/src/tools/sysup/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/sysup/__main__.py +6 -0
- buvis_gems-0.12.6/src/tools/sysup/cli.py +92 -0
- buvis_gems-0.12.6/src/tools/sysup/commands/__init__.py +9 -0
- buvis_gems-0.12.6/src/tools/sysup/commands/mac/__init__.py +5 -0
- buvis_gems-0.12.6/src/tools/sysup/commands/mac/mac.py +130 -0
- buvis_gems-0.12.6/src/tools/sysup/commands/nvim/__init__.py +5 -0
- buvis_gems-0.12.6/src/tools/sysup/commands/nvim/nvim.py +199 -0
- buvis_gems-0.12.6/src/tools/sysup/commands/pip/__init__.py +5 -0
- buvis_gems-0.12.6/src/tools/sysup/commands/pip/pip.py +150 -0
- buvis_gems-0.12.6/src/tools/sysup/commands/step_result.py +8 -0
- buvis_gems-0.12.6/src/tools/sysup/commands/wsl/__init__.py +5 -0
- buvis_gems-0.12.6/src/tools/sysup/commands/wsl/wsl.py +36 -0
- buvis_gems-0.12.6/src/tools/sysup/manifest.toml +22 -0
- buvis_gems-0.12.6/src/tools/sysup/settings.py +14 -0
- buvis_gems-0.12.6/src/tools/vuc/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/vuc/__main__.py +6 -0
- buvis_gems-0.12.6/src/tools/vuc/cli.py +39 -0
- buvis_gems-0.12.6/src/tools/vuc/commands/__init__.py +5 -0
- buvis_gems-0.12.6/src/tools/vuc/commands/multilang/__init__.py +5 -0
- buvis_gems-0.12.6/src/tools/vuc/commands/multilang/multilang.py +93 -0
- buvis_gems-0.12.6/src/tools/vuc/manifest.toml +19 -0
- buvis_gems-0.12.6/src/tools/vuc/settings.py +14 -0
- buvis_gems-0.12.6/src/tools/zseq/__init__.py +1 -0
- buvis_gems-0.12.6/src/tools/zseq/__main__.py +6 -0
- buvis_gems-0.12.6/src/tools/zseq/cli.py +56 -0
- buvis_gems-0.12.6/src/tools/zseq/commands/__init__.py +5 -0
- buvis_gems-0.12.6/src/tools/zseq/commands/get_last/__init__.py +3 -0
- buvis_gems-0.12.6/src/tools/zseq/commands/get_last/get_last.py +39 -0
- buvis_gems-0.12.6/src/tools/zseq/manifest.toml +19 -0
- buvis_gems-0.12.6/src/tools/zseq/settings.py +17 -0
- buvis_gems-0.12.6/src/tools/zseq/shared/__init__.py +3 -0
- buvis_gems-0.12.6/src/tools/zseq/shared/zseq_filename.py +65 -0
- buvis_gems-0.12.6/tests/conftest.py +43 -0
- buvis_gems-0.12.6/tests/dev/__init__.py +0 -0
- buvis_gems-0.12.6/tests/dev/test_check_tool_wiring.py +86 -0
- buvis_gems-0.12.6/tests/dev/test_scaffold.py +218 -0
- buvis_gems-0.12.6/tests/lib/conftest.py +59 -0
- buvis_gems-0.12.6/tests/lib/pybase/adapters/test_capturing_rich_handler.py +87 -0
- buvis_gems-0.12.6/tests/lib/pybase/adapters/test_console_adapter.py +328 -0
- buvis_gems-0.12.6/tests/lib/pybase/adapters/test_jira_adapter.py +1027 -0
- buvis_gems-0.12.6/tests/lib/pybase/adapters/test_jira_domain.py +59 -0
- buvis_gems-0.12.6/tests/lib/pybase/adapters/test_jira_exceptions.py +54 -0
- buvis_gems-0.12.6/tests/lib/pybase/adapters/test_jira_settings.py +77 -0
- buvis_gems-0.12.6/tests/lib/pybase/adapters/test_outlook_exceptions.py +32 -0
- buvis_gems-0.12.6/tests/lib/pybase/adapters/test_outlook_local_adapter.py +290 -0
- buvis_gems-0.12.6/tests/lib/pybase/adapters/test_shell_adapter.py +500 -0
- buvis_gems-0.12.6/tests/lib/pybase/adapters/test_uv_adapter.py +76 -0
- buvis_gems-0.12.6/tests/lib/pybase/adapters/test_uv_tool_manager.py +307 -0
- buvis_gems-0.12.6/tests/lib/pybase/configuration/test_click_integration.py +1064 -0
- buvis_gems-0.12.6/tests/lib/pybase/configuration/test_config_writer.py +575 -0
- buvis_gems-0.12.6/tests/lib/pybase/configuration/test_edge_cases.py +127 -0
- buvis_gems-0.12.6/tests/lib/pybase/configuration/test_global_settings.py +64 -0
- buvis_gems-0.12.6/tests/lib/pybase/configuration/test_loader.py +594 -0
- buvis_gems-0.12.6/tests/lib/pybase/configuration/test_loader_escape.py +90 -0
- buvis_gems-0.12.6/tests/lib/pybase/configuration/test_loader_permissions.py +101 -0
- buvis_gems-0.12.6/tests/lib/pybase/configuration/test_music_settings.py +57 -0
- buvis_gems-0.12.6/tests/lib/pybase/configuration/test_paths.py +39 -0
- buvis_gems-0.12.6/tests/lib/pybase/configuration/test_photo_settings.py +57 -0
- buvis_gems-0.12.6/tests/lib/pybase/configuration/test_resolver.py +496 -0
- buvis_gems-0.12.6/tests/lib/pybase/configuration/test_sensitive_logging.py +117 -0
- buvis_gems-0.12.6/tests/lib/pybase/configuration/test_settings.py +24 -0
- buvis_gems-0.12.6/tests/lib/pybase/configuration/test_settings_immutability.py +91 -0
- buvis_gems-0.12.6/tests/lib/pybase/configuration/test_settings_validation.py +96 -0
- buvis_gems-0.12.6/tests/lib/pybase/configuration/test_validators.py +336 -0
- buvis_gems-0.12.6/tests/lib/pybase/filesystem/test_file_metadata_reader.py +114 -0
- buvis_gems-0.12.6/tests/lib/pybase/formatting/test_abbr.py +135 -0
- buvis_gems-0.12.6/tests/lib/pybase/formatting/test_string_case_tools.py +73 -0
- buvis_gems-0.12.6/tests/lib/pybase/formatting/test_string_operator.py +120 -0
- buvis_gems-0.12.6/tests/lib/pybase/formatting/test_suggest_tags.py +66 -0
- buvis_gems-0.12.6/tests/lib/pybase/formatting/test_word_level_tools.py +31 -0
- buvis_gems-0.12.6/tests/lib/pybase/test_adapters_init.py +36 -0
- buvis_gems-0.12.6/tests/lib/pybase/test_adapters_init_extra.py +28 -0
- buvis_gems-0.12.6/tests/lib/pybase/test_generators.py +291 -0
- buvis_gems-0.12.6/tests/lib/pybase/test_manifest.py +109 -0
- buvis_gems-0.12.6/tests/lib/pybase/test_manifest_extra.py +40 -0
- buvis_gems-0.12.6/tests/lib/pybase/test_result.py +73 -0
- buvis_gems-0.12.6/tests/lib/pybase/updater/__init__.py +0 -0
- buvis_gems-0.12.6/tests/lib/pybase/updater/test_checker.py +302 -0
- buvis_gems-0.12.6/tests/lib/pybase/updater/test_detector.py +309 -0
- buvis_gems-0.12.6/tests/lib/pybase/updater/test_executor.py +372 -0
- buvis_gems-0.12.6/tests/lib/pybase/updater/test_force_update.py +194 -0
- buvis_gems-0.12.6/tests/lib/pybase/updater/test_init.py +111 -0
- buvis_gems-0.12.6/tests/lib/pybase/updater/test_state.py +120 -0
- buvis_gems-0.12.6/tests/lib/zettel/application/test_create_zettel_use_case.py +98 -0
- buvis_gems-0.12.6/tests/lib/zettel/application/test_delete_zettel_use_case.py +17 -0
- buvis_gems-0.12.6/tests/lib/zettel/application/test_print_zettel_use_case.py +35 -0
- buvis_gems-0.12.6/tests/lib/zettel/application/test_read_zettel_use_case.py +47 -0
- buvis_gems-0.12.6/tests/lib/zettel/application/test_update_zettel_use_case.py +52 -0
- buvis_gems-0.12.6/tests/lib/zettel/entities/project/test_fix_lists_bullets.py +29 -0
- buvis_gems-0.12.6/tests/lib/zettel/entities/project/test_log_parser.py +214 -0
- buvis_gems-0.12.6/tests/lib/zettel/entities/project/test_migrate_loop_log.py +69 -0
- buvis_gems-0.12.6/tests/lib/zettel/entities/project/test_migrate_parent_reference.py +45 -0
- buvis_gems-0.12.6/tests/lib/zettel/entities/project/test_normalize_sections_order.py +99 -0
- buvis_gems-0.12.6/tests/lib/zettel/entities/project/test_project_zettel.py +54 -0
- buvis_gems-0.12.6/tests/lib/zettel/entities/project/test_set_default_completed.py +42 -0
- buvis_gems-0.12.6/tests/lib/zettel/entities/zettel/fixers/__init__.py +0 -0
- buvis_gems-0.12.6/tests/lib/zettel/entities/zettel/fixers/test_set_default_date.py +39 -0
- buvis_gems-0.12.6/tests/lib/zettel/entities/zettel/fixers/test_set_default_id.py +26 -0
- buvis_gems-0.12.6/tests/lib/zettel/entities/zettel/fixers/test_set_default_processed.py +22 -0
- buvis_gems-0.12.6/tests/lib/zettel/entities/zettel/fixers/test_set_default_publish.py +22 -0
- buvis_gems-0.12.6/tests/lib/zettel/entities/zettel/fixers/test_set_default_tags.py +12 -0
- buvis_gems-0.12.6/tests/lib/zettel/entities/zettel/fixers/test_set_default_title.py +33 -0
- buvis_gems-0.12.6/tests/lib/zettel/entities/zettel/fixers/test_set_default_type.py +22 -0
- buvis_gems-0.12.6/tests/lib/zettel/entities/zettel/test_align_h1_to_title.py +47 -0
- buvis_gems-0.12.6/tests/lib/zettel/entities/zettel/test_fix_title_format.py +48 -0
- buvis_gems-0.12.6/tests/lib/zettel/entities/zettel/test_move_tag_to_tags.py +57 -0
- buvis_gems-0.12.6/tests/lib/zettel/entities/zettel/test_move_zkn_id_to_id.py +50 -0
- buvis_gems-0.12.6/tests/lib/zettel/entities/zettel/test_normalize_type.py +34 -0
- buvis_gems-0.12.6/tests/lib/zettel/entities/zettel/test_remove_duplicate_tags.py +50 -0
- buvis_gems-0.12.6/tests/lib/zettel/entities/zettel/test_sort_tags.py +32 -0
- buvis_gems-0.12.6/tests/lib/zettel/entities/zettel/test_zettel.py +124 -0
- buvis_gems-0.12.6/tests/lib/zettel/entities/zettel/test_zettel_consistency_service.py +77 -0
- buvis_gems-0.12.6/tests/lib/zettel/entities/zettel/test_zettel_migration_service.py +64 -0
- buvis_gems-0.12.6/tests/lib/zettel/infrastructure/formatting/markdown/test_helpers.py +61 -0
- buvis_gems-0.12.6/tests/lib/zettel/infrastructure/formatting/markdown/test_markdown_zettel_formatter.py +148 -0
- buvis_gems-0.12.6/tests/lib/zettel/infrastructure/persistence/test_back_matter_preprocessor.py +66 -0
- buvis_gems-0.12.6/tests/lib/zettel/infrastructure/persistence/test_front_matter_preprocessor.py +119 -0
- buvis_gems-0.12.6/tests/lib/zettel/infrastructure/persistence/test_markdown_zettel_repository_reader.py +110 -0
- buvis_gems-0.12.6/tests/lib/zettel/infrastructure/persistence/test_markdown_zettel_repository_writer.py +84 -0
- buvis_gems-0.12.6/tests/lib/zettel/infrastructure/test_expression_engine.py +70 -0
- buvis_gems-0.12.6/tests/lib/zettel/infrastructure/test_markdown_parser.py +151 -0
- buvis_gems-0.12.6/tests/lib/zettel/infrastructure/test_zettel_file_parser.py +28 -0
- buvis_gems-0.12.6/tests/lib/zettel/parity/fixtures/202401151030 Note from filename.md +10 -0
- buvis_gems-0.12.6/tests/lib/zettel/parity/fixtures/duplicate_tags.md +18 -0
- buvis_gems-0.12.6/tests/lib/zettel/parity/fixtures/many_references.md +26 -0
- buvis_gems-0.12.6/tests/lib/zettel/parity/fixtures/multiple_sections.md +22 -0
- buvis_gems-0.12.6/tests/lib/zettel/parity/fixtures/needs_migration.md +13 -0
- buvis_gems-0.12.6/tests/lib/zettel/parity/fixtures/note_with_backmatter.md +23 -0
- buvis_gems-0.12.6/tests/lib/zettel/parity/fixtures/simple_note.md +15 -0
- buvis_gems-0.12.6/tests/lib/zettel/parity/test_performance.py +99 -0
- buvis_gems-0.12.6/tests/lib/zettel/parity/test_rust_python_parity.py +210 -0
- buvis_gems-0.12.6/tests/lib/zettel/query/__init__.py +0 -0
- buvis_gems-0.12.6/tests/lib/zettel/query/test_expression_engine.py +157 -0
- buvis_gems-0.12.6/tests/lib/zettel/query/test_expression_engine_extra.py +147 -0
- buvis_gems-0.12.6/tests/lib/zettel/query/test_output_formatter.py +299 -0
- buvis_gems-0.12.6/tests/lib/zettel/query/test_query_spec.py +64 -0
- buvis_gems-0.12.6/tests/lib/zettel/query/test_query_spec_parser.py +699 -0
- buvis_gems-0.12.6/tests/lib/zettel/query/test_query_zettels.py +510 -0
- buvis_gems-0.12.6/tests/lib/zettel/query/test_query_zettels_extra.py +260 -0
- buvis_gems-0.12.6/tests/lib/zettel/services/test_zettel_factory.py +96 -0
- buvis_gems-0.12.6/tests/lib/zettel/templates/__init__.py +0 -0
- buvis_gems-0.12.6/tests/lib/zettel/templates/test_discover_templates.py +41 -0
- buvis_gems-0.12.6/tests/lib/zettel/templates/test_discovery.py +124 -0
- buvis_gems-0.12.6/tests/lib/zettel/templates/test_project_template.py +37 -0
- buvis_gems-0.12.6/tests/lib/zettel/templates/test_yaml_template.py +200 -0
- buvis_gems-0.12.6/tests/lib/zettel/test_markdown_helpers.py +143 -0
- buvis_gems-0.12.6/tests/lib/zettel/test_output_formatter.py +71 -0
- buvis_gems-0.12.6/tests/lib/zettel/test_template_loader.py +127 -0
- buvis_gems-0.12.6/tests/lib/zettel/value_objects/test_zettel_data.py +17 -0
- buvis_gems-0.12.6/tests/lib/zettel_integrations/test_assembler.py +163 -0
- buvis_gems-0.12.6/tests/tools/bim/commands/__init__.py +0 -0
- buvis_gems-0.12.6/tests/tools/bim/commands/shared/__init__.py +0 -0
- buvis_gems-0.12.6/tests/tools/bim/commands/shared/test_os_open.py +26 -0
- buvis_gems-0.12.6/tests/tools/bim/commands/shared/test_sections.py +30 -0
- buvis_gems-0.12.6/tests/tools/bim/conftest.py +24 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/__init__.py +0 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/_concurrency_workers.py +83 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/conftest.py +34 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/fixtures/issuers/ciphertext.yml +7 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/fixtures/issuers/valid.yml +28 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/fixtures/issuers/with_aliases.yml +26 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/fixtures/issuers/with_rules.yml +56 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/fixtures/issuers/with_rules_duplicate.yml +48 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/fixtures/ocr_text/cez_invoice.txt +26 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/fixtures/ocr_text/o2_statement.txt +26 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/fixtures/ocr_text/unknown_issuer_invoice.txt +27 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/fixtures/zettel_writer/num0_amt0_lang0.md +35 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/fixtures/zettel_writer/num0_amt0_lang1.md +35 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/fixtures/zettel_writer/num0_amt1_lang0.md +35 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/fixtures/zettel_writer/num0_amt1_lang1.md +35 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/fixtures/zettel_writer/num1_amt0_lang0.md +35 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/fixtures/zettel_writer/num1_amt0_lang1.md +35 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/fixtures/zettel_writer/num1_amt1_lang0.md +35 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/fixtures/zettel_writer/num1_amt1_lang1.md +35 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/rules_engine_helpers.py +98 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_atomic_write.py +63 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_audit_auditor.py +658 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_audit_command.py +235 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_audit_integration.py +350 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_audit_models.py +251 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_audit_pdf_checks.py +306 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_audit_reporter.py +362 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_audit_rules_checks.py +569 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_audit_walker.py +267 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_classifier.py +419 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_classifier_pinned.py +337 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_cli_audit.py +232 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_cli_ingest.py +223 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_cli_promote.py +171 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_dependencies.py +64 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_doc_params.py +95 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_extractor.py +874 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_extractor_pinned.py +396 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_hashing.py +33 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_health.py +230 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_ingest.py +44 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_issuers.py +294 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_issuers_with_rules.py +329 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_naming.py +169 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_ocr.py +647 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_pipeline.py +1455 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_pipeline_promote_consistency.py +239 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_pipeline_rule_match_recording.py +277 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_pipeline_rules.py +785 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_progress.py +101 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_promote.py +687 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_rules_backtest_command.py +177 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_rules_engine_basic.py +170 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_rules_engine_conflict.py +369 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_rules_engine_inbox.py +307 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_rules_engine_priority.py +133 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_rules_list_command.py +110 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_rules_matcher.py +418 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_rules_models.py +728 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_rules_rule_extractor.py +690 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_rules_test_command.py +108 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_rules_transforms.py +278 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_rules_validate_command.py +282 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_settings_models.py +229 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_state_db.py +490 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_triage.py +265 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_triage_rule_conflict.py +52 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_validators.py +94 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_zettel_helpers.py +73 -0
- buvis_gems-0.12.6/tests/tools/bim/doc/test_zettel_writer.py +671 -0
- buvis_gems-0.12.6/tests/tools/bim/test_archive_note.py +74 -0
- buvis_gems-0.12.6/tests/tools/bim/test_bim_cli_handlers.py +563 -0
- buvis_gems-0.12.6/tests/tools/bim/test_bim_query.py +163 -0
- buvis_gems-0.12.6/tests/tools/bim/test_cli.py +613 -0
- buvis_gems-0.12.6/tests/tools/bim/test_create_note.py +438 -0
- buvis_gems-0.12.6/tests/tools/bim/test_delete_note.py +49 -0
- buvis_gems-0.12.6/tests/tools/bim/test_dependencies.py +41 -0
- buvis_gems-0.12.6/tests/tools/bim/test_edit_note.py +214 -0
- buvis_gems-0.12.6/tests/tools/bim/test_edit_note_extra.py +47 -0
- buvis_gems-0.12.6/tests/tools/bim/test_format_note.py +212 -0
- buvis_gems-0.12.6/tests/tools/bim/test_import_note.py +312 -0
- buvis_gems-0.12.6/tests/tools/bim/test_query.py +180 -0
- buvis_gems-0.12.6/tests/tools/bim/test_serve.py +294 -0
- buvis_gems-0.12.6/tests/tools/bim/test_show_note.py +77 -0
- buvis_gems-0.12.6/tests/tools/bim/test_sync_note.py +362 -0
- buvis_gems-0.12.6/tests/tools/bim/tui/__init__.py +0 -0
- buvis_gems-0.12.6/tests/tools/bim/tui/conftest.py +7 -0
- buvis_gems-0.12.6/tests/tools/bim/tui/test_confirm_screen.py +45 -0
- buvis_gems-0.12.6/tests/tools/bim/tui/test_create_note.py +109 -0
- buvis_gems-0.12.6/tests/tools/bim/tui/test_edit_note.py +154 -0
- buvis_gems-0.12.6/tests/tools/bim/tui/test_kanban.py +99 -0
- buvis_gems-0.12.6/tests/tools/bim/tui/test_query.py +95 -0
- buvis_gems-0.12.6/tests/tools/bim/tui/test_show_note.py +83 -0
- buvis_gems-0.12.6/tests/tools/conftest.py +9 -0
- buvis_gems-0.12.6/tests/tools/dot/__snapshots__/test_tui_snapshots/TestBrowseScreenSnapshots.test_browse_screen_with_many_entries[120x40].raw +210 -0
- buvis_gems-0.12.6/tests/tools/dot/__snapshots__/test_tui_snapshots/TestBrowseScreenSnapshots.test_browse_screen_with_many_entries[40x15].raw +110 -0
- buvis_gems-0.12.6/tests/tools/dot/__snapshots__/test_tui_snapshots/TestBrowseScreenSnapshots.test_browse_screen_with_many_entries[80x24].raw +146 -0
- buvis_gems-0.12.6/tests/tools/dot/__snapshots__/test_tui_snapshots/TestDiffViewBottomScrollSnapshot.test_diff_pane_shows_bottom_after_shift_g.raw +227 -0
- buvis_gems-0.12.6/tests/tools/dot/__snapshots__/test_tui_snapshots/TestMainScreenSnapshots.test_main_screen_with_overflowing_content[120x40].raw +229 -0
- buvis_gems-0.12.6/tests/tools/dot/__snapshots__/test_tui_snapshots/TestMainScreenSnapshots.test_main_screen_with_overflowing_content[40x15].raw +124 -0
- buvis_gems-0.12.6/tests/tools/dot/__snapshots__/test_tui_snapshots/TestMainScreenSnapshots.test_main_screen_with_overflowing_content[80x24].raw +164 -0
- buvis_gems-0.12.6/tests/tools/dot/__snapshots__/test_tui_snapshots/TestSecretsScreenSnapshots.test_secrets_screen_with_many_secrets[120x40].raw +216 -0
- buvis_gems-0.12.6/tests/tools/dot/__snapshots__/test_tui_snapshots/TestSecretsScreenSnapshots.test_secrets_screen_with_many_secrets[40x15].raw +116 -0
- buvis_gems-0.12.6/tests/tools/dot/__snapshots__/test_tui_snapshots/TestSecretsScreenSnapshots.test_secrets_screen_with_many_secrets[80x24].raw +152 -0
- buvis_gems-0.12.6/tests/tools/dot/conftest.py +13 -0
- buvis_gems-0.12.6/tests/tools/dot/test_add.py +174 -0
- buvis_gems-0.12.6/tests/tools/dot/test_browse_commands.py +215 -0
- buvis_gems-0.12.6/tests/tools/dot/test_browse_screen.py +329 -0
- buvis_gems-0.12.6/tests/tools/dot/test_commit.py +86 -0
- buvis_gems-0.12.6/tests/tools/dot/test_commit_modal.py +68 -0
- buvis_gems-0.12.6/tests/tools/dot/test_delete.py +60 -0
- buvis_gems-0.12.6/tests/tools/dot/test_diff_view.py +693 -0
- buvis_gems-0.12.6/tests/tools/dot/test_dir_list.py +260 -0
- buvis_gems-0.12.6/tests/tools/dot/test_dot_commands.py +153 -0
- buvis_gems-0.12.6/tests/tools/dot/test_encrypt.py +84 -0
- buvis_gems-0.12.6/tests/tools/dot/test_file_list.py +145 -0
- buvis_gems-0.12.6/tests/tools/dot/test_git_ops.py +567 -0
- buvis_gems-0.12.6/tests/tools/dot/test_gitignore_modal.py +86 -0
- buvis_gems-0.12.6/tests/tools/dot/test_models.py +49 -0
- buvis_gems-0.12.6/tests/tools/dot/test_patch.py +615 -0
- buvis_gems-0.12.6/tests/tools/dot/test_pull.py +105 -0
- buvis_gems-0.12.6/tests/tools/dot/test_push.py +79 -0
- buvis_gems-0.12.6/tests/tools/dot/test_rm.py +146 -0
- buvis_gems-0.12.6/tests/tools/dot/test_run.py +67 -0
- buvis_gems-0.12.6/tests/tools/dot/test_secrets_commands.py +206 -0
- buvis_gems-0.12.6/tests/tools/dot/test_secrets_screen.py +333 -0
- buvis_gems-0.12.6/tests/tools/dot/test_status.py +346 -0
- buvis_gems-0.12.6/tests/tools/dot/test_status_bar.py +78 -0
- buvis_gems-0.12.6/tests/tools/dot/test_tui_app.py +687 -0
- buvis_gems-0.12.6/tests/tools/dot/test_tui_snapshots.py +217 -0
- buvis_gems-0.12.6/tests/tools/dot/test_unstage.py +69 -0
- buvis_gems-0.12.6/tests/tools/fctracker/conftest.py +19 -0
- buvis_gems-0.12.6/tests/tools/fctracker/test_account.py +36 -0
- buvis_gems-0.12.6/tests/tools/fctracker/test_balance.py +92 -0
- buvis_gems-0.12.6/tests/tools/fctracker/test_cli.py +22 -0
- buvis_gems-0.12.6/tests/tools/fctracker/test_deposit.py +90 -0
- buvis_gems-0.12.6/tests/tools/fctracker/test_fctracker_cli_extra.py +52 -0
- buvis_gems-0.12.6/tests/tools/fctracker/test_fctracker_commands.py +52 -0
- buvis_gems-0.12.6/tests/tools/fctracker/test_queue.py +87 -0
- buvis_gems-0.12.6/tests/tools/fctracker/test_transaction.py +30 -0
- buvis_gems-0.12.6/tests/tools/fctracker/test_transactions.py +287 -0
- buvis_gems-0.12.6/tests/tools/fctracker/test_transactions_dir_scanner.py +50 -0
- buvis_gems-0.12.6/tests/tools/fctracker/test_transactions_reader.py +68 -0
- buvis_gems-0.12.6/tests/tools/fctracker/test_withdrawal.py +82 -0
- buvis_gems-0.12.6/tests/tools/fren/test_cli.py +47 -0
- buvis_gems-0.12.6/tests/tools/fren/test_directorize.py +80 -0
- buvis_gems-0.12.6/tests/tools/fren/test_flatten.py +145 -0
- buvis_gems-0.12.6/tests/tools/fren/test_fren_commands.py +140 -0
- buvis_gems-0.12.6/tests/tools/fren/test_normalize.py +154 -0
- buvis_gems-0.12.6/tests/tools/fren/test_slug.py +221 -0
- buvis_gems-0.12.6/tests/tools/hello_world/test_cli.py +13 -0
- buvis_gems-0.12.6/tests/tools/hello_world/test_diagnostics.py +58 -0
- buvis_gems-0.12.6/tests/tools/hello_world/test_hello_world_cli_extra.py +44 -0
- buvis_gems-0.12.6/tests/tools/hello_world/test_hello_world_commands.py +27 -0
- buvis_gems-0.12.6/tests/tools/hello_world/test_list_fonts.py +12 -0
- buvis_gems-0.12.6/tests/tools/hello_world/test_print_figlet.py +25 -0
- buvis_gems-0.12.6/tests/tools/morph/test_cli.py +28 -0
- buvis_gems-0.12.6/tests/tools/morph/test_deblank.py +175 -0
- buvis_gems-0.12.6/tests/tools/morph/test_deblank_extra.py +90 -0
- buvis_gems-0.12.6/tests/tools/morph/test_html2md.py +261 -0
- buvis_gems-0.12.6/tests/tools/morph/test_morph_cli.py +57 -0
- buvis_gems-0.12.6/tests/tools/morph/test_morph_commands.py +146 -0
- buvis_gems-0.12.6/tests/tools/morph/test_pdf2png.py +120 -0
- buvis_gems-0.12.6/tests/tools/muc/test_cli.py +26 -0
- buvis_gems-0.12.6/tests/tools/muc/test_cover.py +243 -0
- buvis_gems-0.12.6/tests/tools/muc/test_dir_tree.py +150 -0
- buvis_gems-0.12.6/tests/tools/muc/test_dir_tree_symlink_security.py +104 -0
- buvis_gems-0.12.6/tests/tools/muc/test_limit.py +123 -0
- buvis_gems-0.12.6/tests/tools/muc/test_limit_extra.py +115 -0
- buvis_gems-0.12.6/tests/tools/muc/test_merge_mac_metadata.py +86 -0
- buvis_gems-0.12.6/tests/tools/muc/test_muc_cli_extra.py +103 -0
- buvis_gems-0.12.6/tests/tools/muc/test_muc_commands.py +37 -0
- buvis_gems-0.12.6/tests/tools/muc/test_safe_rglob.py +80 -0
- buvis_gems-0.12.6/tests/tools/muc/test_tidy.py +75 -0
- buvis_gems-0.12.6/tests/tools/netscan/test_cli.py +22 -0
- buvis_gems-0.12.6/tests/tools/netscan/test_hosts.py +91 -0
- buvis_gems-0.12.6/tests/tools/netscan/test_netscan_cli.py +84 -0
- buvis_gems-0.12.6/tests/tools/netscan/test_network.py +78 -0
- buvis_gems-0.12.6/tests/tools/netscan/test_ssh.py +78 -0
- buvis_gems-0.12.6/tests/tools/outlookctl/test_cli.py +10 -0
- buvis_gems-0.12.6/tests/tools/outlookctl/test_create_timeblock.py +16 -0
- buvis_gems-0.12.6/tests/tools/outlookctl/test_outlookctl_cli_extra.py +48 -0
- buvis_gems-0.12.6/tests/tools/outlookctl/test_outlookctl_commands.py +14 -0
- buvis_gems-0.12.6/tests/tools/pidash/__snapshots__/test_tui_snapshots/TestPidashMultiSessionSnapshots.test_multi_session_with_many_sessions[120x40].raw +221 -0
- buvis_gems-0.12.6/tests/tools/pidash/__snapshots__/test_tui_snapshots/TestPidashMultiSessionSnapshots.test_multi_session_with_many_sessions[40x15].raw +121 -0
- buvis_gems-0.12.6/tests/tools/pidash/__snapshots__/test_tui_snapshots/TestPidashMultiSessionSnapshots.test_multi_session_with_many_sessions[80x24].raw +157 -0
- buvis_gems-0.12.6/tests/tools/pidash/__snapshots__/test_tui_snapshots/TestPidashSingleProjectSnapshots.test_single_project_with_many_tasks[120x40].raw +223 -0
- buvis_gems-0.12.6/tests/tools/pidash/__snapshots__/test_tui_snapshots/TestPidashSingleProjectSnapshots.test_single_project_with_many_tasks[40x15].raw +121 -0
- buvis_gems-0.12.6/tests/tools/pidash/__snapshots__/test_tui_snapshots/TestPidashSingleProjectSnapshots.test_single_project_with_many_tasks[80x24].raw +158 -0
- buvis_gems-0.12.6/tests/tools/pidash/commands/__init__.py +0 -0
- buvis_gems-0.12.6/tests/tools/pidash/commands/hooks/__init__.py +0 -0
- buvis_gems-0.12.6/tests/tools/pidash/commands/hooks/test_install.py +195 -0
- buvis_gems-0.12.6/tests/tools/pidash/commands/hooks/test_install_integration.py +144 -0
- buvis_gems-0.12.6/tests/tools/pidash/commands/hooks/test_settings.py +132 -0
- buvis_gems-0.12.6/tests/tools/pidash/commands/hooks/test_status.py +77 -0
- buvis_gems-0.12.6/tests/tools/pidash/commands/hooks/test_uninstall.py +95 -0
- buvis_gems-0.12.6/tests/tools/pidash/conftest.py +195 -0
- buvis_gems-0.12.6/tests/tools/pidash/hooks/__init__.py +0 -0
- buvis_gems-0.12.6/tests/tools/pidash/hooks/test_cleanup_session.py +90 -0
- buvis_gems-0.12.6/tests/tools/pidash/hooks/test_clear_attention.py +81 -0
- buvis_gems-0.12.6/tests/tools/pidash/hooks/test_session.py +169 -0
- buvis_gems-0.12.6/tests/tools/pidash/hooks/test_set_attention.py +110 -0
- buvis_gems-0.12.6/tests/tools/pidash/hooks/test_sync_agent_return.py +130 -0
- buvis_gems-0.12.6/tests/tools/pidash/hooks/test_update_tasks.py +180 -0
- buvis_gems-0.12.6/tests/tools/pidash/test_app.py +222 -0
- buvis_gems-0.12.6/tests/tools/pidash/test_cli.py +60 -0
- buvis_gems-0.12.6/tests/tools/pidash/test_state.py +247 -0
- buvis_gems-0.12.6/tests/tools/pidash/test_tui_snapshots.py +206 -0
- buvis_gems-0.12.6/tests/tools/pidash/test_widgets.py +510 -0
- buvis_gems-0.12.6/tests/tools/pinger/test_cli.py +15 -0
- buvis_gems-0.12.6/tests/tools/pinger/test_pinger_commands.py +44 -0
- buvis_gems-0.12.6/tests/tools/pinger/test_wait.py +50 -0
- buvis_gems-0.12.6/tests/tools/puc/test_cli.py +15 -0
- buvis_gems-0.12.6/tests/tools/puc/test_puc_cli_extra.py +50 -0
- buvis_gems-0.12.6/tests/tools/puc/test_puc_commands.py +16 -0
- buvis_gems-0.12.6/tests/tools/puc/test_strip.py +219 -0
- buvis_gems-0.12.6/tests/tools/readerctl/test_add.py +33 -0
- buvis_gems-0.12.6/tests/tools/readerctl/test_cli.py +21 -0
- buvis_gems-0.12.6/tests/tools/readerctl/test_login.py +56 -0
- buvis_gems-0.12.6/tests/tools/readerctl/test_reader_api.py +113 -0
- buvis_gems-0.12.6/tests/tools/readerctl/test_readerctl_cli_extra.py +112 -0
- buvis_gems-0.12.6/tests/tools/readerctl/test_readerctl_commands.py +43 -0
- buvis_gems-0.12.6/tests/tools/readerctl/test_response.py +24 -0
- buvis_gems-0.12.6/tests/tools/sysup/__init__.py +5 -0
- buvis_gems-0.12.6/tests/tools/sysup/test_mac.py +520 -0
- buvis_gems-0.12.6/tests/tools/sysup/test_nvim.py +478 -0
- buvis_gems-0.12.6/tests/tools/sysup/test_pip.py +343 -0
- buvis_gems-0.12.6/tests/tools/sysup/test_sysup_cli.py +151 -0
- buvis_gems-0.12.6/tests/tools/sysup/test_wsl.py +93 -0
- buvis_gems-0.12.6/tests/tools/vuc/test_cli.py +14 -0
- buvis_gems-0.12.6/tests/tools/vuc/test_multilang.py +300 -0
- buvis_gems-0.12.6/tests/tools/vuc/test_vuc_commands.py +65 -0
- buvis_gems-0.12.6/tests/tools/zseq/test_cli.py +11 -0
- buvis_gems-0.12.6/tests/tools/zseq/test_get_last.py +48 -0
- buvis_gems-0.12.6/tests/tools/zseq/test_zseq_cli_extra.py +32 -0
- buvis_gems-0.12.6/tests/tools/zseq/test_zseq_commands.py +30 -0
- buvis_gems-0.12.6/tests/tools/zseq/test_zseq_filename.py +51 -0
- buvis_gems-0.12.6/uv.lock +2905 -0
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
version: 2
|
|
2
|
+
updates:
|
|
3
|
+
- package-ecosystem: pip
|
|
4
|
+
directory: /
|
|
5
|
+
schedule:
|
|
6
|
+
interval: weekly
|
|
7
|
+
- package-ecosystem: cargo
|
|
8
|
+
directory: /src/rust
|
|
9
|
+
schedule:
|
|
10
|
+
interval: weekly
|
|
11
|
+
- package-ecosystem: github-actions
|
|
12
|
+
directory: /
|
|
13
|
+
schedule:
|
|
14
|
+
interval: monthly
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
name: Deploy Documentation
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [master]
|
|
6
|
+
paths:
|
|
7
|
+
- "docs/**"
|
|
8
|
+
- "src/**"
|
|
9
|
+
- "pyproject.toml"
|
|
10
|
+
|
|
11
|
+
env:
|
|
12
|
+
BUVIS_SKIP_FRONTEND: "1"
|
|
13
|
+
|
|
14
|
+
jobs:
|
|
15
|
+
build-and-deploy:
|
|
16
|
+
runs-on: ubuntu-latest
|
|
17
|
+
permissions:
|
|
18
|
+
contents: write
|
|
19
|
+
pages: write
|
|
20
|
+
id-token: write
|
|
21
|
+
|
|
22
|
+
steps:
|
|
23
|
+
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
|
|
24
|
+
|
|
25
|
+
- uses: dtolnay/rust-toolchain@4cda84d5c5c54efe2404f9d843567869ab1699d4 # stable
|
|
26
|
+
|
|
27
|
+
- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
|
|
28
|
+
with:
|
|
29
|
+
python-version: "3.14"
|
|
30
|
+
|
|
31
|
+
- uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0
|
|
32
|
+
|
|
33
|
+
- name: Install dependencies
|
|
34
|
+
run: uv sync --all-extras --group docs
|
|
35
|
+
|
|
36
|
+
- name: Build documentation
|
|
37
|
+
run: uv run sphinx-build -b html docs/source docs/build/html
|
|
38
|
+
|
|
39
|
+
- name: Deploy to GitHub Pages
|
|
40
|
+
uses: peaceiris/actions-gh-pages@84c30a85c19949d7eee79c4ff27748b70285e453 # v4
|
|
41
|
+
with:
|
|
42
|
+
github_token: ${{ secrets.GITHUB_TOKEN }}
|
|
43
|
+
publish_dir: docs/build/html
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
name: Publish to PyPI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
tags:
|
|
6
|
+
- "gems-v*"
|
|
7
|
+
workflow_dispatch:
|
|
8
|
+
inputs:
|
|
9
|
+
testpypi:
|
|
10
|
+
description: "Publish to TestPyPI"
|
|
11
|
+
type: boolean
|
|
12
|
+
default: true
|
|
13
|
+
|
|
14
|
+
jobs:
|
|
15
|
+
test:
|
|
16
|
+
uses: ./.github/workflows/test.yml
|
|
17
|
+
|
|
18
|
+
build-wheels:
|
|
19
|
+
needs: test
|
|
20
|
+
strategy:
|
|
21
|
+
fail-fast: false
|
|
22
|
+
matrix:
|
|
23
|
+
os:
|
|
24
|
+
- ubuntu-latest
|
|
25
|
+
- ubuntu-24.04-arm
|
|
26
|
+
- macos-latest
|
|
27
|
+
- windows-latest
|
|
28
|
+
python-version: ["3.11", "3.12", "3.13", "3.14"]
|
|
29
|
+
runs-on: ${{ matrix.os }}
|
|
30
|
+
steps:
|
|
31
|
+
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
|
|
32
|
+
|
|
33
|
+
- uses: dtolnay/rust-toolchain@4cda84d5c5c54efe2404f9d843567869ab1699d4 # stable
|
|
34
|
+
|
|
35
|
+
- uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0
|
|
36
|
+
with:
|
|
37
|
+
enable-cache: true
|
|
38
|
+
|
|
39
|
+
- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
|
|
40
|
+
with:
|
|
41
|
+
python-version: ${{ matrix.python-version }}
|
|
42
|
+
|
|
43
|
+
- name: Install build deps
|
|
44
|
+
run: uv pip install --system maturin tomli
|
|
45
|
+
|
|
46
|
+
- name: Pin dependencies from lockfile
|
|
47
|
+
run: python dev/bin/pin_deps.py .
|
|
48
|
+
|
|
49
|
+
- name: Build wheel
|
|
50
|
+
run: uv build --wheel
|
|
51
|
+
|
|
52
|
+
- name: Repair Linux wheel
|
|
53
|
+
if: runner.os == 'Linux'
|
|
54
|
+
run: |
|
|
55
|
+
uv pip install --system auditwheel patchelf
|
|
56
|
+
auditwheel repair dist/*.whl --wheel-dir dist-repaired
|
|
57
|
+
rm -rf dist
|
|
58
|
+
mv dist-repaired dist
|
|
59
|
+
|
|
60
|
+
# One sdist for the whole release: indexes that list versions from
|
|
61
|
+
# .tar.gz filenames (Artifactory, mise's pipx backend) need it.
|
|
62
|
+
- name: Build sdist
|
|
63
|
+
if: matrix.os == 'ubuntu-latest' && matrix.python-version == '3.12'
|
|
64
|
+
run: uv build --sdist
|
|
65
|
+
|
|
66
|
+
- uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7
|
|
67
|
+
with:
|
|
68
|
+
name: wheel-${{ matrix.os }}-py${{ matrix.python-version }}
|
|
69
|
+
path: dist/*
|
|
70
|
+
|
|
71
|
+
publish:
|
|
72
|
+
needs: build-wheels
|
|
73
|
+
runs-on: ubuntu-latest
|
|
74
|
+
environment: ${{ (contains(github.ref_name, 'rc') || inputs.testpypi) && 'testpypi' || 'pypi' }}
|
|
75
|
+
permissions:
|
|
76
|
+
id-token: write
|
|
77
|
+
attestations: write
|
|
78
|
+
steps:
|
|
79
|
+
- uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8
|
|
80
|
+
with:
|
|
81
|
+
path: dist/
|
|
82
|
+
pattern: wheel-*
|
|
83
|
+
merge-multiple: true
|
|
84
|
+
|
|
85
|
+
- name: Attest build provenance
|
|
86
|
+
uses: actions/attest-build-provenance@0f67c3f4856b2e3261c31976d6725780e5e4c373 # v4
|
|
87
|
+
with:
|
|
88
|
+
subject-path: dist/*
|
|
89
|
+
|
|
90
|
+
- name: Publish
|
|
91
|
+
uses: pypa/gh-action-pypi-publish@dc37677b2e1c63e2034f94d8a5b11f265b73ba33 # release/v1
|
|
92
|
+
with:
|
|
93
|
+
packages-dir: dist/
|
|
94
|
+
repository-url: ${{ (contains(github.ref_name, 'rc') || inputs.testpypi) && 'https://test.pypi.org/legacy/' || 'https://upload.pypi.org/legacy/' }}
|
|
95
|
+
|
|
96
|
+
github-release:
|
|
97
|
+
needs: [build-wheels, publish]
|
|
98
|
+
if: github.event_name == 'push' && !contains(github.ref_name, 'rc')
|
|
99
|
+
runs-on: ubuntu-latest
|
|
100
|
+
permissions:
|
|
101
|
+
contents: write
|
|
102
|
+
steps:
|
|
103
|
+
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
|
|
104
|
+
with:
|
|
105
|
+
fetch-depth: 0
|
|
106
|
+
|
|
107
|
+
- uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8
|
|
108
|
+
with:
|
|
109
|
+
path: dist/
|
|
110
|
+
pattern: wheel-*
|
|
111
|
+
merge-multiple: true
|
|
112
|
+
|
|
113
|
+
- name: Generate SBOM
|
|
114
|
+
uses: anchore/sbom-action@e22c389904149dbc22b58101806040fa8d37a610 # v0
|
|
115
|
+
with:
|
|
116
|
+
path: dist/
|
|
117
|
+
format: cyclonedx-json
|
|
118
|
+
output-file: dist/buvis-gems.cdx.json
|
|
119
|
+
|
|
120
|
+
- name: Extract changelog
|
|
121
|
+
shell: bash
|
|
122
|
+
run: |
|
|
123
|
+
tag="${{ github.ref_name }}"
|
|
124
|
+
version="${tag#gems-v}"
|
|
125
|
+
echo "VERSION=$version" >> "$GITHUB_ENV"
|
|
126
|
+
awk "/^## \[${version//./\\.}\]/{found=1; next} /^## \[/{if(found) exit} found" CHANGELOG.md > release-notes.md
|
|
127
|
+
|
|
128
|
+
- uses: softprops/action-gh-release@3d0d9888cb7fd7b750713d6e236d1fcb99157228 # v3
|
|
129
|
+
with:
|
|
130
|
+
tag_name: ${{ github.ref_name }}
|
|
131
|
+
name: ${{ env.VERSION }}
|
|
132
|
+
body_path: release-notes.md
|
|
133
|
+
files: |
|
|
134
|
+
dist/*.whl
|
|
135
|
+
dist/*.tar.gz
|
|
136
|
+
dist/*.cdx.json
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
name: Test
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [master]
|
|
6
|
+
pull_request:
|
|
7
|
+
branches: [master]
|
|
8
|
+
workflow_call:
|
|
9
|
+
workflow_dispatch:
|
|
10
|
+
|
|
11
|
+
env:
|
|
12
|
+
BUVIS_SKIP_FRONTEND: "1"
|
|
13
|
+
|
|
14
|
+
jobs:
|
|
15
|
+
detect:
|
|
16
|
+
runs-on: ubuntu-latest
|
|
17
|
+
outputs:
|
|
18
|
+
changed_tools: ${{ steps.filter.outputs.changed_tools }}
|
|
19
|
+
run_all: ${{ steps.filter.outputs.run_all }}
|
|
20
|
+
steps:
|
|
21
|
+
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
|
|
22
|
+
with:
|
|
23
|
+
fetch-depth: 0
|
|
24
|
+
|
|
25
|
+
- name: Detect changed paths
|
|
26
|
+
id: filter
|
|
27
|
+
run: |
|
|
28
|
+
ALL_TOOLS=$(find src/tools/ -maxdepth 1 -mindepth 1 -type d -printf '%f\n' | sort | jq -R . | jq -sc .)
|
|
29
|
+
|
|
30
|
+
# workflow_dispatch and workflow_call always run everything
|
|
31
|
+
if [ "${{ github.event_name }}" = "workflow_dispatch" ] || [ "${{ github.event_name }}" = "workflow_call" ]; then
|
|
32
|
+
echo "run_all=true" >> "$GITHUB_OUTPUT"
|
|
33
|
+
echo "changed_tools=${ALL_TOOLS}" >> "$GITHUB_OUTPUT"
|
|
34
|
+
exit 0
|
|
35
|
+
fi
|
|
36
|
+
|
|
37
|
+
# determine diff range
|
|
38
|
+
if [ "${{ github.event_name }}" = "pull_request" ]; then
|
|
39
|
+
BASE="${{ github.event.pull_request.base.sha }}"
|
|
40
|
+
else
|
|
41
|
+
BASE="${{ github.event.before }}"
|
|
42
|
+
fi
|
|
43
|
+
|
|
44
|
+
# guard null SHA on first push to a new branch
|
|
45
|
+
NULL_SHA="0000000000000000000000000000000000000000"
|
|
46
|
+
if [ "${BASE}" = "${NULL_SHA}" ] || [ -z "${BASE}" ]; then
|
|
47
|
+
echo "run_all=true" >> "$GITHUB_OUTPUT"
|
|
48
|
+
echo "changed_tools=${ALL_TOOLS}" >> "$GITHUB_OUTPUT"
|
|
49
|
+
exit 0
|
|
50
|
+
fi
|
|
51
|
+
|
|
52
|
+
CHANGED=$(git diff --name-only "${BASE}..HEAD" --)
|
|
53
|
+
|
|
54
|
+
# check if shared infrastructure changed
|
|
55
|
+
RUN_ALL=false
|
|
56
|
+
if echo "${CHANGED}" | grep -qE '^(src/lib/|src/rust/|tests/lib/|tests/conftest\.py|pyproject\.toml|uv\.lock|hatch_build\.py|Cargo\.(toml|lock)|\.github/workflows/test\.yml)'; then
|
|
57
|
+
RUN_ALL=true
|
|
58
|
+
fi
|
|
59
|
+
|
|
60
|
+
if [ "${RUN_ALL}" = "true" ]; then
|
|
61
|
+
echo "run_all=true" >> "$GITHUB_OUTPUT"
|
|
62
|
+
echo "changed_tools=${ALL_TOOLS}" >> "$GITHUB_OUTPUT"
|
|
63
|
+
exit 0
|
|
64
|
+
fi
|
|
65
|
+
|
|
66
|
+
# extract tool names from changed paths
|
|
67
|
+
TOOLS=$(echo "${CHANGED}" | grep -oE '^(src/tools|tests/tools)/[^/]+' | sed 's|.*/||' | sort -u)
|
|
68
|
+
JSON="[]"
|
|
69
|
+
if [ -n "${TOOLS}" ]; then
|
|
70
|
+
JSON=$(echo "${TOOLS}" | jq -R . | jq -sc .)
|
|
71
|
+
fi
|
|
72
|
+
|
|
73
|
+
echo "run_all=false" >> "$GITHUB_OUTPUT"
|
|
74
|
+
echo "changed_tools=${JSON}" >> "$GITHUB_OUTPUT"
|
|
75
|
+
|
|
76
|
+
lint:
|
|
77
|
+
runs-on: ubuntu-latest
|
|
78
|
+
steps:
|
|
79
|
+
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
|
|
80
|
+
|
|
81
|
+
- uses: dtolnay/rust-toolchain@4cda84d5c5c54efe2404f9d843567869ab1699d4 # stable
|
|
82
|
+
|
|
83
|
+
- uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0
|
|
84
|
+
with:
|
|
85
|
+
enable-cache: true
|
|
86
|
+
|
|
87
|
+
- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
|
|
88
|
+
with:
|
|
89
|
+
python-version: "3.14"
|
|
90
|
+
|
|
91
|
+
- name: Install dependencies
|
|
92
|
+
run: uv sync --all-extras --group test --group dev
|
|
93
|
+
|
|
94
|
+
- name: Audit dependencies
|
|
95
|
+
run: uv run pip-audit --skip-editable --ignore-vuln CVE-2026-4539 # pygments, no fix available yet
|
|
96
|
+
|
|
97
|
+
- name: Lint & format check
|
|
98
|
+
run: |
|
|
99
|
+
uv run ruff check src/ tests/
|
|
100
|
+
uv run ruff format --check src/ tests/
|
|
101
|
+
|
|
102
|
+
- name: Type check
|
|
103
|
+
run: uv run mypy src/lib/ src/tools/
|
|
104
|
+
|
|
105
|
+
lib:
|
|
106
|
+
runs-on: ${{ matrix.os }}
|
|
107
|
+
strategy:
|
|
108
|
+
matrix:
|
|
109
|
+
os: [ubuntu-latest, macos-latest]
|
|
110
|
+
python-version: ["3.11", "3.12", "3.13", "3.14"]
|
|
111
|
+
steps:
|
|
112
|
+
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
|
|
113
|
+
|
|
114
|
+
- uses: dtolnay/rust-toolchain@4cda84d5c5c54efe2404f9d843567869ab1699d4 # stable
|
|
115
|
+
|
|
116
|
+
- uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0
|
|
117
|
+
with:
|
|
118
|
+
enable-cache: true
|
|
119
|
+
|
|
120
|
+
- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
|
|
121
|
+
with:
|
|
122
|
+
python-version: ${{ matrix.python-version }}
|
|
123
|
+
|
|
124
|
+
- name: Install dependencies
|
|
125
|
+
run: uv sync --all-extras --group test --group dev
|
|
126
|
+
|
|
127
|
+
- name: Run library tests
|
|
128
|
+
run: uv run pytest -m lib --cov=src/lib --cov-report=term-missing --cov-fail-under=80
|
|
129
|
+
|
|
130
|
+
tools:
|
|
131
|
+
needs: [detect, lib]
|
|
132
|
+
if: needs.detect.outputs.changed_tools != '[]'
|
|
133
|
+
runs-on: ${{ matrix.os }}
|
|
134
|
+
strategy:
|
|
135
|
+
matrix:
|
|
136
|
+
os: [ubuntu-latest, macos-latest]
|
|
137
|
+
python-version: ["3.11", "3.12", "3.13", "3.14"]
|
|
138
|
+
tool: ${{ fromJson(needs.detect.outputs.changed_tools) }}
|
|
139
|
+
steps:
|
|
140
|
+
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
|
|
141
|
+
|
|
142
|
+
- uses: dtolnay/rust-toolchain@4cda84d5c5c54efe2404f9d843567869ab1699d4 # stable
|
|
143
|
+
|
|
144
|
+
- uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0
|
|
145
|
+
with:
|
|
146
|
+
enable-cache: true
|
|
147
|
+
|
|
148
|
+
- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
|
|
149
|
+
with:
|
|
150
|
+
python-version: ${{ matrix.python-version }}
|
|
151
|
+
|
|
152
|
+
- name: Install dependencies
|
|
153
|
+
run: uv sync --all-extras --group test --group dev
|
|
154
|
+
|
|
155
|
+
- name: Run ${{ matrix.tool }} tests
|
|
156
|
+
env:
|
|
157
|
+
TOOL_MARKER: ${{ matrix.tool }}
|
|
158
|
+
run: uv run pytest -m "$TOOL_MARKER" --cov="src/tools/$TOOL_MARKER" --cov-report=term-missing --cov-fail-under=50
|
|
159
|
+
|
|
160
|
+
# Single status check for branch protection / automerge
|
|
161
|
+
test:
|
|
162
|
+
if: always()
|
|
163
|
+
needs: [lint, lib, tools]
|
|
164
|
+
runs-on: ubuntu-latest
|
|
165
|
+
steps:
|
|
166
|
+
- run: |
|
|
167
|
+
if [ "${{ needs.lint.result }}" != "success" ]; then
|
|
168
|
+
echo "Lint checks failed"
|
|
169
|
+
exit 1
|
|
170
|
+
fi
|
|
171
|
+
if [ "${{ needs.lib.result }}" != "success" ]; then
|
|
172
|
+
echo "Lib tests failed"
|
|
173
|
+
exit 1
|
|
174
|
+
fi
|
|
175
|
+
if [ "${{ needs.tools.result }}" != "success" ] && [ "${{ needs.tools.result }}" != "skipped" ]; then
|
|
176
|
+
echo "Tool tests failed"
|
|
177
|
+
exit 1
|
|
178
|
+
fi
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
name: Update snapshots
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
workflow_dispatch:
|
|
5
|
+
inputs:
|
|
6
|
+
marker:
|
|
7
|
+
description: "pytest marker to regenerate (default: snapshot)"
|
|
8
|
+
required: false
|
|
9
|
+
default: "snapshot"
|
|
10
|
+
|
|
11
|
+
permissions:
|
|
12
|
+
contents: write
|
|
13
|
+
pull-requests: write
|
|
14
|
+
|
|
15
|
+
env:
|
|
16
|
+
BUVIS_SKIP_FRONTEND: "1"
|
|
17
|
+
|
|
18
|
+
jobs:
|
|
19
|
+
update:
|
|
20
|
+
runs-on: ubuntu-latest
|
|
21
|
+
steps:
|
|
22
|
+
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
|
|
23
|
+
with:
|
|
24
|
+
token: ${{ secrets.GITHUB_TOKEN }}
|
|
25
|
+
|
|
26
|
+
- uses: dtolnay/rust-toolchain@4cda84d5c5c54efe2404f9d843567869ab1699d4 # stable
|
|
27
|
+
|
|
28
|
+
- uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0
|
|
29
|
+
with:
|
|
30
|
+
enable-cache: true
|
|
31
|
+
|
|
32
|
+
- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
|
|
33
|
+
with:
|
|
34
|
+
python-version: "3.14"
|
|
35
|
+
|
|
36
|
+
- name: Install dependencies
|
|
37
|
+
run: uv sync --all-extras --group test --group dev
|
|
38
|
+
|
|
39
|
+
- name: Regenerate snapshot baselines
|
|
40
|
+
env:
|
|
41
|
+
BUVIS_SNAPSHOT_CANONICAL: "1"
|
|
42
|
+
run: uv run pytest -m "${{ inputs.marker }}" --snapshot-update
|
|
43
|
+
|
|
44
|
+
- name: Verify snapshots now pass
|
|
45
|
+
env:
|
|
46
|
+
BUVIS_SNAPSHOT_CANONICAL: "1"
|
|
47
|
+
run: uv run pytest -m "${{ inputs.marker }}"
|
|
48
|
+
|
|
49
|
+
- name: Open pull request with updated baselines
|
|
50
|
+
env:
|
|
51
|
+
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
52
|
+
run: |
|
|
53
|
+
if [ -z "$(git status --porcelain tests/)" ]; then
|
|
54
|
+
echo "No snapshot changes to commit."
|
|
55
|
+
exit 0
|
|
56
|
+
fi
|
|
57
|
+
git config user.name "github-actions[bot]"
|
|
58
|
+
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
|
|
59
|
+
BRANCH="update-snapshots/${{ github.run_id }}"
|
|
60
|
+
git checkout -b "$BRANCH"
|
|
61
|
+
git add tests/
|
|
62
|
+
git commit -m "test: regenerate snapshot baselines in canonical env"
|
|
63
|
+
git push origin "$BRANCH"
|
|
64
|
+
gh pr create \
|
|
65
|
+
--title "test: regenerate snapshot baselines" \
|
|
66
|
+
--body "Automated regeneration via update-snapshots workflow on the canonical env (Linux + Python 3.12)." \
|
|
67
|
+
--base master \
|
|
68
|
+
--head "$BRANCH"
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
# Claude / Serena
|
|
2
|
+
.claude
|
|
3
|
+
.local
|
|
4
|
+
.serena
|
|
5
|
+
|
|
6
|
+
# Python bytecode
|
|
7
|
+
__pycache__/
|
|
8
|
+
*.py[cod]
|
|
9
|
+
*$py.class
|
|
10
|
+
|
|
11
|
+
# Distribution / packaging
|
|
12
|
+
*.egg-info/
|
|
13
|
+
*.egg
|
|
14
|
+
.eggs/
|
|
15
|
+
dist/
|
|
16
|
+
build/
|
|
17
|
+
*.whl
|
|
18
|
+
*.so
|
|
19
|
+
sdist/
|
|
20
|
+
wheels/
|
|
21
|
+
*.tar.gz
|
|
22
|
+
|
|
23
|
+
# Virtual environments
|
|
24
|
+
.venv/
|
|
25
|
+
venv/
|
|
26
|
+
ENV/
|
|
27
|
+
|
|
28
|
+
# Environment variables
|
|
29
|
+
.env
|
|
30
|
+
.env.*
|
|
31
|
+
!.env.example
|
|
32
|
+
|
|
33
|
+
# Testing / coverage
|
|
34
|
+
.pytest_cache/
|
|
35
|
+
.coverage
|
|
36
|
+
.coverage.*
|
|
37
|
+
coverage.xml
|
|
38
|
+
htmlcov/
|
|
39
|
+
.tox/
|
|
40
|
+
.nox/
|
|
41
|
+
|
|
42
|
+
# Linting / type checking
|
|
43
|
+
.mypy_cache/
|
|
44
|
+
.ruff_cache/
|
|
45
|
+
.dmypy.json
|
|
46
|
+
|
|
47
|
+
# IDEs / editors
|
|
48
|
+
.idea/
|
|
49
|
+
.vscode/
|
|
50
|
+
*.swp
|
|
51
|
+
*.swo
|
|
52
|
+
*~
|
|
53
|
+
.project
|
|
54
|
+
.settings/
|
|
55
|
+
|
|
56
|
+
# OS files
|
|
57
|
+
.DS_Store
|
|
58
|
+
Thumbs.db
|
|
59
|
+
|
|
60
|
+
# Tool output
|
|
61
|
+
transcoded/
|
|
62
|
+
|
|
63
|
+
# Docs build
|
|
64
|
+
docs/build/
|
|
65
|
+
|
|
66
|
+
# Rust
|
|
67
|
+
src/rust/target/
|
|
68
|
+
src/rust/uv.lock
|
|
69
|
+
|
|
70
|
+
# Frontend
|
|
71
|
+
src/tools/bim/commands/serve/frontend/node_modules/
|
|
72
|
+
src/tools/bim/commands/serve/frontend/build/
|
|
73
|
+
src/tools/bim/commands/serve/frontend/.svelte-kit/
|
|
74
|
+
src/tools/bim/commands/serve/static/
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
repos:
|
|
2
|
+
- repo: https://github.com/astral-sh/ruff-pre-commit
|
|
3
|
+
rev: v0.11.12
|
|
4
|
+
hooks:
|
|
5
|
+
- id: ruff
|
|
6
|
+
pass_filenames: false
|
|
7
|
+
args: [--fix, "src/", "tests/"]
|
|
8
|
+
- id: ruff-format
|
|
9
|
+
pass_filenames: false
|
|
10
|
+
args: ["src/", "tests/"]
|
|
11
|
+
- repo: local
|
|
12
|
+
hooks:
|
|
13
|
+
- id: mypy
|
|
14
|
+
name: mypy
|
|
15
|
+
entry: uv run mypy src/lib/ src/tools/
|
|
16
|
+
language: system
|
|
17
|
+
types: [python]
|
|
18
|
+
pass_filenames: false
|
|
19
|
+
- id: no-framework-in-commands
|
|
20
|
+
name: no framework imports in commands/params
|
|
21
|
+
entry: >
|
|
22
|
+
bash -c 'if rg -q "from buvis\.pybase\.adapters import|import click|import textual|import fastapi"
|
|
23
|
+
src/tools/*/commands/ src/tools/*/params/ --glob "!*/serve/*";
|
|
24
|
+
then echo "ERROR: framework imports in commands/ or params/"; exit 1; fi'
|
|
25
|
+
language: system
|
|
26
|
+
pass_filenames: false
|
|
27
|
+
- id: check-tool-wiring
|
|
28
|
+
name: check tool wiring in pyproject.toml
|
|
29
|
+
entry: python dev/bin/check_tool_wiring.py
|
|
30
|
+
language: system
|
|
31
|
+
pass_filenames: false
|