vibego 0.2.20__tar.gz → 0.2.22__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.
Potentially problematic release.
This version of vibego might be problematic. Click here for more details.
- {vibego-0.2.20 → vibego-0.2.22}/PKG-INFO +1 -1
- {vibego-0.2.20 → vibego-0.2.22}/bot.py +37 -8
- {vibego-0.2.20 → vibego-0.2.22}/master.py +51 -12
- {vibego-0.2.20 → vibego-0.2.22}/pyproject.toml +2 -2
- vibego-0.2.22/scripts/publish.sh +126 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/start.sh +34 -5
- {vibego-0.2.20 → vibego-0.2.22}/vibego.egg-info/PKG-INFO +1 -1
- {vibego-0.2.20 → vibego-0.2.22}/vibego.egg-info/SOURCES.txt +1 -0
- {vibego-0.2.20 → vibego-0.2.22}/vibego_cli/__init__.py +1 -1
- {vibego-0.2.20 → vibego-0.2.22}/MANIFEST.in +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/README.md +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/config/projects.json.example +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/logging_setup.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/project_repository.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/__main__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/__pip-runner__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/build_env.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/cache.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/cli/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/cli/autocompletion.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/cli/base_command.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/cli/cmdoptions.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/cli/command_context.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/cli/index_command.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/cli/main.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/cli/main_parser.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/cli/parser.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/cli/progress_bars.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/cli/req_command.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/cli/spinners.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/cli/status_codes.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/commands/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/commands/cache.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/commands/check.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/commands/completion.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/commands/configuration.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/commands/debug.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/commands/download.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/commands/freeze.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/commands/hash.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/commands/help.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/commands/index.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/commands/inspect.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/commands/install.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/commands/list.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/commands/lock.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/commands/search.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/commands/show.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/commands/uninstall.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/commands/wheel.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/configuration.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/distributions/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/distributions/base.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/distributions/installed.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/distributions/sdist.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/distributions/wheel.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/exceptions.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/index/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/index/collector.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/index/package_finder.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/index/sources.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/locations/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/locations/_distutils.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/locations/_sysconfig.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/locations/base.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/main.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/metadata/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/metadata/_json.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/metadata/base.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/metadata/importlib/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/metadata/importlib/_compat.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/metadata/importlib/_dists.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/metadata/importlib/_envs.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/metadata/pkg_resources.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/models/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/models/candidate.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/models/direct_url.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/models/format_control.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/models/index.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/models/installation_report.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/models/link.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/models/pylock.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/models/scheme.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/models/search_scope.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/models/selection_prefs.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/models/target_python.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/models/wheel.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/network/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/network/auth.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/network/cache.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/network/download.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/network/lazy_wheel.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/network/session.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/network/utils.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/network/xmlrpc.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/operations/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/operations/build/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/operations/build/build_tracker.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/operations/build/metadata.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/operations/build/metadata_editable.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/operations/build/metadata_legacy.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/operations/build/wheel.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/operations/build/wheel_editable.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/operations/build/wheel_legacy.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/operations/check.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/operations/freeze.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/operations/install/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/operations/install/editable_legacy.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/operations/install/wheel.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/operations/prepare.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/pyproject.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/req/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/req/constructors.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/req/req_dependency_group.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/req/req_file.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/req/req_install.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/req/req_set.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/req/req_uninstall.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/resolution/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/resolution/base.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/resolution/legacy/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/resolution/legacy/resolver.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/resolution/resolvelib/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/resolution/resolvelib/base.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/resolution/resolvelib/candidates.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/resolution/resolvelib/factory.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/resolution/resolvelib/provider.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/resolution/resolvelib/reporter.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/resolution/resolvelib/requirements.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/resolution/resolvelib/resolver.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/self_outdated_check.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/utils/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/utils/_jaraco_text.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/utils/_log.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/utils/appdirs.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/utils/compat.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/utils/compatibility_tags.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/utils/datetime.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/utils/deprecation.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/utils/direct_url_helpers.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/utils/egg_link.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/utils/entrypoints.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/utils/filesystem.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/utils/filetypes.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/utils/glibc.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/utils/hashes.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/utils/logging.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/utils/misc.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/utils/packaging.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/utils/retry.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/utils/setuptools_build.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/utils/subprocess.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/utils/temp_dir.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/utils/unpacking.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/utils/urls.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/utils/virtualenv.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/utils/wheel.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/vcs/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/vcs/bazaar.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/vcs/git.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/vcs/mercurial.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/vcs/subversion.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/vcs/versioncontrol.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/wheel_builder.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/cachecontrol/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/cachecontrol/_cmd.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/cachecontrol/adapter.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/cachecontrol/cache.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/cachecontrol/caches/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/cachecontrol/caches/file_cache.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/cachecontrol/caches/redis_cache.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/cachecontrol/controller.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/cachecontrol/filewrapper.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/cachecontrol/heuristics.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/cachecontrol/serialize.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/cachecontrol/wrapper.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/certifi/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/certifi/__main__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/certifi/core.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/dependency_groups/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/dependency_groups/__main__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/dependency_groups/_implementation.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/dependency_groups/_lint_dependency_groups.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/dependency_groups/_pip_wrapper.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/dependency_groups/_toml_compat.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/distlib/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/distlib/compat.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/distlib/resources.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/distlib/scripts.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/distlib/util.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/distro/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/distro/__main__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/distro/distro.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/idna/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/idna/codec.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/idna/compat.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/idna/core.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/idna/idnadata.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/idna/intranges.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/idna/package_data.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/idna/uts46data.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/msgpack/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/msgpack/exceptions.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/msgpack/ext.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/msgpack/fallback.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/packaging/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/packaging/_elffile.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/packaging/_manylinux.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/packaging/_musllinux.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/packaging/_parser.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/packaging/_structures.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/packaging/_tokenizer.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/packaging/licenses/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/packaging/licenses/_spdx.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/packaging/markers.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/packaging/metadata.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/packaging/requirements.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/packaging/specifiers.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/packaging/tags.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/packaging/utils.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/packaging/version.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/pkg_resources/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/platformdirs/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/platformdirs/__main__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/platformdirs/android.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/platformdirs/api.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/platformdirs/macos.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/platformdirs/unix.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/platformdirs/version.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/platformdirs/windows.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/pygments/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/pygments/__main__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/pygments/console.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/pygments/filter.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/pygments/filters/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/pygments/formatter.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/pygments/formatters/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/pygments/formatters/_mapping.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/pygments/lexer.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/pygments/lexers/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/pygments/lexers/_mapping.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/pygments/lexers/python.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/pygments/modeline.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/pygments/plugin.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/pygments/regexopt.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/pygments/scanner.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/pygments/sphinxext.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/pygments/style.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/pygments/styles/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/pygments/styles/_mapping.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/pygments/token.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/pygments/unistring.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/pygments/util.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/pyproject_hooks/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/pyproject_hooks/_impl.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/pyproject_hooks/_in_process/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/requests/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/requests/__version__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/requests/_internal_utils.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/requests/adapters.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/requests/api.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/requests/auth.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/requests/certs.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/requests/compat.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/requests/cookies.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/requests/exceptions.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/requests/help.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/requests/hooks.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/requests/models.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/requests/packages.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/requests/sessions.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/requests/status_codes.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/requests/structures.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/requests/utils.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/resolvelib/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/resolvelib/providers.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/resolvelib/reporters.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/resolvelib/resolvers/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/resolvelib/resolvers/abstract.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/resolvelib/resolvers/criterion.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/resolvelib/resolvers/exceptions.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/resolvelib/resolvers/resolution.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/resolvelib/structs.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/__main__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/_cell_widths.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/_emoji_codes.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/_emoji_replace.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/_export_format.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/_extension.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/_fileno.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/_inspect.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/_log_render.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/_loop.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/_null_file.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/_palettes.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/_pick.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/_ratio.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/_spinners.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/_stack.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/_timer.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/_win32_console.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/_windows.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/_windows_renderer.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/_wrap.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/abc.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/align.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/ansi.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/bar.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/box.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/cells.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/color.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/color_triplet.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/columns.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/console.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/constrain.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/containers.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/control.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/default_styles.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/diagnose.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/emoji.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/errors.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/file_proxy.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/filesize.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/highlighter.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/json.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/jupyter.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/layout.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/live.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/live_render.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/logging.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/markup.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/measure.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/padding.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/pager.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/palette.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/panel.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/pretty.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/progress.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/progress_bar.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/prompt.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/protocol.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/region.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/repr.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/rule.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/scope.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/screen.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/segment.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/spinner.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/status.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/style.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/styled.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/syntax.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/table.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/terminal_theme.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/text.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/theme.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/themes.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/traceback.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/rich/tree.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/tomli/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/tomli/_parser.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/tomli/_re.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/tomli/_types.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/tomli_w/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/tomli_w/_writer.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/truststore/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/truststore/_api.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/truststore/_macos.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/truststore/_openssl.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/truststore/_ssl_constants.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/truststore/_windows.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/_collections.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/_version.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/connection.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/connectionpool.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/contrib/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/contrib/_appengine_environ.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/contrib/_securetransport/bindings.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/contrib/_securetransport/low_level.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/contrib/appengine.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/contrib/ntlmpool.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/contrib/pyopenssl.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/contrib/securetransport.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/contrib/socks.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/exceptions.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/fields.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/filepost.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/packages/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/packages/backports/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/packages/backports/makefile.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/packages/backports/weakref_finalize.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/packages/six.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/poolmanager.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/request.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/response.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/util/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/util/connection.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/util/proxy.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/util/queue.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/util/request.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/util/response.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/util/retry.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/util/ssl_.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/util/ssl_match_hostname.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/util/ssltransport.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/util/timeout.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/util/url.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_vendor/urllib3/util/wait.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/bump_version.sh +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/log_writer.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/master_healthcheck.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/models/claudecode.sh +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/models/codex.sh +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/models/common.sh +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/models/gemini.sh +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/requirements.txt +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/run_bot.sh +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/start_tmux_codex.sh +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/stop_all.sh +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/stop_bot.sh +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/scripts/test_deps_check.sh +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/setup.cfg +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/tasks/__init__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/tasks/commands.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/tasks/constants.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/tasks/fsm.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/tasks/models.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/tasks/service.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/tests/test_auto_compact.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/tests/test_chat_menu_buttons.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/tests/test_claudecode_jsonl.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/tests/test_long_poll_mechanism.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/tests/test_master_project_management.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/tests/test_master_restart.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/tests/test_numbered_reply_inputs.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/tests/test_plan_progress.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/tests/test_task_create_flow.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/tests/test_task_description.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/tests/test_task_detail_back.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/tests/test_task_list_entry.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/tests/test_unescape_markdown.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/tests/test_version_display.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/vibego.egg-info/dependency_links.txt +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/vibego.egg-info/entry_points.txt +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/vibego.egg-info/requires.txt +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/vibego.egg-info/top_level.txt +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/vibego_cli/__main__.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/vibego_cli/config.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/vibego_cli/data/worker_requirements.txt +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/vibego_cli/deps.py +0 -0
- {vibego-0.2.20 → vibego-0.2.22}/vibego_cli/main.py +0 -0
|
@@ -435,6 +435,8 @@ def _escape_markdown_v2(text: str) -> str:
|
|
|
435
435
|
LEGACY_DOUBLE_BOLD = re.compile(r"\*\*(.+?)\*\*", re.DOTALL)
|
|
436
436
|
LEGACY_DOUBLE_UNDERLINE = re.compile(r"__(.+?)__", re.DOTALL)
|
|
437
437
|
CODE_SEGMENT_RE = re.compile(r"(```.*?```|`[^`]*`)", re.DOTALL)
|
|
438
|
+
# Markdown 标题模式(# - ####)
|
|
439
|
+
MARKDOWN_HEADING = re.compile(r"^(#{1,4})\s+(.+)$", re.MULTILINE)
|
|
438
440
|
|
|
439
441
|
|
|
440
442
|
def _normalize_legacy_markdown(text: str) -> str:
|
|
@@ -466,6 +468,32 @@ def _normalize_legacy_markdown(text: str) -> str:
|
|
|
466
468
|
return "".join(pieces)
|
|
467
469
|
|
|
468
470
|
|
|
471
|
+
def _normalize_to_telegram_markdown(text: str) -> str:
|
|
472
|
+
"""将标准 Markdown 格式转换为 Telegram MarkdownV2 支持的格式
|
|
473
|
+
|
|
474
|
+
转换规则:
|
|
475
|
+
- **text** → *text* (加粗)
|
|
476
|
+
- __text__ → _text_ (斜体)
|
|
477
|
+
- #### 标题 → *标题* (标题转为加粗)
|
|
478
|
+
"""
|
|
479
|
+
# 先转换加粗和下划线语法
|
|
480
|
+
text = _normalize_legacy_markdown(text)
|
|
481
|
+
|
|
482
|
+
# 转换标题:移除 # 符号,将标题文本转为加粗
|
|
483
|
+
def _replace_heading(match: re.Match[str]) -> str:
|
|
484
|
+
# match.group(1) 是 # 符号
|
|
485
|
+
# match.group(2) 是标题文本
|
|
486
|
+
heading_text = match.group(2)
|
|
487
|
+
# 标题转为加粗文本(如果文本已经是加粗的,避免重复)
|
|
488
|
+
if heading_text.startswith("*") and heading_text.endswith("*"):
|
|
489
|
+
return heading_text # 已经是加粗,保持不变
|
|
490
|
+
return f"*{heading_text}*"
|
|
491
|
+
|
|
492
|
+
text = MARKDOWN_HEADING.sub(_replace_heading, text)
|
|
493
|
+
|
|
494
|
+
return text
|
|
495
|
+
|
|
496
|
+
|
|
469
497
|
# MarkdownV2 转义字符模式(用于检测已转义文本)
|
|
470
498
|
_ESCAPED_MARKDOWN_PATTERN = re.compile(
|
|
471
499
|
r"\\[_*\[\]()~`>#+=|{}.!:-]" # 添加了冒号
|
|
@@ -593,7 +621,10 @@ def _unescape_if_already_escaped(text: str) -> str:
|
|
|
593
621
|
|
|
594
622
|
def _prepare_model_payload(text: str) -> str:
|
|
595
623
|
if _IS_MARKDOWN_V2:
|
|
596
|
-
|
|
624
|
+
# 先转换标准 Markdown 格式为 Telegram 支持的格式
|
|
625
|
+
normalized = _normalize_to_telegram_markdown(text)
|
|
626
|
+
# 再进行 MarkdownV2 转义
|
|
627
|
+
return _escape_markdown_v2(normalized)
|
|
597
628
|
if _IS_MARKDOWN:
|
|
598
629
|
return _normalize_legacy_markdown(text)
|
|
599
630
|
return text
|
|
@@ -663,10 +694,7 @@ async def _send_with_markdown_guard(
|
|
|
663
694
|
sanitized: Optional[str]
|
|
664
695
|
if _IS_MARKDOWN_V2:
|
|
665
696
|
sanitized = _escape_markdown_v2(text)
|
|
666
|
-
|
|
667
|
-
sanitized = sanitized.replace(r"\*\*", "**")
|
|
668
|
-
if "__" in text:
|
|
669
|
-
sanitized = sanitized.replace(r"\_\_", "__")
|
|
697
|
+
# 保留代码块标记不转义(它们本身就是 Markdown 语法)
|
|
670
698
|
if "```" in text:
|
|
671
699
|
sanitized = sanitized.replace(r"\`\`\`", "```")
|
|
672
700
|
if "`" in text:
|
|
@@ -2448,8 +2476,9 @@ def _format_history_line(item: TaskHistoryRecord) -> str:
|
|
|
2448
2476
|
for line in description.splitlines()
|
|
2449
2477
|
if line.strip()
|
|
2450
2478
|
]
|
|
2451
|
-
# Markdown
|
|
2452
|
-
|
|
2479
|
+
# Markdown 列表使用"- "起始,后续详情以缩进列表呈现,便于聊天端渲染。
|
|
2480
|
+
# MarkdownV2 使用单星号 * 表示加粗
|
|
2481
|
+
formatted = [f"- *{summary}* · {timestamp}"]
|
|
2453
2482
|
for detail in detail_lines:
|
|
2454
2483
|
formatted.append(f" - {detail}")
|
|
2455
2484
|
formatted.append("") # 追加空行分隔历史记录
|
|
@@ -3076,7 +3105,7 @@ def _build_truncated_history_entry(item: TaskHistoryRecord) -> str:
|
|
|
3076
3105
|
summary = _format_history_summary(item)
|
|
3077
3106
|
return "\n".join(
|
|
3078
3107
|
[
|
|
3079
|
-
f"-
|
|
3108
|
+
f"- *{summary}* · {timestamp}",
|
|
3080
3109
|
" - ⚠️ 该记录内容较长,仅展示摘要概要。",
|
|
3081
3110
|
]
|
|
3082
3111
|
)
|
|
@@ -65,7 +65,7 @@ STOP_SCRIPT = ROOT_DIR / "scripts/stop_bot.sh"
|
|
|
65
65
|
RESTART_SIGNAL_PATH = Path(
|
|
66
66
|
os.environ.get("MASTER_RESTART_SIGNAL_PATH", ROOT_DIR / "state/restart_signal.json")
|
|
67
67
|
)
|
|
68
|
-
RESTART_SIGNAL_TTL = int(os.environ.get("MASTER_RESTART_SIGNAL_TTL", "
|
|
68
|
+
RESTART_SIGNAL_TTL = int(os.environ.get("MASTER_RESTART_SIGNAL_TTL", "1800")) # 默认 30 分钟
|
|
69
69
|
LOCAL_TZ = ZoneInfo(os.environ.get("MASTER_TIMEZONE", "Asia/Shanghai"))
|
|
70
70
|
JUMP_BUTTON_TEXT_WIDTH = 40
|
|
71
71
|
|
|
@@ -1578,14 +1578,42 @@ def _log_update(message: Message, *, override_user: Optional[User] = None) -> No
|
|
|
1578
1578
|
_update_master_env(chat_id, user_id)
|
|
1579
1579
|
|
|
1580
1580
|
|
|
1581
|
-
def _safe_remove(path: Path) -> None:
|
|
1582
|
-
"""
|
|
1583
|
-
|
|
1584
|
-
|
|
1585
|
-
|
|
1581
|
+
def _safe_remove(path: Path, *, retries: int = 3) -> None:
|
|
1582
|
+
"""安全移除文件,支持重试机制
|
|
1583
|
+
|
|
1584
|
+
Args:
|
|
1585
|
+
path: 要删除的文件路径
|
|
1586
|
+
retries: 最大重试次数(默认 3 次)
|
|
1587
|
+
"""
|
|
1588
|
+
if not path.exists():
|
|
1589
|
+
log.debug("文件不存在,无需删除", extra={"path": str(path)})
|
|
1586
1590
|
return
|
|
1587
|
-
|
|
1588
|
-
|
|
1591
|
+
|
|
1592
|
+
for attempt in range(retries):
|
|
1593
|
+
try:
|
|
1594
|
+
path.unlink()
|
|
1595
|
+
log.info("重启信号文件已删除", extra={"path": str(path), "attempt": attempt + 1})
|
|
1596
|
+
return
|
|
1597
|
+
except FileNotFoundError:
|
|
1598
|
+
log.debug("文件已被其他进程删除", extra={"path": str(path)})
|
|
1599
|
+
return
|
|
1600
|
+
except Exception as exc:
|
|
1601
|
+
if attempt < retries - 1:
|
|
1602
|
+
log.warning(
|
|
1603
|
+
"删除文件失败,将重试 (attempt %d/%d): %s",
|
|
1604
|
+
attempt + 1,
|
|
1605
|
+
retries,
|
|
1606
|
+
exc,
|
|
1607
|
+
extra={"path": str(path)}
|
|
1608
|
+
)
|
|
1609
|
+
import time
|
|
1610
|
+
time.sleep(0.1) # 等待 100ms 后重试
|
|
1611
|
+
else:
|
|
1612
|
+
log.error(
|
|
1613
|
+
"删除文件失败,已达最大重试次数: %s",
|
|
1614
|
+
exc,
|
|
1615
|
+
extra={"path": str(path), "retries": retries}
|
|
1616
|
+
)
|
|
1589
1617
|
|
|
1590
1618
|
|
|
1591
1619
|
def _write_restart_signal(message: Message, *, override_user: Optional[User] = None) -> None:
|
|
@@ -1663,13 +1691,24 @@ async def _notify_restart_success(bot: Bot) -> None:
|
|
|
1663
1691
|
"启动时未检测到重启信号文件,将向管理员发送兜底提醒", extra={"targets": targets}
|
|
1664
1692
|
)
|
|
1665
1693
|
if targets:
|
|
1666
|
-
|
|
1667
|
-
"Master 已重新上线,但未找到重启触发者信息。"
|
|
1668
|
-
"
|
|
1669
|
-
|
|
1694
|
+
text_lines = [
|
|
1695
|
+
"⚠️ Master 已重新上线,但未找到重启触发者信息。",
|
|
1696
|
+
"",
|
|
1697
|
+
"可能原因:",
|
|
1698
|
+
"1. 重启信号文件写入失败",
|
|
1699
|
+
"2. 信号文件已超时被清理(TTL=30分钟)",
|
|
1700
|
+
"3. 文件系统权限问题",
|
|
1701
|
+
"",
|
|
1702
|
+
"建议检查:",
|
|
1703
|
+
f"- 启动日志: {ROOT_DIR}/logs/start.log",
|
|
1704
|
+
f"- 运行日志: {ROOT_DIR}/vibe.log",
|
|
1705
|
+
f"- 信号文件: {RESTART_SIGNAL_PATH}",
|
|
1706
|
+
]
|
|
1707
|
+
text = "\n".join(text_lines)
|
|
1670
1708
|
for chat in targets:
|
|
1671
1709
|
try:
|
|
1672
1710
|
await bot.send_message(chat_id=chat, text=text)
|
|
1711
|
+
log.info("兜底重启通知已发送", extra={"chat": chat})
|
|
1673
1712
|
except Exception as exc:
|
|
1674
1713
|
log.error("发送兜底重启通知失败: %s", exc, extra={"chat": chat})
|
|
1675
1714
|
else:
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "vibego"
|
|
7
|
-
version = "0.2.
|
|
7
|
+
version = "0.2.22"
|
|
8
8
|
description = "vibego CLI:用于初始化与管理 Telegram Master Bot 的工具"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.11"
|
|
@@ -41,7 +41,7 @@ include = ["vibego_cli", "tasks", "scripts"]
|
|
|
41
41
|
"scripts" = ["*.sh", "models/*.sh"]
|
|
42
42
|
|
|
43
43
|
[tool.bumpversion]
|
|
44
|
-
current_version = "0.2.
|
|
44
|
+
current_version = "0.2.22"
|
|
45
45
|
parse = "(?P<major>\\d+)\\.(?P<minor>\\d+)\\.(?P<patch>\\d+)"
|
|
46
46
|
serialize = ["{major}.{minor}.{patch}"]
|
|
47
47
|
search = "{current_version}"
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
# VibeGo 完整发布脚本
|
|
3
|
+
# 使用 keyring 进行 PyPI 认证,无需手动输入 token
|
|
4
|
+
#
|
|
5
|
+
# 前置条件:
|
|
6
|
+
# 1. 已安装 keyring: pip install keyring
|
|
7
|
+
# 2. 已存储 PyPI token 到 keyring:
|
|
8
|
+
# python3.11 -c "import keyring; keyring.set_password('https://upload.pypi.org/legacy/', '__token__', 'your-token')"
|
|
9
|
+
#
|
|
10
|
+
# 使用方式:
|
|
11
|
+
# ./scripts/publish.sh # 发布 patch 版本(默认)
|
|
12
|
+
# ./scripts/publish.sh minor # 发布 minor 版本
|
|
13
|
+
# ./scripts/publish.sh major # 发布 major 版本
|
|
14
|
+
|
|
15
|
+
set -e
|
|
16
|
+
|
|
17
|
+
# 颜色定义
|
|
18
|
+
RED='\033[0;31m'
|
|
19
|
+
GREEN='\033[0;32m'
|
|
20
|
+
YELLOW='\033[1;33m'
|
|
21
|
+
BLUE='\033[0;34m'
|
|
22
|
+
NC='\033[0m' # No Color
|
|
23
|
+
|
|
24
|
+
# 打印带颜色的消息
|
|
25
|
+
print_info() {
|
|
26
|
+
echo -e "${BLUE}ℹ️ $1${NC}"
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
print_success() {
|
|
30
|
+
echo -e "${GREEN}✅ $1${NC}"
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
print_warning() {
|
|
34
|
+
echo -e "${YELLOW}⚠️ $1${NC}"
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
print_error() {
|
|
38
|
+
echo -e "${RED}❌ $1${NC}"
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
# 项目根目录
|
|
42
|
+
PROJECT_ROOT="/Users/david/hypha/tools/vibeBot"
|
|
43
|
+
cd "$PROJECT_ROOT"
|
|
44
|
+
|
|
45
|
+
print_info "开始 VibeGo 发布流程..."
|
|
46
|
+
echo ""
|
|
47
|
+
|
|
48
|
+
# 步骤 1: 检查 keyring 中是否存储了 PyPI token
|
|
49
|
+
print_info "检查 keyring 配置..."
|
|
50
|
+
if ! python3.11 -c "import keyring; token = keyring.get_password('https://upload.pypi.org/legacy/', '__token__'); exit(0 if token else 1)" 2>/dev/null; then
|
|
51
|
+
print_error "未在 keyring 中找到 PyPI token"
|
|
52
|
+
echo ""
|
|
53
|
+
echo "请先执行以下命令存储 token:"
|
|
54
|
+
echo " python3.11 -c \"import keyring; keyring.set_password('https://upload.pypi.org/legacy/', '__token__', 'your-pypi-token')\""
|
|
55
|
+
echo ""
|
|
56
|
+
exit 1
|
|
57
|
+
fi
|
|
58
|
+
print_success "Keyring 配置正确"
|
|
59
|
+
echo ""
|
|
60
|
+
|
|
61
|
+
# 步骤 2: 创建/激活虚拟环境
|
|
62
|
+
print_info "创建构建虚拟环境..."
|
|
63
|
+
python3.11 -m venv ~/.venvs/vibego-build
|
|
64
|
+
source ~/.venvs/vibego-build/bin/activate
|
|
65
|
+
print_success "虚拟环境已激活"
|
|
66
|
+
echo ""
|
|
67
|
+
|
|
68
|
+
# 步骤 3: 升级 pip 和安装构建工具
|
|
69
|
+
print_info "安装构建依赖..."
|
|
70
|
+
pip install --upgrade pip build twine keyring > /dev/null 2>&1
|
|
71
|
+
print_success "构建依赖已安装"
|
|
72
|
+
echo ""
|
|
73
|
+
|
|
74
|
+
# 步骤 4: 清理旧的构建产物
|
|
75
|
+
print_info "清理旧的构建产物..."
|
|
76
|
+
rm -rf "$PROJECT_ROOT/dist"
|
|
77
|
+
print_success "构建产物已清理"
|
|
78
|
+
echo ""
|
|
79
|
+
|
|
80
|
+
# 步骤 5: 递增版本号
|
|
81
|
+
VERSION_TYPE="${1:-patch}" # 默认为 patch
|
|
82
|
+
print_info "递增版本号(类型:$VERSION_TYPE)..."
|
|
83
|
+
./scripts/bump_version.sh "$VERSION_TYPE"
|
|
84
|
+
echo ""
|
|
85
|
+
|
|
86
|
+
# 步骤 6: 构建分发包
|
|
87
|
+
print_info "构建 Python 分发包..."
|
|
88
|
+
python3.11 -m build
|
|
89
|
+
print_success "分发包构建完成"
|
|
90
|
+
echo ""
|
|
91
|
+
|
|
92
|
+
# 步骤 7: 上传到 PyPI(使用 keyring 自动认证)
|
|
93
|
+
print_info "上传到 PyPI(使用 keyring 认证)..."
|
|
94
|
+
twine upload dist/*
|
|
95
|
+
print_success "已成功上传到 PyPI"
|
|
96
|
+
echo ""
|
|
97
|
+
|
|
98
|
+
# 步骤 8: 清理并重装 pipx 中的 vibego
|
|
99
|
+
print_info "更新本地 pipx 安装..."
|
|
100
|
+
rm -rf ~/.cache/pipx
|
|
101
|
+
rm -rf ~/.local/pipx/venvs/vibego
|
|
102
|
+
pipx install --python python3.11 vibego
|
|
103
|
+
pipx upgrade vibego
|
|
104
|
+
print_success "本地 vibego 已更新"
|
|
105
|
+
echo ""
|
|
106
|
+
|
|
107
|
+
# 步骤 9: 重启 vibego 服务
|
|
108
|
+
print_info "重启 vibego 服务..."
|
|
109
|
+
vibego stop || true # 忽略停止失败的错误
|
|
110
|
+
sleep 2
|
|
111
|
+
vibego start
|
|
112
|
+
print_success "vibego 服务已重启"
|
|
113
|
+
echo ""
|
|
114
|
+
|
|
115
|
+
# 完成
|
|
116
|
+
print_success "========================================="
|
|
117
|
+
print_success "🎉 发布流程完成!"
|
|
118
|
+
print_success "========================================="
|
|
119
|
+
echo ""
|
|
120
|
+
print_info "后续步骤:"
|
|
121
|
+
echo " 1. 推送 git 提交和标签:"
|
|
122
|
+
echo " git push && git push --tags"
|
|
123
|
+
echo ""
|
|
124
|
+
echo " 2. 验证 PyPI 页面:"
|
|
125
|
+
echo " https://pypi.org/project/vibego/"
|
|
126
|
+
echo ""
|
|
@@ -223,12 +223,41 @@ else
|
|
|
223
223
|
fi
|
|
224
224
|
|
|
225
225
|
# 后台启动 master,日志落在 vibe.log
|
|
226
|
+
# 显式传递重启标记环境变量(如果存在)
|
|
227
|
+
if [[ -n "${MASTER_RESTART_EXPECTED:-}" ]]; then
|
|
228
|
+
log_info "检测到重启标记环境变量 MASTER_RESTART_EXPECTED=$MASTER_RESTART_EXPECTED"
|
|
229
|
+
export MASTER_RESTART_EXPECTED
|
|
230
|
+
fi
|
|
231
|
+
|
|
232
|
+
log_info "准备启动 master 进程..."
|
|
226
233
|
nohup python master.py >> /dev/null 2>&1 &
|
|
227
|
-
|
|
234
|
+
MASTER_PID=$!
|
|
235
|
+
log_info "master 已后台启动,PID=$MASTER_PID,日志写入 vibe.log"
|
|
228
236
|
|
|
229
237
|
# 健康检查:等待 master 上线并验证关键 worker
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
238
|
+
log_info "开始执行健康检查..."
|
|
239
|
+
HEALTHCHECK_START=$(date +%s)
|
|
240
|
+
|
|
241
|
+
if python scripts/master_healthcheck.py --project hyphavibebotbackend; then
|
|
242
|
+
HEALTHCHECK_END=$(date +%s)
|
|
243
|
+
HEALTHCHECK_DURATION=$((HEALTHCHECK_END - HEALTHCHECK_START))
|
|
244
|
+
log_info "✅ master 健康检查通过,耗时 ${HEALTHCHECK_DURATION}s"
|
|
245
|
+
else
|
|
246
|
+
HEALTHCHECK_END=$(date +%s)
|
|
247
|
+
HEALTHCHECK_DURATION=$((HEALTHCHECK_END - HEALTHCHECK_START))
|
|
248
|
+
log_error "⚠️ master 健康检查失败,耗时 ${HEALTHCHECK_DURATION}s"
|
|
249
|
+
log_error "建议检查:"
|
|
250
|
+
log_error " - 进程状态: ps aux | grep 'python.*master.py'"
|
|
251
|
+
log_error " - 启动日志: tail -100 $ROOT_DIR/logs/start.log"
|
|
252
|
+
log_error " - 运行日志: tail -100 $ROOT_DIR/vibe.log"
|
|
253
|
+
log_error " - 进程 PID: $MASTER_PID"
|
|
254
|
+
|
|
255
|
+
# 检查进程是否仍在运行
|
|
256
|
+
if kill -0 "$MASTER_PID" 2>/dev/null; then
|
|
257
|
+
log_info "master 进程仍在运行(PID=$MASTER_PID),允许继续启动"
|
|
258
|
+
log_info "⚠️ 请手动验证服务是否正常工作"
|
|
259
|
+
else
|
|
260
|
+
log_error "❌ master 进程已退出,启动失败"
|
|
261
|
+
exit 1
|
|
262
|
+
fi
|
|
233
263
|
fi
|
|
234
|
-
log_info "master 健康检查通过"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/__pip-runner__.py
RENAMED
|
File without changes
|
{vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/cache.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/cli/main.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{vibego-0.2.20 → vibego-0.2.22}/scripts/.venv/lib/python3.14/site-packages/pip/_internal/main.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|