scitex-dev 0.26.0__tar.gz → 0.27.0__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.
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/.envrc +2 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/.scitex/dev/cli-audit-dict.yaml +11 -0
- {scitex_dev-0.26.0/src/scitex_dev.egg-info → scitex_dev-0.27.0}/PKG-INFO +1 -1
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/submission-gate.md +2 -1
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/__init__.py +6 -0
- scitex_dev-0.27.0/src/scitex_dev/_cli/__init__.py +74 -0
- scitex_dev-0.27.0/src/scitex_dev/_cli/_registry_normalize.py +114 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/_root.py +17 -1
- scitex_dev-0.27.0/src/scitex_dev/_cli/_trace_env.py +137 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_audit.py +5 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_check_local_state.py +5 -5
- scitex_dev-0.27.0/src/scitex_dev/_cli/audit/_project/_check_path_resolver.py +145 -0
- scitex_dev-0.27.0/src/scitex_dev/_cli/audit/_project/_check_registry_layout.py +63 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_extra_rules.py +52 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_categories.py +1 -0
- scitex_dev-0.27.0/src/scitex_dev/_cli/ecosystem/_cmds/_audit_local_state.py +168 -0
- scitex_dev-0.27.0/src/scitex_dev/_cli/ecosystem/_cmds/_audit_registry_layout.py +114 -0
- scitex_dev-0.27.0/src/scitex_dev/_cli/ecosystem/_cmds/_drift_report.py +78 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_registry.py +6 -0
- scitex_dev-0.27.0/src/scitex_dev/_ecosystem/_drift_report/__init__.py +85 -0
- scitex_dev-0.27.0/src/scitex_dev/_ecosystem/_drift_report/_build.py +349 -0
- scitex_dev-0.27.0/src/scitex_dev/_ecosystem/_drift_report/_collect.py +104 -0
- scitex_dev-0.27.0/src/scitex_dev/_ecosystem/_drift_report/_model.py +182 -0
- scitex_dev-0.27.0/src/scitex_dev/_ecosystem/_drift_report/_sac.py +151 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem_jobs/_provider.py +82 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_release/publisher.py +83 -1
- scitex_dev-0.27.0/src/scitex_dev/_skills/general/01_ecosystem/12_local-state-resolution.md +90 -0
- scitex_dev-0.27.0/src/scitex_dev/_skills/general/01_ecosystem/13_runtime-state-db-layout.md +47 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/01_ecosystem/SKILL.md +2 -0
- scitex_dev-0.27.0/src/scitex_dev/_skills/general/05_development/13_version-drift-management.md +223 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/05_development/SKILL.md +2 -0
- scitex_dev-0.27.0/src/scitex_dev/_skills/scientific/03_reporting_02_statistics-completeness.md +103 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scientific/SKILL.md +1 -0
- scitex_dev-0.27.0/src/scitex_dev/_skills/scitex-dev/04_cli-reference.md +178 -0
- scitex_dev-0.27.0/src/scitex_dev/_skills/scitex-dev/23_drift-report.md +64 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scitex-dev/SKILL.md +1 -0
- scitex_dev-0.27.0/src/scitex_dev/_sync/_editable.py +238 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sync/_local.py +5 -129
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/dev_mcp/handlers.py +5 -2
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/gate/_spec.py +4 -3
- scitex_dev-0.27.0/src/scitex_dev/registry_normalize/__init__.py +35 -0
- scitex_dev-0.27.0/src/scitex_dev/registry_normalize/normalize.py +210 -0
- scitex_dev-0.27.0/src/scitex_dev/registry_normalize/scan.py +293 -0
- scitex_dev-0.27.0/src/scitex_dev/trace_env/__init__.py +46 -0
- scitex_dev-0.27.0/src/scitex_dev/trace_env/config.py +172 -0
- scitex_dev-0.27.0/src/scitex_dev/trace_env/report.py +79 -0
- scitex_dev-0.27.0/src/scitex_dev/trace_env/scan.py +213 -0
- scitex_dev-0.27.0/src/scitex_dev/trace_env/trace.py +353 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0/src/scitex_dev.egg-info}/PKG-INFO +1 -1
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev.egg-info/SOURCES.txt +48 -3
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev.egg-info/scm_file_list.json +70 -25
- scitex_dev-0.27.0/src/scitex_dev.egg-info/scm_version.json +8 -0
- scitex_dev-0.27.0/tests/scitex_dev/_cli/audit/_project/test__check_path_resolver.py +251 -0
- scitex_dev-0.27.0/tests/scitex_dev/_cli/audit/_project/test__check_registry_layout.py +250 -0
- scitex_dev-0.27.0/tests/scitex_dev/_cli/ecosystem/_cmds/test__drift_report.py +61 -0
- scitex_dev-0.27.0/tests/scitex_dev/_cli/test___init__.py +91 -0
- scitex_dev-0.27.0/tests/scitex_dev/_cli/test__registry_normalize.py +238 -0
- scitex_dev-0.27.0/tests/scitex_dev/_cli/test__trace_env.py +179 -0
- scitex_dev-0.27.0/tests/scitex_dev/_ecosystem/_drift_report/__init__.py +1 -0
- scitex_dev-0.27.0/tests/scitex_dev/_ecosystem/_drift_report/test__build.py +333 -0
- scitex_dev-0.27.0/tests/scitex_dev/_ecosystem/_drift_report/test__model.py +229 -0
- scitex_dev-0.27.0/tests/scitex_dev/_ecosystem/_drift_report/test__sac.py +205 -0
- scitex_dev-0.27.0/tests/scitex_dev/_ecosystem_jobs/test__provider.py +60 -0
- scitex_dev-0.26.0/tests/scitex_dev/_hooks/test__init.py → scitex_dev-0.27.0/tests/scitex_dev/_hooks/test___init__.py +3 -40
- scitex_dev-0.27.0/tests/scitex_dev/_hooks/test_run_testmon_cli.py +53 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_release/test_publisher.py +143 -1
- scitex_dev-0.27.0/tests/scitex_dev/_sync/test__editable.py +178 -0
- scitex_dev-0.27.0/tests/scitex_dev/registry_normalize/test_normalize.py +221 -0
- scitex_dev-0.27.0/tests/scitex_dev/registry_normalize/test_scan.py +119 -0
- {scitex_dev-0.26.0/tests/scitex_dev/runtime → scitex_dev-0.27.0/tests/scitex_dev/rename}/__init__.py +0 -0
- {scitex_dev-0.26.0/tests/scitex_dev/testing → scitex_dev-0.27.0/tests/scitex_dev/runtime}/__init__.py +0 -0
- scitex_dev-0.27.0/tests/scitex_dev/testing/__init__.py +0 -0
- scitex_dev-0.27.0/tests/scitex_dev/trace_env/__init__.py +0 -0
- scitex_dev-0.27.0/tests/scitex_dev/trace_env/test_config.py +131 -0
- scitex_dev-0.27.0/tests/scitex_dev/trace_env/test_scan.py +297 -0
- scitex_dev-0.27.0/tests/scitex_dev/trace_env/test_trace.py +309 -0
- scitex_dev-0.26.0/src/scitex_dev/_cli/__init__.py +0 -42
- scitex_dev-0.26.0/src/scitex_dev/_skills/scitex-dev/04_cli-reference.md +0 -68
- scitex_dev-0.26.0/src/scitex_dev.egg-info/scm_version.json +0 -8
- scitex_dev-0.26.0/tests/scitex_dev/_ecosystem_jobs/test__provider.py +0 -30
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/.env.example +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/.gitattributes +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/.github/ci/build-in-sif.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/.github/ci/exec-in-sif.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/.github/ci/publish-in-sif.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/.github/ci/run-in-sif.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/.github/workflows/auto-merge-to-develop.yaml +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/.github/workflows/cla.yml +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/.github/workflows/import-smoke-on-ubuntu-py3-12.yml +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/.github/workflows/newb-docs-quality-on-ubuntu-latest.yml +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/.github/workflows/pypi-publish-and-github-release-on-tag.yml +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/.github/workflows/pytest-matrix-on-ubuntu-py3-11-3-12-3-13.yml +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/.github/workflows/rtd-sphinx-build-on-ubuntu-latest.yml +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/.github/workflows/scitex-dev-quality-audit-on-ubuntu-latest.yml +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/.gitignore +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/.readthedocs.yaml +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/.scitex/clew/db.sqlite +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/.scitex/dev/config.yaml +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/CHANGELOG.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/CLA.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/CONTRIBUTING.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/LICENSE +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/README.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/codecov.yml +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/MASTER/00_SCITEX_UPSTREAM_AND_DOWNSTREAM_RULES.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/MASTER/skills/01-package-architecture.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/MASTER/skills/02-io-cascade.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/MASTER/skills/03-testing-scope.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/MASTER/skills/04-shared-ui.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/MASTER/skills/SKILL.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/adr/0001-absorb-scitex-security-into-scitex-audit.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/adr/0002-reverse-absorption-direction-scitex-audit-into-scitex-security.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/audits/plugin-audit-2026-06-15.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/audits/pypi-publish-investigation-2026-06-14.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/ci-runner-ensure.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/handoffs/2026-06-08-ci-runner-phase6.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/scitex-icon-navy-inverted.png +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/scitex-logo-blue-cropped.png +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/sphinx/_static/.gitkeep +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/sphinx/api.rst +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/sphinx/cli.rst +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/sphinx/conf.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/sphinx/index.rst +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/sphinx/quickstart.rst +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/sphinx/requirements.txt +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/sphinx/search.rst +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/bin/cld_usage_web.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/bin/elisp/check_parens.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/bin/elisp/elisp-ci/README.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/bin/elisp/elisp-ci/elisp-ci +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/bin/elisp/elisp-ci/elisp-ci-simple +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/bin/elisp/find_incorrect_require_provide_statements.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/bin/elisp/run_tests_elisp.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/bin/elisp/run_tests_elisp_v02.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/bin/elisp/sync_elisp_tdd.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/bin/general/claude_emacs_server.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/bin/general/create_github_release.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/bin/general/find_errors.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/bin/general/render_mermaid.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/bin/general/safe_rm.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/bin/general/view_repo.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/bin/general/wsl2-buzzer.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/bin/python/black_all.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/bin/python/run_tests_python_pip_package.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/bin/safe_rm.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/bin/slurm/README.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/bin/slurm/login.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/bin/slurm/request.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/bin/slurm/run.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/README.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/example-elisp-project-emacs-hello-world/ELISP-TEST-REPORT-20250513-012234-48-PASSED-49-TOTAL-97-PERCENT.org +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/example-elisp-project-emacs-hello-world/LATEST-ELISP-REPORT.org +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/example-elisp-project-emacs-hello-world/README.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/example-elisp-project-emacs-hello-world/run_tests.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/example-elisp-project-emacs-hello-world/tests/test-ehw-core/ELISP-TEST-REPORT-20250512-235622-0-SUCCESS-4-TOTAL-0-PERCENT.org +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/example-elisp-project-emacs-hello-world/tests/test-ehw-friends/ELISP-TEST-REPORT-20250512-235622-0-SUCCESS-34-TOTAL-0-PERCENT.org +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/example-elisp-project-emacs-hello-world/tests/test-ehw-prep/ELISP-TEST-REPORT-20250512-235622-0-SUCCESS-5-TOTAL-0-PERCENT.org +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/example-elisp-project-emacs-hello-world/tests/test-ehw-utils/ELISP-TEST-REPORT-20250512-235622-0-SUCCESS-4-TOTAL-0-PERCENT.org +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/example-python-project-scitex/.gitignore +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/example-python-project-scitex/README.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/example-python-project-scitex/config/MNIST.yaml +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/example-python-project-scitex/data/.gitkeep +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/example-python-project-scitex/scripts/mnist/clf_svm.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/example-python-project-scitex/scripts/mnist/download.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/example-python-project-scitex/scripts/mnist/main.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/example-python-project-scitex/scripts/mnist/plot_conf_mat.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/example-python-project-scitex/scripts/mnist/plot_digits.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/example-python-project-scitex/scripts/mnist/plot_umap_space.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/.github/workflows/notification.yml +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/.github/workflows/validation.yml +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/.gitignore +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/.pre-commit-config.yaml +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/LICENSE +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/Makefile +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/README.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/config/mcp_config.json +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/examples/cli_workflows.ipynb +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/examples/getting_started.ipynb +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/mgmt/00_PROJECT_DESCRIPTION.org +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/mgmt/01_ARCHITECTURE.org +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/mgmt/99_BULLETIN_BOARD.org +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/mgmt/AGENTS/ArchitectAgent.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/mgmt/AGENTS/BulletinBoardOrganizerAgent.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/mgmt/AGENTS/DebuggerAgent.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/mgmt/AGENTS/GitHandlerAgent.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/mgmt/AGENTS/SourceDeveloperAgent.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/mgmt/AGENTS/TestDeveloperAgent.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/mgmt/AGENTS/TestResultsReportAgent.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/mgmt/AGENTS/TestRunnerAgent.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/mgmt/USER_PHILOSOPHY/00_PROJECT_DESCRIPTION_EXAMPLE.org +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/mgmt/USER_PHILOSOPHY/01_DEVELOPMENT_CYCLE.org +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/mgmt/USER_PHILOSOPHY/02_NAMING_CONVENSIONS.org +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/mgmt/USER_PHILOSOPHY/03_ARCHITECTUAL_AGREEMENT_PROCESS.org +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/mgmt/USER_PHILOSOPHY/03_ARCHITECTURE_EXAMPLE.org +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/mgmt/USER_PHILOSOPHY/04_ARCHITECTURE_PREDEFINED.org +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/mgmt/USER_PHILOSOPHY/05_PRIORITY_CONFIG.org +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/mgmt/USER_PHILOSOPHY/06_MULTIPLE_SPECIAL_AGENTS.org +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/mgmt/USER_PHILOSOPHY/99_BULLETIN_BOARD_EXAMPLE.org +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/pyproject.toml +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/src/pip_project_template/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/src/pip_project_template/__main__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/src/pip_project_template/cli/_GlobalArgumentParser.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/src/pip_project_template/cli/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/src/pip_project_template/cli/calculate.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/src/pip_project_template/cli/info.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/src/pip_project_template/cli/serve01.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/src/pip_project_template/cli/serve02.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/src/pip_project_template/core/_Calculator.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/src/pip_project_template/core/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/src/pip_project_template/mcp_servers/McpServer01.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/src/pip_project_template/mcp_servers/McpServer02.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/src/pip_project_template/types/_DataContainer.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/src/pip_project_template/types/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/src/pip_project_template/utils/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/src/pip_project_template/utils/_add.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/src/pip_project_template/utils/_multiply.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/tests/custom/test_mcp_config.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/tests/custom/test_pip_install.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/tests/custom/test_src_test_agreement.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/tests/custom/test_status.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/tests/github_actions/README.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/tests/github_actions/SETUP.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/tests/github_actions/install_act.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/tests/github_actions/run_ci_act_and_container.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/tests/github_actions/run_ci_container.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/tests/github_actions/run_ci_local.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/tests/github_actions/setup_global_cache.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/tests/pip_project_template/cli/test__GlobalArgumentParser.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/tests/pip_project_template/cli/test___init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/tests/pip_project_template/cli/test_calculate.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/tests/pip_project_template/cli/test_info.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/tests/pip_project_template/cli/test_serve01.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/tests/pip_project_template/cli/test_serve02.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/tests/pip_project_template/core/test__Calculator.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/tests/pip_project_template/core/test_core_init.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/tests/pip_project_template/mcp_servers/test_McpServer01.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/tests/pip_project_template/mcp_servers/test_McpServer02.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/tests/pip_project_template/test___main__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/tests/pip_project_template/test_package_init.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/tests/pip_project_template/types/test__DataContainer.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/tests/pip_project_template/types/test_types_init.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/tests/pip_project_template/utils/test__add.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/tests/pip_project_template/utils/test__multiply.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/tests/pip_project_template/utils/test_utils_init.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/tests/reports/ci_container_report.json +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/tests/reports/setup_symlinks.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/examples/pip-project-template/tests/reports/test_report.json +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/README.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/USER_PHILOSOPHY/01_DEVELOPMENT_CYCLE.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/USER_PHILOSOPHY/02_NAMING_CONVENSIONS.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/USER_PHILOSOPHY/03_ARCHITECTUAL_AGREEMENT_PROCESS.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/USER_PHILOSOPHY/04_ARCHITECTURE_PREDEFINED.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/USER_PHILOSOPHY/05_PRIORITY_CONFIG.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/USER_PHILOSOPHY/06_MULTIPLE_SPECIAL_AGENTS.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/USER_PHILOSOPHY/07_DEBUGGING_TECHNIQUES.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/command/IMPORTANT-rm.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/command/IMPORTANT-tree.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/elisp/IMPORTANT-ELISP-01-basic.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/elisp/IMPORTANT-ELISP-02-project-structure.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/elisp/IMPORTANT-ELISP-03-file-template.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/elisp/IMPORTANT-ELISP-04-coding-style.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/elisp/IMPORTANT-ELISP-05-testing-guide.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/elisp/IMPORTANT-ELISP-99-example-project.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/elisp/ci.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/elisp/testing-with-docker.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/examples/mgmt/ARCHITECTURE_EXAMPLE.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/examples/mgmt/BULLETIN_BOARD_EXAMPLE.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/examples/mgmt/PROJECT_DESCRIPTION_EXAMPLE.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/programming_common/EXAMPLE-README-MODULE-ROOT.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/programming_common/EXAMPLE-README-REPOSITORY-ROOT.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/programming_common/IMPORTANT-art-of-readable-code.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/programming_common/IMPORTANT-art-of-testing.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/programming_common/IMPORTANT-cleanliness.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/programming_common/IMPORTANT-documentation-performance-claims.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/programming_common/IMPORTANT-general.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/programming_common/IMPORTANT-refactoring.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/programming_common/IMPORTANT-regression-prevention.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/programming_common/IMPORTANT-slurm.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/programming_common/IMPORTANT-start-from-small.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/programming_common/IMPORTANT-test-driven-workflow.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/programming_common/IMPORTANT-version-control.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/programming_common/clean-code.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/programming_common/debugging-message.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/programming_common/do-not-repeat-yourself.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/programming_common/emacs-server.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/programming_common/keep-it-simple-stupid.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/programming_common/renaming-and-cleaning-workflow.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/programming_common/screen.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/project/IMPORTANT-CLAUDE_ID.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/project/IMPORTANT-beyond-control.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/project/IMPORTANT-bug-report.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/project/IMPORTANT-cleanliness.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/project/IMPORTANT-communication.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/project/IMPORTANT-do-not-create-any-new-file-nor-directory-in-project-root.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/project/IMPORTANT-documentation.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/project/IMPORTANT-feature-request.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/project/IMPORTANT-general-multi-agent-coordination.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/project/IMPORTANT-multi-agent-protocol.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/project/IMPORTANT-project-management-bulletin-board.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/project/IMPORTANT-project-management-markdown.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/project/IMPORTANT-project-management-org.org +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/project/IMPORTANT-tools.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/project/IMPORTANT-understand-message-in-filename.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/project/general.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/project/report.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/project/timeline-gantt-chart.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/python/CHECKLIST.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/python/HOW-TO-DEBUG-with-MULTIPLE_AGENTS.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/python/Machine-Learning.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/python/NOT-FULL-PYTEST-BUT-PARTIAL-PYTEST.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/python/django.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/python/env.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/python/general.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/python/official/cipdb-README.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/python/official/fastmcp-README.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/python/official/fastmcp-TESTING.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/python/official/icecream-README.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/python/official/priority_config-README.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/python/scitex/01-basic.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/python/scitex/02-file-template.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/python/scitex/03-configuration.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/python/scitex/04-coding-style.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/python/scitex/05-testing-guide.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/python/scitex/06-examples-guide.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/python/scitex/11-gen-module.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/python/scitex/11-session-module.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/python/scitex/12-io-module.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/python/scitex/13-plt-module.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/python/scitex/14-dsp-module.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/python/scitex/15-pd-module.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/python/scitex/16-stats-module.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/python/scitex/17-other-modules.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/python/scitex/17-str-module.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/python/scitex/18-directory-structure-for-scientific-work.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/python/scitex/19-directory-structure-for-pip-package.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/python/scitex/99-example-project.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/python/zen_of_python.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/science/IMPORTANT-general.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/science/IMPORTANT-scientific-attitude.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/science/scientific-writing-abstract.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/science/scientific-writing-discussion.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/science/scientific-writing-general-1.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/science/scientific-writing-general-2.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/science/scientific-writing-introduction.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/science/scientific-writing-methods.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/guidelines/shell/IMPORTANT-general.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/hooks/.gitignore +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/hooks/HOOK_SWITCH_README.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/hooks/README.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/hooks/hook_switch_helper.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/hooks/notification/notify_email.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/hooks/notification/notify_voice.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/hooks/post-tool-use/auto_compact.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/hooks/post-tool-use/ensure_executable.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/hooks/post-tool-use/format_code.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/hooks/post-tool-use/format_code_prettier.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/hooks/post-tool-use/run_lint.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/hooks/post-tool-use/run_tests.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/hooks/pre-tool-use/deny_direct_scitex_skills_update.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/hooks/pre-tool-use/deny_inline_script_in_html.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/hooks/pre-tool-use/deny_inline_style_in_html.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/hooks/pre-tool-use/enforce_delegation.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/hooks/pre-tool-use/enforce_force_flag.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/hooks/pre-tool-use/enforce_git_dash_C.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/hooks/pre-tool-use/enforce_pytest_fullpath.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/hooks/pre-tool-use/inhibit_project_root_pollution.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/hooks/pre-tool-use/limit_line_numbers.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/hooks/pre-tool-use/log_pre_tool_use.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/hooks/pre-tool-use/pipe-stage-permissions.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/hooks/pre-tool-use/warn_orchestrator_delegation.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/hooks/project-switch/hook_switch_helper.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/hooks/project-switch/project-root-pollution-criteria-example.yaml +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/hooks/project-switch/switch-example.yaml +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/hooks/session-start/hello_world.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/hooks/settings.json.example +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/hooks/stop/ON_STOP.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/hooks/stop/check_local_rules.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/SKILL.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/playwright-cli/.playwright-cli/page-2026-03-18T00-06-06-843Z.yml +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/playwright-cli/.playwright-cli/page-2026-03-18T00-11-50-735Z.yml +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/playwright-cli/SKILL.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/playwright-cli/references/request-mocking.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/playwright-cli/references/running-code.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/playwright-cli/references/session-management.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/playwright-cli/references/storage-state.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/playwright-cli/references/test-generation.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/playwright-cli/references/tracing.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/playwright-cli/references/video-recording.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/LICENSE.txt +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/SKILL.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/editing.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/pptxgenjs.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/add_slide.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/clean.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/helpers/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/helpers/merge_runs.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/helpers/simplify_redlines.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/pack.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/mce/mc.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/microsoft/wml-2010.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/microsoft/wml-2012.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/microsoft/wml-2018.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/soffice.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/unpack.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/validate.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/validators/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/validators/base.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/validators/docx.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/validators/pptx.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/office/validators/redlining.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/pptx/scripts/thumbnail.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/skill-creator/LICENSE.txt +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/skill-creator/SKILL.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/skill-creator/agents/analyzer.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/skill-creator/agents/comparator.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/skill-creator/agents/grader.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/skill-creator/assets/eval_review.html +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/skill-creator/eval-viewer/generate_review.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/skill-creator/eval-viewer/viewer.html +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/skill-creator/references/schemas.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/skill-creator/scripts/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/skill-creator/scripts/aggregate_benchmark.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/skill-creator/scripts/generate_report.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/skill-creator/scripts/improve_description.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/skill-creator/scripts/package_skill.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/skill-creator/scripts/quick_validate.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/skill-creator/scripts/run_eval.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/skill-creator/scripts/run_loop.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/skill-creator/scripts/utils.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/LICENSE.txt +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/SKILL.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/helpers/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/helpers/merge_runs.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/helpers/simplify_redlines.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/pack.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/mce/mc.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/microsoft/wml-2010.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/microsoft/wml-2012.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/microsoft/wml-2018.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/soffice.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/unpack.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/validate.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/validators/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/validators/base.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/validators/docx.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/validators/pptx.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/office/validators/redlining.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/docs/to_claude/skills/xlsx/scripts/recalc.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/examples/00_run_all.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/examples/01_unified_search.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/examples/01_unified_search_out/FINISHED_ERROR/2026Y-05M-01D-10h29m24s_P0Pq-main/CONFIGS/CONFIG.pkl +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/examples/01_unified_search_out/FINISHED_ERROR/2026Y-05M-01D-10h29m24s_P0Pq-main/CONFIGS/CONFIG.yaml +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/examples/01_unified_search_out/FINISHED_ERROR/2026Y-05M-01D-10h30m20s_C1l4-main/CONFIGS/CONFIG.pkl +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/examples/01_unified_search_out/FINISHED_ERROR/2026Y-05M-01D-10h30m20s_C1l4-main/CONFIGS/CONFIG.yaml +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/examples/01_unified_search_out/FINISHED_SUCCESS/2026Y-05M-08D-14h39m44s_W8kW-main/api_search_results.json +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/examples/01_unified_search_out/FINISHED_SUCCESS/2026Y-05M-08D-14h39m44s_W8kW-main/search_results.json +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/examples/01_unified_search_out/search_results.json +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/examples/02_version_management.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/examples/02_version_management_out/FINISHED_SUCCESS/2026Y-05M-08D-14h40m31s_WywJ-main/mismatches.json +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/examples/02_version_management_out/FINISHED_SUCCESS/2026Y-05M-08D-14h40m31s_WywJ-main/versions.json +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/examples/02_version_management_out/mismatches.json +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/examples/02_version_management_out/versions.json +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/examples/03_docs_aggregation.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/examples/03_docs_aggregation_out/FINISHED_SUCCESS/2026Y-05M-08D-14h41m13s_FBgH-main/docs_overview.json +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/examples/03_docs_aggregation_out/FINISHED_SUCCESS/2026Y-05M-08D-14h41m13s_FBgH-main/search_hits.json +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/examples/03_docs_aggregation_out/docs_overview.json +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/examples/03_docs_aggregation_out/docs_search.json +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/examples/README.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/pyproject.toml +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/scripts/_commit-msg-no-claude-trailer.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/scripts/_dev-scripts/analyze_code_flow.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/scripts/ci-runner-prototype/ci-runner.yaml.example +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/scripts/ci-runner-prototype/ci.yml.template +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/scripts/ci-runner-prototype/ci_lease_renew.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/scripts/ci-runner-prototype/launcher.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/scripts/ci-runner-prototype/ssh_launch.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/scripts/install-commit-hooks.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/scripts/plt-mpl/get_dir_ax.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/scripts/plt-mpl/get_signatures.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/scripts/plt-mpl/get_signatures_details.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/scripts/quality/README.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/scripts/quality/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/scripts/quality/audit_doc_examples.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/scripts/quality/audit_ecosystem.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/scripts/quality/audit_license.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/scripts/quality/audit_line_limits.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/scripts/quality/audit_test_scope.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/scripts/quality/ecosystem_list.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/scripts/quality/fix_license.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/scripts/quality/line_limits_allowlist.txt +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/setup.cfg +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/__main__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_audit_disclaimer.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_branding/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_branding/_audit.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_branding/_helpers.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_branding/registry.yaml +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/_completion.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/_doctor.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/_hooks_cli.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/_integrations.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/_list_apis.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/_mcp_cmds.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/_rename.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/_stats.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/_utils.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_api/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_api/_audit.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_api/_checks/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_api/_checks/_discovery.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_api/_checks/_init_surface.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_api/_checks/_model.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_api/_checks/_no_mocks.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_api/_checks/_playwright.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_api/_checks/_test_quality.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_api/_checks/_umbrella.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_api/test_config_skip.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_cache.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_config/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_config/_loader.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_diff.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_django/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_django/_audit.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_django/_checks.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_emit.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_fd.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_check_adr.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_check_audit_pin.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_check_clew_claims.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_check_console_script_core_deps.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_check_dev_extras_complete.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_check_env_example.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_check_examples.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_check_flat_layout.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_check_hard_dep_overreach.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_check_license.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_check_optional_deps_guarded.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_check_orphan_hint.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_check_path_yaml.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_check_readme_badge_labels.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_check_readme_badge_layout.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_check_readme_badge_position.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_check_readme_badges.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_check_readme_sections.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_check_readme_structure.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_check_research_mirror.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_check_runtime_separation.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_check_secret_env_prefix.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_check_smoke_e2e_layers.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_check_sphinx_html.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_check_umbrella_dep_and_integration.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_check_workflow_presence.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_check_workflows_naming.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_checks.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_constants.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_discovery.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_registry.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_root_whitelist.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_violation.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_skills/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_skills/_audit.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_skills/_audit_v2.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_summary/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_summary/_audit.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_summary/_env_allowlist.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_summary/_mcp_audit.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_summary/_mcp_bridge.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_summary/_mcp_names.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_summary/_mcp_parity.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_summary/_mcp_tool_naming.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_summary/data/mobypos.txt.gz +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_umbrella_pins.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_version_check.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/creds/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/creds/_cmd.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/cron/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/cron/_ci_watch.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/cron/_cmd.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/cron/_cred_distribute.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/cron/_crontab.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/cron/_job_commands.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/cron/_jobs.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/cron/_quota_keepalive.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/cron/_spartan_conn_monitor.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/cron/_task_harvest.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/cron/_worktree_gc.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/cron/install.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/cron/list.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/cron/remove.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/cron/run.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/cron/status.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_audit_brand_cmd.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_bulk.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_cmds/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_cmds/_audit_all.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_cmds/_audit_per_target.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_cmds/_audit_summary.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_cmds/_branch_protection.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_cmds/_ci_template.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_cmds/_clean.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_cmds/_dashboard.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_cmds/_git.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_cmds/_install_gate.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_cmds/_jobs_cron.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_cmds/_jobs_systemd.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_cmds/_list.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_cmds/_prune_merged.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_cmds/_regen_umbrella.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_cmds/_run.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_cmds/_status.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_cmds/_sync.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_cmds/_sync_helpers.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_cmds/_sync_status.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_cmds/_system_deps.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_cmds/_test_remote.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_cmds/_up.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_cmds/_up_supervisor_unit.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_cmds/_up_timer_lowering.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_cmds/_versions.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_dashboard/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_dashboard/_coverage_cache.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_dashboard/_export.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_dashboard/_render.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_dashboard/_state.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/ecosystem/_dashboard/_tui.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/gate/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/gate/_cmd.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/quality/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/quality/_check.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/quality/_frontmatter.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/service/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/service/_cmd.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/skills/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/skills/_manage.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/skills/_self_explain.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/skills/_tags.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_commands/general/check-quality.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_commands/general/fix-quality.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_core/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_core/audit_argparse_adapter.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_core/builder.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_core/cli_utils.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_core/config.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_core/decorators.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_core/decorators_out/deep/data.npy +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_core/decorators_out/lib.npy +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_core/decorators_out/rt.npy +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_core/decorators_out/scriptcase.npy +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_core/decorators_out/sym.npy +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_core/discovery.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_core/dispatch.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_core/dist_info.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_core/errors.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_core/imports.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_core/introspect.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_core/manifest.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_core/side_effects.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_core/types.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_creds/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_creds/_cron.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_creds/_rotate.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_docs/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_docs/docs.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_docs/search.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem/_core.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem/_git_ops.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem/_graph.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem/_mcp/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem/_mcp/_compat.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem/_mcp/_core.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem/_mcp/_utils.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem/_packages.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem/_registry.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem/_release/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem/_release/pyproject_lint.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem/_skills/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem/_skills/_frontmatter.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem/_skills/_scaffold.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem/_skills/skills.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem/_skills/skills_audit_core.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem/_skills/skills_categories.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem/_skills/skills_drift.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem/_skills/skills_pypi.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem/_skills/skills_quality.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem/_skills/skills_quality_pytest.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem/_skills/skills_verify.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem/_umbrella.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem/_umbrella_write.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem/ci_template/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem/ci_template/_apply.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem/ci_template/templates/pr-ci.yml.tmpl +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem/ci_template/templates/release-ci.yml.tmpl +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem/click_helpers.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem_jobs/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_ecosystem_jobs/_deploy_freshness.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_hooks/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_hooks/run_lint.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_hooks/run_testmon.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_hooks/run_testmon_cli.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_mcp/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_mcp/_server.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_release/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_release/check_editable_drift.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_release/ci.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_release/deploy.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_release/fix.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_release/github.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_release/pypi_package_data.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_release/rtd.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_release/rtd_onboard.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_release/version_fixer.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_release/versions.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_reload.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/01_ecosystem/01_upstream-and-downstream.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/01_ecosystem/02_dependency-and-version-pinning.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/01_ecosystem/03_modules-and-standalone-packages.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/01_ecosystem/04_environment-variables.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/01_ecosystem/05_re-export.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/01_ecosystem/06_dot_scitex_directory.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/01_ecosystem/07_license-and-cla.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/01_ecosystem/08_linter-plugins.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/01_ecosystem/09_package-categories.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/01_ecosystem/10_research-project-type.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/01_ecosystem/11_model-serving-vs-consumption.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/02_package/01_project-structure-root.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/02_package/02_project-structure-src.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/02_package/03_project-structure-scripts.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/02_package/04_project-structure-makefile.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/02_package/05_project-structure-examples.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/02_package/06_project-structure-tests.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/02_package/07_github-actions.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/02_package/07b_workflow-presence.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/02_package/08_quality.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/02_package/09_browser-automation-debugging.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/02_package/10_dev-venv-isolation.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/02_package/11_ci-and-codecov.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/02_package/12_no-mocks.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/02_package/12_workflows-naming.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/02_package/13_test-quality.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/02_package/14_workflow-secret-env-prefix.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/02_package/15_cron-management.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/02_package/SKILL.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/00_overview.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/01_python-api/01_overview.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/01_python-api/02_naming-and-visibility.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/01_python-api/03_version-strategy.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/01_python-api/04_lazy-imports-and-optional-deps.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/01_python-api/05_docstring-standards.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/01_python-api/06_type-hints.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/01_python-api/07_decorators-post-import.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/01_python-api/08_submodule-exposure.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/01_python-api/09_error-handling.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/01_python-api/10_introspection-commands.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/01_python-api/11_import-conventions.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/01_python-api/12_audit-checklist.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/01_python-api/13_imports-and-shadowing.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/01_python-api/14_numeric-literals.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/01_python-api/SKILL.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/01_python-api/TODO.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/02_cli/01_overview.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/02_cli/02_subcommand-structure-noun-verb.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/02_cli/03_required-introspection-commands.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/02_cli/04_exceptions.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/02_cli/05_pass-through.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/02_cli/05a_umbrella-passthrough.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/02_cli/06_noun-verb-catalog.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/02_cli/07_audit-cli.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/02_cli/08_universal-flags.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/02_cli/09_exit-codes.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/02_cli/10_help-format.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/02_cli/11_deprecation.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/02_cli/12_config-and-env.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/02_cli/13_mcp-parity.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/02_cli/14_stdout-stderr.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/02_cli/15_audit-checklist.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/02_cli/16_example.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/02_cli/17_option-positional-ordering.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/02_cli/DRIFT_REPORT.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/02_cli/SKILL.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/02_cli/TODO.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/03_mcp/01_overview.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/03_mcp/02_server-registration.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/03_mcp/03_tool-naming.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/03_mcp/04_required-subcommands.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/03_mcp/05_list-tools-ladder.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/03_mcp/06_skills-integration.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/03_mcp/07_python-api-parity.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/03_mcp/08_audit-mcp-tools.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/03_mcp/09_lessons-and-pitfalls.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/03_mcp/10_audit-checklist.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/03_mcp/MCP_DRIFT_REPORT.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/03_mcp/SKILL.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/03_mcp/TODO.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/04_skills/01_overview.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/04_skills/02_directory-layout.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/04_skills/03_skill-md-as-index.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/04_skills/04_numbered-prefix-convention.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/04_skills/05_frontmatter-metadata.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/04_skills/06_public-vs-private.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/04_skills/07_registration.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/04_skills/08_editable-installation.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/04_skills/09_export-commands.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/04_skills/10_how-to-update.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/04_skills/11_troubleshooting.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/04_skills/12_quality-checklist.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/04_skills/13_standard-template.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/04_skills/14_general-skills-inheritance.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/04_skills/SKILL.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/04_skills/TODO.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/05_http-api/01_overview.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/05_http-api/02_framework-choice.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/05_http-api/03_endpoint-conventions.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/05_http-api/04_error-envelope.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/05_http-api/05_health-and-ops.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/05_http-api/06_auth.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/05_http-api/07_cli-integration.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/05_http-api/08_a2a-pattern.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/05_http-api/09_audit-checklist.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/05_http-api/SKILL.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/05_http-api/TODO.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/03_interface/SKILL.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/04_docs/01_readme.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/04_docs/01_readme_template.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/04_docs/02_sphinx.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/04_docs/03_env-vars-and-state.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/04_docs/03_rtd.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/04_docs/04_robust-ci.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/04_docs/05_adr.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/04_docs/SKILL.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/05_development/01_version-control.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/05_development/02_periodic-audits.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/05_development/03_release-automation.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/05_development/04_skills-self-explain.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/05_development/05_doc-surfaces.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/05_development/06_subprocess-coverage.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/05_development/07_demo-smoke-tests.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/05_development/08_coverage-push-playbook.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/05_development/09_ecosystem-tq-migration.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/05_development/10_package-maintenance-prompt.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/05_development/11_dependency-tiers.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/05_development/12_ci-feedback-decoupled-pollers.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/09_quality/00_crash-early-crash-loud.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/09_quality/01_failure-playbook.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/09_quality/02_checklist.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/09_quality/SKILL.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/40_playground.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/general/SKILL.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scientific/00_planning_01_hypotheses-agreement.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scientific/00_planning_02_paper-structure.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scientific/01_figures_01_standards.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scientific/01_figures_02_provenance-and-verification.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scientific/01_figures_03_no-synthetic-data-policy.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scientific/02_research-project_01_project-structure-root.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scientific/02_research-project_02_project-structure-scripts.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scientific/02_research-project_03_project-structure-config-and-data.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scientific/02_research-project_04_project-structure-makefile.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scientific/02_research-project_05_project-structure-examples.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scientific/02_research-project_06_project-structure-tests.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scientific/02_research-project_07_config-and-parameters.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scientific/02_research-project_08_cohort-datasets.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scientific/02_research-project_09_id-readability-and-data-immutability.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scientific/02_research-project_10_naming-and-numbering.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scientific/03_reporting_01_pdf-reports.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scientific/04_clew_01_dag-as-map-and-evidence.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scientific/04_clew_02_translation-playbook.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scientific/04_clew_03_translation-template.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scientific/04_clew_04_translation-notebook-delta.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scientific/05_private-skills_01_consumer-project.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scientific/06_scitexification/00_playbook.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scientific/06_scitexification/01_io-patterns.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scientific/06_scitexification/02_session-config.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scientific/06_scitexification/03_plt-patterns.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scientific/06_scitexification/04_repro-clew.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scientific/06_scitexification/05_naming-and-numbering.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scientific/06_scitexification/SKILL.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scientific/99_lessons-learned.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scitex-dev/01_installation.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scitex-dev/02_quick-start.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scitex-dev/03_python-api.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scitex-dev/10_result-types.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scitex-dev/11_cli-mcp-utils.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scitex-dev/12_config.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scitex-dev/13_versions.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scitex-dev/14_ecosystem.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scitex-dev/15_rename.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scitex-dev/16_docs-search.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scitex-dev/17_test-runner.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scitex-dev/18_full-update.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scitex-dev/19_release-deploy.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scitex-dev/20_env-vars.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scitex-dev/21_dynamic-audit.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scitex-dev/22_figure-prep-pointer.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scitex-dev/30_agentic-test-overview.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scitex-dev/31_agentic-test-skills.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scitex-dev/32_agentic-test-mcp.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scitex-dev/40_distribution.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills/scitex-dev/examples/skill_eval_example.json +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills_quality.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_skills_quality_pytest.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/.buildinfo +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/.nojekyll +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_modules/index.html +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_modules/scitex_dev/_branding/_helpers.html +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_modules/scitex_dev/_cli/_utils.html +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_modules/scitex_dev/_core/dispatch.html +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_modules/scitex_dev/_creds/_rotate.html +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_modules/scitex_dev/_docs/search.html +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_modules/scitex_dev/_ecosystem/_core.html +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_modules/scitex_dev/dashboard/app.html +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_modules/scitex_dev/linter.html +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_modules/scitex_dev/testing/_audit_conformance.html +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_sources/api.rst.txt +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_sources/cli.rst.txt +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_sources/index.rst.txt +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_sources/quickstart.rst.txt +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_sources/search.rst.txt +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/_sphinx_javascript_frameworks_compat.js +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/base-stemmer.js +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/basic.css +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/check-solid.svg +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/clipboard.min.js +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/copy-button.svg +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/copybutton.css +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/copybutton.js +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/copybutton_funcs.js +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/css/badge_only.css +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/css/fonts/Roboto-Slab-Bold.woff +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/css/fonts/Roboto-Slab-Bold.woff2 +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/css/fonts/Roboto-Slab-Regular.woff +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/css/fonts/Roboto-Slab-Regular.woff2 +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/css/fonts/fontawesome-webfont.eot +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/css/fonts/fontawesome-webfont.svg +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/css/fonts/fontawesome-webfont.ttf +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/css/fonts/fontawesome-webfont.woff +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/css/fonts/fontawesome-webfont.woff2 +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/css/fonts/lato-bold-italic.woff +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/css/fonts/lato-bold-italic.woff2 +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/css/fonts/lato-bold.woff +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/css/fonts/lato-bold.woff2 +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/css/fonts/lato-normal-italic.woff +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/css/fonts/lato-normal-italic.woff2 +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/css/fonts/lato-normal.woff +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/css/fonts/lato-normal.woff2 +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/css/theme.css +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/doctools.js +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/documentation_options.js +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/english-stemmer.js +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/file.png +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/fonts/Lato/lato-bold.eot +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/fonts/Lato/lato-bold.ttf +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/fonts/Lato/lato-bold.woff +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/fonts/Lato/lato-bold.woff2 +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/fonts/Lato/lato-bolditalic.eot +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/fonts/Lato/lato-bolditalic.ttf +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/fonts/Lato/lato-bolditalic.woff +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/fonts/Lato/lato-bolditalic.woff2 +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/fonts/Lato/lato-italic.eot +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/fonts/Lato/lato-italic.ttf +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/fonts/Lato/lato-italic.woff +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/fonts/Lato/lato-italic.woff2 +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/fonts/Lato/lato-regular.eot +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/fonts/Lato/lato-regular.ttf +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/fonts/Lato/lato-regular.woff +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/fonts/Lato/lato-regular.woff2 +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.eot +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.ttf +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff2 +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.eot +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.ttf +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff2 +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/jquery.js +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/js/badge_only.js +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/js/theme.js +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/js/versions.js +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/language_data.js +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/minus.png +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/plus.png +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/pygments.css +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/searchtools.js +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/_static/sphinx_highlight.js +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/api.html +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/cli.html +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/genindex.html +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/index.html +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/objects.inv +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/py-modindex.html +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/quickstart.html +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/search.html +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sphinx_html/searchindex.js +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_supervisor/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_supervisor/_child.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_supervisor/_runtime.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_supervisor/_state.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sync/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sync/_remote.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_sync/_tags.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_system_deps.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/ci/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/ci/runner/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/ci/runner/_down.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/ci/runner/_ensure.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/ci/runner/_fleet.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/ci/runner/_preflight.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/ci/runner/_register.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/ci/runner/_renew.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/ci/runner/_reservation.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/ci/runner/_runner_group.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/ci/runner/_status.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/ci/runner/_up.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/ci/runner/_use.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/ci/runner/config.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/ci/runner/containers/ci-cpu.def +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/ci/runner/launcher.sh +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/ci/runner/templates/ci.yml.template +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/ci/runner/templates/pre-push.hook +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/cli.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/dashboard/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/dashboard/_app.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/dashboard/_routes.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/dashboard/_scripts/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/dashboard/_scripts/_cards.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/dashboard/_scripts/_core.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/dashboard/_scripts/_filters.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/dashboard/_scripts/_render.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/dashboard/_scripts/_utils.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/dashboard/_scripts.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/dashboard/_styles.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/dashboard/_templates.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/dashboard/app.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/dashboard/routes.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/dashboard/scripts/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/dashboard/scripts/cards.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/dashboard/scripts/core.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/dashboard/scripts/filters.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/dashboard/scripts/render.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/dashboard/scripts/utils.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/dashboard/scripts.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/dashboard/static/version-dashboard-favicon.svg +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/dashboard/styles.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/dashboard/templates.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/decorators.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/dev_mcp/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/ecosystem.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/gate/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/gate/_builtin.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/gate/_config.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/gate/_discover.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/gate/_run.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/jobs/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/jobs/_cron_block.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/jobs/_ensure.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/jobs/_respawn.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/jobs/_systemd.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/__main__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_checks/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_checks/_calls.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_checks/_eh.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_checks/_imports.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_checks/_test_quality.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_cmd_api.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_cmd_check.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_cmd_completion.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_cmd_completion_cmds.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_cmd_format.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_cmd_mcp.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_cmd_rules.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_collect.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_dispatch.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_ecosystem_sweep.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_fm_checker.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_format_runner.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_health.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_ipynb.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_mcp/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_mcp/tools/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_mcp/tools/lint.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_md.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_naming_checker.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_new_only.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_packages.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_path_checker.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_plugin_loader.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_project_type.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_rst.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_rule_tables.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_rules/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_rules/_base.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_rules/_cross_pkg_imports.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_rules/_error_handling.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_rules/_hpc_ssh.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_rules/_import_hygiene.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_rules/_lookup.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_rules/_network_timeout.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_rules/_no_mocks.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_rules/_numeric_literals.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_rules/_script_organization.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_rules/_session_figure.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_rules/_session_structure.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_rules/_test_quality.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_rules/_verb_lexicon.txt +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_server.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_severity_promotion.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_skills/scitex-dev-linter/01_installation.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_skills/scitex-dev-linter/02_quick-start.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_skills/scitex-dev-linter/03_python-api.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_skills/scitex-dev-linter/04_cli-reference.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_skills/scitex-dev-linter/06_quick-start.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_skills/scitex-dev-linter/07_rule-catalog.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_skills/scitex-dev-linter/10_cli-reference.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_skills/scitex-dev-linter/11_mcp-tools.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_skills/scitex-dev-linter/20_env-vars.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_skills/scitex-dev-linter/SKILL.md +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_source_helpers.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_style_fixer.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/_sweep_cli.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/checker.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/cli.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/config.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/fixer.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/flake8_plugin.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/formatter.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/rules.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/linter/runner.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/rename/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/rename/config.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/rename/core.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/rename/filters.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/rename/io.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/rename/safety.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/rename/steps.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/runtime/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/runtime/_periodic.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/ssh.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/system_deps.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/test_runner.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/testing/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/testing/_audit_conformance.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev.egg-info/dependency_links.txt +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev.egg-info/entry_points.txt +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev.egg-info/requires.txt +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev.egg-info/top_level.txt +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/conftest.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/develop/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/develop/test_audit.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/examples/test_01_unified_search.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/examples/test_02_version_management.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/examples/test_03_docs_aggregation.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/from_umbrella.tar.gz +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/integration/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/integration/test_cross_package_imports.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_branding/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_branding/test___init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_branding/test__audit.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_branding/test__helpers.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_api/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_api/_checks/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_api/_checks/test__discovery.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_api/_checks/test__init_surface.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_api/_checks/test__model.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_api/_checks/test__no_mocks.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_api/_checks/test__playwright.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_api/_checks/test__test_quality.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_api/_checks/test__umbrella.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_api/test__audit.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_config/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_config/test__loader.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_django/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_django/test__audit.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_project/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_project/test__audit.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_project/test__check_adr.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_project/test__check_clew_claims.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_project/test__check_console_script_core_deps.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_project/test__check_hard_dep_overreach.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_project/test__check_license.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_project/test__check_optional_deps_guarded.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_project/test__check_orphan_hint.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_project/test__check_path_yaml.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_project/test__check_research_mirror.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_project/test__check_runtime_separation.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_project/test__check_secret_env_prefix.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_project/test__check_sphinx_html.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_project/test__check_umbrella_dep_and_integration.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_skills/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_skills/test__audit.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_summary/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_summary/test__audit.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_summary/test__audit_noun_verb_homonym.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_summary/test__env_allowlist.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_summary/test__mcp_audit.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/_summary/test__mcp_parity.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/test__diff.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/test__fd.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/audit/test__umbrella_pins.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/creds/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/creds/test__cmd.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/cron/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/cron/test__ci_watch.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/cron/test__cred_distribute.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/cron/test__crontab.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/cron/test__job_commands.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/cron/test__jobs.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/cron/test__quota_keepalive.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/cron/test__spartan_conn_monitor.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/cron/test__worktree_gc.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/ecosystem/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/ecosystem/_cmds/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/ecosystem/_cmds/test__audit_all.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/ecosystem/_cmds/test__audit_all_path.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/ecosystem/_cmds/test__branch_protection.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/ecosystem/_cmds/test__jobs_cron.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/ecosystem/_cmds/test__jobs_systemd.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/ecosystem/_cmds/test__prune_merged.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/ecosystem/_cmds/test__sync.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/ecosystem/_cmds/test__sync_status.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/ecosystem/_cmds/test__up.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/ecosystem/_cmds/test__up_supervisor_unit.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/ecosystem/_cmds/test__up_timer_lowering.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/ecosystem/_dashboard/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/ecosystem/_dashboard/test__export.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/ecosystem/_dashboard/test__render.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/ecosystem/_dashboard/test__state.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/ecosystem/test__bulk.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/ecosystem/test__categories.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/ecosystem/test__registry.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/gate/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/gate/test__cmd.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/quality/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/quality/test__check.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/quality/test__frontmatter.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/service/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/service/test__cmd.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/skills/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/skills/test__manage.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/skills/test__self_explain.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/test__hooks_cli.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/test__rename.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_cli/test__utils.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_core/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_core/test_decorators.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_core/test_discovery.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_core/test_errors.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_core/test_imports.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_core/test_manifest.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_core/test_side_effects.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_core/test_types.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_creds/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_creds/test__cron.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_creds/test__rotate.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_docs/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_docs/test_docs.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_docs/test_search.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_ecosystem/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_ecosystem/_mcp/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_ecosystem/_mcp/test__utils.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_ecosystem/_release/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_ecosystem/_release/test_pyproject_lint.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_ecosystem/_skills/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_ecosystem/_skills/test_skills.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_ecosystem/_skills/test_skills_quality.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_ecosystem/ci_template/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_ecosystem/ci_template/test__apply.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_ecosystem/test__packages.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_ecosystem_jobs/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_ecosystem_jobs/test__deploy_freshness.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_hooks/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_mcp/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_mcp/test__server.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_release/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_release/test_pypi_package_data.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_release/test_rtd_onboard.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_release/test_version_fixer.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_release/test_versions.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_supervisor/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_supervisor/test__child.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_supervisor/test__runtime.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_supervisor/test__state.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_sync/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/_sync/test__local.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/ci/runner/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/ci/runner/test__ensure.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/ci/runner/test__fleet.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/ci/runner/test__register.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/ci/runner/test__reservation.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/ci/runner/test__status.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/ci/runner/test__up.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/ci/runner/test_config.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/conftest.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/dashboard/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/dashboard/_scripts/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/dashboard/_scripts/test__cards.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/dashboard/_scripts/test__core.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/dashboard/_scripts/test__filters.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/dashboard/_scripts/test__render.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/dashboard/_scripts/test__utils.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/dashboard/scripts/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/dashboard/scripts/test_cards.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/dashboard/scripts/test_core.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/dashboard/scripts/test_filters.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/dashboard/scripts/test_render.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/dashboard/scripts/test_utils.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/dashboard/test__app.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/dashboard/test__routes.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/dashboard/test__scripts.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/dashboard/test_app.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/dashboard/test_routes.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/dashboard/test_scripts.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/dev_mcp/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/dev_mcp/test_handlers.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/gate/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/gate/test__builtin.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/gate/test__config.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/gate/test__discover.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/gate/test__run.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/gate/test__spec.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/jobs/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/jobs/test___init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/jobs/test__cron_block.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/jobs/test__ensure.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/jobs/test__respawn.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/jobs/test__systemd.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/linter/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/linter/_checks/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/linter/_checks/test__imports.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/linter/_mcp/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/linter/_mcp/tools/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/linter/_mcp/tools/test_lint.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/linter/_rules/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/linter/_rules/test___init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/linter/_rules/test__base.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/linter/_rules/test__cross_pkg_imports.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/linter/_rules/test__hpc_ssh.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/linter/_rules/test__import_hygiene.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/linter/_rules/test__network_timeout.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/linter/_rules/test__script_organization.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/linter/_rules/test__session_figure.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/linter/_rules/test__session_structure.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/linter/_rules/test__test_quality.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/linter/conftest.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/linter/test__health.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/linter/test__new_only.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/linter/test__plugin_loader.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/linter/test__project_type.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/linter/test__severity_promotion.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/linter/test__style_fixer.py +0 -0
- /scitex_dev-0.26.0/tests/scitex_dev/linter/test__import_severity_promotion.py → /scitex_dev-0.27.0/tests/scitex_dev/linter/test_config_import_severity_promotion.py +0 -0
- {scitex_dev-0.26.0/tests/scitex_dev/rename → scitex_dev-0.27.0/tests/scitex_dev/registry_normalize}/__init__.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/rename/test_core.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/runtime/test__periodic.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/test__system_deps.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/test_system_deps.py +0 -0
- {scitex_dev-0.26.0 → scitex_dev-0.27.0}/tests/scitex_dev/testing/test__audit_conformance.py +0 -0
|
@@ -29,6 +29,17 @@ transitive_verbs:
|
|
|
29
29
|
# `scitex-dev ci runner use <target>` — flip CI_RUNS_ON for the
|
|
30
30
|
# current repo's GitHub Actions workflow.
|
|
31
31
|
- use
|
|
32
|
+
# `scitex-dev registry-normalize <pkg>` — the operator-and-sac-agreed
|
|
33
|
+
# public command name for the PS-181 registry-layout drift fixer (chosen to
|
|
34
|
+
# sit next to `trace-env-vars`). The compound leaf reads `<noun>-<verb>`
|
|
35
|
+
# (registry / normalize), so §1's leaf-head heuristic classifies the head
|
|
36
|
+
# "registry" as a noun and flags it — but the command IS a transitive
|
|
37
|
+
# action: it normalizes the registry for its required `<pkg>` object.
|
|
38
|
+
# Declare the whole leaf a transitive verb so §1 doesn't misfire, exactly
|
|
39
|
+
# like the `gate` / `unset` / `use` escape hatches above. Renaming a
|
|
40
|
+
# shipped public command to satisfy the heuristic would be worse than this
|
|
41
|
+
# one-line declaration.
|
|
42
|
+
- registry-normalize
|
|
32
43
|
intransitive_verbs:
|
|
33
44
|
# `scitex-dev ecosystem run` — run the collective ecosystem supervisor in
|
|
34
45
|
# the foreground (the systemd ExecStart). "run" is an intransitive verb in
|
|
@@ -18,7 +18,8 @@ provenance and tells the solver exactly what to fix.
|
|
|
18
18
|
package-agnostic: it never imports scitex-clew / scitex-dataset. The
|
|
19
19
|
pre-submission hook depends on **only** scitex-dev.
|
|
20
20
|
- Each **leaf** owns its *rule* and reads its *own* state from the capsule
|
|
21
|
-
workdir (clew → `.scitex/clew
|
|
21
|
+
workdir (clew → `.scitex/clew/**/*.sqlite`, e.g. `db.sqlite` — the leaf
|
|
22
|
+
decides its own file/extension; dataset → the bound submission file).
|
|
22
23
|
- **paper** owns the hooks and the submit command.
|
|
23
24
|
|
|
24
25
|
This mirrors scitex-dev's existing federations (`scitex_dev.jobs`,
|
|
@@ -136,6 +136,12 @@ _LAZY_ATTRS: dict[str, str] = {
|
|
|
136
136
|
"bulk_rename": "rename",
|
|
137
137
|
"execute_rename": "rename",
|
|
138
138
|
"preview_rename": "rename",
|
|
139
|
+
# trace_env
|
|
140
|
+
"TraceEnvResult": "trace_env",
|
|
141
|
+
"format_quiet": "trace_env",
|
|
142
|
+
"format_report": "trace_env",
|
|
143
|
+
"scan_env_vars": "trace_env",
|
|
144
|
+
"trace_env_vars": "trace_env",
|
|
139
145
|
# ssh
|
|
140
146
|
"check_all_hosts": "ssh",
|
|
141
147
|
"get_remote_version": "ssh",
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
# -*- coding: utf-8 -*-
|
|
3
|
+
"""SciTeX-dev CLI package — entry point + reusable subcommand mixins.
|
|
4
|
+
|
|
5
|
+
Module map:
|
|
6
|
+
- `_root` — top-level Click group `main` (the `scitex-dev` console script entry point)
|
|
7
|
+
- `_utils` — `handle_result`, `run_as_cli`, `wrap_as_cli`, json/dry-run option helpers
|
|
8
|
+
- `_completion` — shell tab-completion installer
|
|
9
|
+
- `_doctor` — `scitex-dev doctor`
|
|
10
|
+
- `_stats` — `scitex-dev ecosystem stats`
|
|
11
|
+
- `audit/` — `_summary` (was _cli_audit), `_api`, `_project`, `_skills`
|
|
12
|
+
- `ecosystem/` — `_registry` (was _cli_ecosystem)
|
|
13
|
+
- `quality/` — `_check` (was _cli_quality), `_frontmatter`
|
|
14
|
+
- `skills/` — `_manage` (was _cli_skills), `_tags`
|
|
15
|
+
|
|
16
|
+
The `main` callable is the `[project.scripts]` target — `scitex_dev._cli:main`
|
|
17
|
+
must remain importable.
|
|
18
|
+
"""
|
|
19
|
+
|
|
20
|
+
from __future__ import annotations
|
|
21
|
+
|
|
22
|
+
import sys as _sys
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
def _is_bare_version_invocation(argv: list[str]) -> bool:
|
|
26
|
+
"""True iff ``argv`` is exactly a single ``--version``/``-V`` token.
|
|
27
|
+
|
|
28
|
+
A pure predicate (no ``sys.argv`` access) so it is unit-testable
|
|
29
|
+
without spawning a subprocess. Deliberately narrow — any other
|
|
30
|
+
combination (extra flags, a subcommand, ``--version --json``)
|
|
31
|
+
returns False and falls through to the real Click group unchanged.
|
|
32
|
+
"""
|
|
33
|
+
return argv in (["--version"], ["-V"])
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
# Fast-path a bare `--version`/`-V` invocation BEFORE importing `._root`.
|
|
37
|
+
# `_root`'s module-level code eagerly registers the ENTIRE subcommand
|
|
38
|
+
# tree (ecosystem, linter, gate, ci-runner, docs, skills, …) as a side
|
|
39
|
+
# effect of import — several hundred ms even though a version check
|
|
40
|
+
# needs none of it. `CliRunner.invoke` in tests bypasses `sys.argv`
|
|
41
|
+
# entirely, so this never affects test behavior — only the real
|
|
42
|
+
# console-script invocation (`scitex-dev --version`) sees it.
|
|
43
|
+
if _is_bare_version_invocation(_sys.argv[1:]):
|
|
44
|
+
from importlib.metadata import PackageNotFoundError
|
|
45
|
+
from importlib.metadata import version as _version
|
|
46
|
+
|
|
47
|
+
try:
|
|
48
|
+
_v = _version("scitex-dev")
|
|
49
|
+
except PackageNotFoundError:
|
|
50
|
+
_v = "0.0.0-unknown"
|
|
51
|
+
print(f"scitex-dev {_v}")
|
|
52
|
+
raise SystemExit(0)
|
|
53
|
+
|
|
54
|
+
from ._root import main
|
|
55
|
+
from ._utils import (
|
|
56
|
+
add_dry_run_argument,
|
|
57
|
+
add_json_argument,
|
|
58
|
+
dry_run_option,
|
|
59
|
+
handle_result,
|
|
60
|
+
json_option,
|
|
61
|
+
run_as_cli,
|
|
62
|
+
wrap_as_cli,
|
|
63
|
+
)
|
|
64
|
+
|
|
65
|
+
__all__ = [
|
|
66
|
+
"add_dry_run_argument",
|
|
67
|
+
"add_json_argument",
|
|
68
|
+
"dry_run_option",
|
|
69
|
+
"handle_result",
|
|
70
|
+
"json_option",
|
|
71
|
+
"main",
|
|
72
|
+
"run_as_cli",
|
|
73
|
+
"wrap_as_cli",
|
|
74
|
+
]
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
# -*- coding: utf-8 -*-
|
|
3
|
+
"""``scitex-dev registry-normalize`` — mechanical fix for PS-181 drift.
|
|
4
|
+
|
|
5
|
+
Mirrors ``_cli/_trace_env.py`` / ``_cli/_rename.py``: a thin
|
|
6
|
+
``register(main)`` entry point that wires the command to the top-level
|
|
7
|
+
click group; all real logic lives in the ``scitex_dev.registry_normalize``
|
|
8
|
+
engine package (shared with the PS-181 audit rule, so detection can never
|
|
9
|
+
drift between the two surfaces).
|
|
10
|
+
|
|
11
|
+
Safety, non-negotiable:
|
|
12
|
+
|
|
13
|
+
- Dry-run by default — pass ``--yes``/``-y`` to actually move files.
|
|
14
|
+
- Archive, never delete.
|
|
15
|
+
- A ``*.pid`` file naming a currently-alive process is SKIPPED, not moved.
|
|
16
|
+
- A ``*.sock`` file is ALWAYS skipped — liveness is not cheaply
|
|
17
|
+
determinable for sockets; remove manually if you've confirmed it's
|
|
18
|
+
stale.
|
|
19
|
+
- Exactly one ``<pkg>`` positional argument — no bulk "normalize
|
|
20
|
+
everything" mode.
|
|
21
|
+
"""
|
|
22
|
+
|
|
23
|
+
from __future__ import annotations
|
|
24
|
+
|
|
25
|
+
import json
|
|
26
|
+
import sys
|
|
27
|
+
|
|
28
|
+
import click
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
def register(main: click.Group) -> None:
|
|
32
|
+
"""Attach the ``registry-normalize`` command to the top-level click group."""
|
|
33
|
+
|
|
34
|
+
@main.command(
|
|
35
|
+
"registry-normalize",
|
|
36
|
+
epilog=(
|
|
37
|
+
"Fixes PS-181 registry-layout drift for a SINGLE "
|
|
38
|
+
"~/.scitex/<pkg>/ state directory.\n"
|
|
39
|
+
"\n"
|
|
40
|
+
"CAVEATS:\n"
|
|
41
|
+
" * dry-run by default — nothing is moved without --yes/-y.\n"
|
|
42
|
+
" * archive, never delete — every move has a destination.\n"
|
|
43
|
+
" * a *.pid file naming a LIVE process is skipped, not moved.\n"
|
|
44
|
+
" * *.sock files are ALWAYS skipped (liveness of a socket is "
|
|
45
|
+
"not cheaply\n"
|
|
46
|
+
" determinable) — remove manually once you've confirmed "
|
|
47
|
+
"it's stale.\n"
|
|
48
|
+
" * config-naming drift, __pycache__/, and venv-naming "
|
|
49
|
+
"drift are reported\n"
|
|
50
|
+
" by `scitex-dev ecosystem audit-registry-layout` but NOT "
|
|
51
|
+
"auto-moved here\n"
|
|
52
|
+
" (renaming a config file or a venv is not a safe "
|
|
53
|
+
"mechanical move).\n"
|
|
54
|
+
"\n"
|
|
55
|
+
"Examples:\n"
|
|
56
|
+
" $ scitex-dev registry-normalize scitex-todo\n"
|
|
57
|
+
" $ scitex-dev registry-normalize scitex-todo --json\n"
|
|
58
|
+
" $ scitex-dev registry-normalize scitex-todo --yes"
|
|
59
|
+
),
|
|
60
|
+
)
|
|
61
|
+
@click.argument("pkg")
|
|
62
|
+
@click.option(
|
|
63
|
+
"--yes",
|
|
64
|
+
"-y",
|
|
65
|
+
"confirm",
|
|
66
|
+
is_flag=True,
|
|
67
|
+
help="Actually move files on disk. Without this flag, dry-run only.",
|
|
68
|
+
)
|
|
69
|
+
@click.option(
|
|
70
|
+
"--scitex-dir",
|
|
71
|
+
"scitex_dir_opt",
|
|
72
|
+
type=click.Path(file_okay=False, dir_okay=True),
|
|
73
|
+
default=None,
|
|
74
|
+
help="Override $SCITEX_DIR (defaults to the resolved user root, ~/.scitex).",
|
|
75
|
+
)
|
|
76
|
+
@click.option("--json", "as_json", is_flag=True, help="Emit JSON output.")
|
|
77
|
+
def _registry_normalize(pkg, confirm, scitex_dir_opt, as_json):
|
|
78
|
+
"""Fix ~/.scitex/<pkg>/ registry-layout drift (dry-run by default).
|
|
79
|
+
|
|
80
|
+
\b
|
|
81
|
+
Example:
|
|
82
|
+
$ scitex-dev registry-normalize scitex-todo
|
|
83
|
+
$ scitex-dev registry-normalize scitex-todo --yes
|
|
84
|
+
$ scitex-dev registry-normalize scitex-todo --json
|
|
85
|
+
"""
|
|
86
|
+
from pathlib import Path
|
|
87
|
+
|
|
88
|
+
from ..registry_normalize import run_registry_normalize
|
|
89
|
+
|
|
90
|
+
if scitex_dir_opt:
|
|
91
|
+
scitex_dir = Path(scitex_dir_opt).expanduser()
|
|
92
|
+
else:
|
|
93
|
+
from scitex_config._ecosystem import local_state
|
|
94
|
+
|
|
95
|
+
scitex_dir = local_state.user_root()
|
|
96
|
+
|
|
97
|
+
report = run_registry_normalize(pkg, confirm=confirm, scitex_dir=scitex_dir)
|
|
98
|
+
|
|
99
|
+
if as_json:
|
|
100
|
+
click.echo(json.dumps(report.to_dict(), indent=2, default=str))
|
|
101
|
+
elif report.error:
|
|
102
|
+
click.echo(f"registry-normalize: {report.error}", err=True)
|
|
103
|
+
else:
|
|
104
|
+
mode = "APPLIED" if confirm else "DRY-RUN"
|
|
105
|
+
click.echo(f"registry-normalize [{mode}] {report.pkg_dir}")
|
|
106
|
+
if not report.moves:
|
|
107
|
+
click.echo(" (no drift found — already conformant)")
|
|
108
|
+
for m in report.moves:
|
|
109
|
+
click.echo(f" {m.detail}")
|
|
110
|
+
|
|
111
|
+
sys.exit(2 if report.error else 0)
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
# EOF
|
|
@@ -15,7 +15,7 @@ CONTEXT_SETTINGS = {"help_option_names": ["-h", "--help"]}
|
|
|
15
15
|
# not listed here falls through to the "Other" section in --help.
|
|
16
16
|
COMMAND_CATEGORIES = [
|
|
17
17
|
("CI", ["ci"]),
|
|
18
|
-
("Development", ["show-config", "rename-symbols"]),
|
|
18
|
+
("Development", ["show-config", "rename-symbols", "trace-env-vars"]),
|
|
19
19
|
("Documentation", ["docs", "search-docs", "skills"]),
|
|
20
20
|
(
|
|
21
21
|
"Ecosystem",
|
|
@@ -351,6 +351,22 @@ from ._rename import register as _register_rename
|
|
|
351
351
|
|
|
352
352
|
_register_rename(main)
|
|
353
353
|
|
|
354
|
+
# trace-env-vars — env-var provenance diagnostic. Thin CLI in
|
|
355
|
+
# _cli/_trace_env.py; engine in scitex_dev/trace_env/ (mirrors the
|
|
356
|
+
# rename-symbols CLI/engine split).
|
|
357
|
+
from ._trace_env import register as _register_trace_env
|
|
358
|
+
|
|
359
|
+
_register_trace_env(main)
|
|
360
|
+
|
|
361
|
+
# registry-normalize — mechanical fix for PS-181 (~/.scitex/<pkg>/
|
|
362
|
+
# registry-layout drift). Thin CLI in _cli/_registry_normalize.py;
|
|
363
|
+
# engine in scitex_dev/registry_normalize/ (mirrors the rename-symbols /
|
|
364
|
+
# trace-env-vars CLI/engine split; shares detection logic with the
|
|
365
|
+
# PS-181 audit rule via registry_normalize/scan.py).
|
|
366
|
+
from ._registry_normalize import register as _register_registry_normalize
|
|
367
|
+
|
|
368
|
+
_register_registry_normalize(main)
|
|
369
|
+
|
|
354
370
|
# -------------------------------------------------------------------
|
|
355
371
|
# Documentation commands
|
|
356
372
|
# -------------------------------------------------------------------
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
# -*- coding: utf-8 -*-
|
|
3
|
+
"""``scitex-dev trace-env-vars`` — env-var provenance CLI surface.
|
|
4
|
+
|
|
5
|
+
Mirrors ``_cli/_rename.py``: a thin ``register(main)`` entry-point that
|
|
6
|
+
wires the command to the top-level click group; all real logic lives in
|
|
7
|
+
the ``scitex_dev.trace_env`` engine package.
|
|
8
|
+
|
|
9
|
+
Two modes:
|
|
10
|
+
|
|
11
|
+
- static scan (default) — every assignment site for the named var(s)
|
|
12
|
+
across shell init files, direnv, tmux global env, and the current
|
|
13
|
+
process environment, with WORD-BOUNDARY matching so ``FOO`` never
|
|
14
|
+
matches ``FOO_BAR``.
|
|
15
|
+
- dynamic trace (``--trace -- CMD ...``) — run CMD under strace and
|
|
16
|
+
report the first exec stage whose child env carries the var.
|
|
17
|
+
|
|
18
|
+
Secret-shaped values (``*_KEY`` / ``*_TOKEN`` / ...) are redacted in all
|
|
19
|
+
output. ``--json`` emits the structured envelope; ``--quiet``/``-q``
|
|
20
|
+
emits a one-line summary (mirrors rename-symbols).
|
|
21
|
+
"""
|
|
22
|
+
|
|
23
|
+
from __future__ import annotations
|
|
24
|
+
|
|
25
|
+
import json
|
|
26
|
+
import sys
|
|
27
|
+
|
|
28
|
+
import click
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
class _PassthroughCommand(click.Command):
|
|
32
|
+
"""Command that records the raw sub-args (incl. ``--``) at parse time.
|
|
33
|
+
|
|
34
|
+
Click strips the first ``--`` before the callback sees it, so a
|
|
35
|
+
``NAMES... --trace -- CMD ARGS`` invocation loses the boundary
|
|
36
|
+
between the traced var names and the passthrough command. Capturing
|
|
37
|
+
the raw args here lets the callback split them deterministically —
|
|
38
|
+
and works identically under a real CLI and under ``CliRunner``
|
|
39
|
+
(which never populates ``sys.argv``).
|
|
40
|
+
"""
|
|
41
|
+
|
|
42
|
+
def parse_args(self, ctx, args): # noqa: D102 (inherited contract)
|
|
43
|
+
ctx.meta["trace_env_raw_args"] = list(args)
|
|
44
|
+
return super().parse_args(ctx, args)
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
def _split_names_command(
|
|
48
|
+
tokens: tuple[str, ...], raw_args: list[str]
|
|
49
|
+
) -> tuple[list[str], list[str]]:
|
|
50
|
+
"""Split combined positionals into (names, command) on the ``--`` marker."""
|
|
51
|
+
if "--" not in raw_args:
|
|
52
|
+
return list(tokens), []
|
|
53
|
+
command = raw_args[raw_args.index("--") + 1 :]
|
|
54
|
+
names = list(tokens[: len(tokens) - len(command)]) if command else list(tokens)
|
|
55
|
+
return names, command
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
def register(main: click.Group) -> None:
|
|
59
|
+
"""Attach the ``trace-env-vars`` command to the top-level click group."""
|
|
60
|
+
|
|
61
|
+
@main.command(
|
|
62
|
+
"trace-env-vars",
|
|
63
|
+
cls=_PassthroughCommand,
|
|
64
|
+
context_settings={
|
|
65
|
+
"ignore_unknown_options": True,
|
|
66
|
+
"allow_extra_args": True,
|
|
67
|
+
},
|
|
68
|
+
)
|
|
69
|
+
@click.argument("names", nargs=-1, type=click.UNPROCESSED, required=True)
|
|
70
|
+
@click.option(
|
|
71
|
+
"--trace",
|
|
72
|
+
"trace_cmd",
|
|
73
|
+
is_flag=True,
|
|
74
|
+
help="Dynamic mode: run a command (after `--`) under strace and "
|
|
75
|
+
"report the first exec stage that injects the var(s).",
|
|
76
|
+
)
|
|
77
|
+
@click.option(
|
|
78
|
+
"--no-etc",
|
|
79
|
+
is_flag=True,
|
|
80
|
+
help="Skip /etc/* system surfaces (scan mode).",
|
|
81
|
+
)
|
|
82
|
+
@click.option(
|
|
83
|
+
"--no-tmux",
|
|
84
|
+
is_flag=True,
|
|
85
|
+
help="Skip the `tmux show-environment -g` probe (scan mode).",
|
|
86
|
+
)
|
|
87
|
+
@click.option("--json", "as_json", is_flag=True, help="Output as structured JSON.")
|
|
88
|
+
@click.option(
|
|
89
|
+
"--quiet",
|
|
90
|
+
"-q",
|
|
91
|
+
is_flag=True,
|
|
92
|
+
help="Emit a one-line summary instead of the full report.",
|
|
93
|
+
)
|
|
94
|
+
@click.pass_context
|
|
95
|
+
def _trace_env_vars(ctx, names, trace_cmd, no_etc, no_tmux, as_json, quiet):
|
|
96
|
+
"""Trace WHERE env var(s) are defined or injected.
|
|
97
|
+
|
|
98
|
+
\b
|
|
99
|
+
Example:
|
|
100
|
+
$ scitex-dev trace-env-vars SCITEX_TODO_AGENT
|
|
101
|
+
$ scitex-dev trace-env-vars FOO BAR --json
|
|
102
|
+
$ scitex-dev trace-env-vars FOO -q
|
|
103
|
+
$ scitex-dev trace-env-vars SCITEX_TODO_AGENT --trace -- \\
|
|
104
|
+
sac agents start scitex-todo --yes
|
|
105
|
+
"""
|
|
106
|
+
from ..trace_env import (
|
|
107
|
+
format_quiet,
|
|
108
|
+
format_report,
|
|
109
|
+
scan_env_vars,
|
|
110
|
+
trace_env_vars,
|
|
111
|
+
)
|
|
112
|
+
|
|
113
|
+
raw_args = ctx.meta.get("trace_env_raw_args", [])
|
|
114
|
+
var_names, command = _split_names_command(names, raw_args)
|
|
115
|
+
|
|
116
|
+
if trace_cmd:
|
|
117
|
+
result = trace_env_vars(
|
|
118
|
+
var_names, command=command, announce=not as_json
|
|
119
|
+
)
|
|
120
|
+
else:
|
|
121
|
+
result = scan_env_vars(
|
|
122
|
+
var_names,
|
|
123
|
+
include_etc=not no_etc,
|
|
124
|
+
include_tmux=not no_tmux,
|
|
125
|
+
)
|
|
126
|
+
|
|
127
|
+
if as_json:
|
|
128
|
+
click.echo(json.dumps(result.to_dict(), indent=2, default=str))
|
|
129
|
+
elif quiet:
|
|
130
|
+
click.echo(format_quiet(result))
|
|
131
|
+
else:
|
|
132
|
+
click.echo(format_report(result))
|
|
133
|
+
|
|
134
|
+
sys.exit(1 if result.error else 0)
|
|
135
|
+
|
|
136
|
+
|
|
137
|
+
# EOF
|
|
@@ -245,6 +245,11 @@ def audit_project(
|
|
|
245
245
|
check_ps145_cross_package_read(repo_root, distribution, Violation, violations)
|
|
246
246
|
check_ps146_pip_install_side_effect(repo_root, Violation, violations)
|
|
247
247
|
check_ps147_eval_form_completion(repo_root, Violation, violations)
|
|
248
|
+
# PS-182: rolled-own local-state path resolver (git-root/project-scope
|
|
249
|
+
# precedence re-implemented instead of using scitex_config...local_state).
|
|
250
|
+
from ._check_path_resolver import check_ps182_rolled_own_path_resolver
|
|
251
|
+
|
|
252
|
+
check_ps182_rolled_own_path_resolver(repo_root, Violation, violations)
|
|
248
253
|
# PS-PATH / PS-CLEW / PS-AGENT — paper-scitex-clew MVP lint set.
|
|
249
254
|
# Artifact-gated (only fire when PATH.yaml / clew.add_claim /
|
|
250
255
|
# scripts/agent/ are present); safe to run on every project type.
|
{scitex_dev-0.26.0 → scitex_dev-0.27.0}/src/scitex_dev/_cli/audit/_project/_check_local_state.py
RENAMED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"""PS-145 / PS-146 / PS-147 — local-state convention checks.
|
|
2
2
|
|
|
3
3
|
Implements the rules from
|
|
4
|
-
`_skills/general/01_ecosystem/
|
|
4
|
+
`_skills/general/01_ecosystem/06_dot_scitex_directory.md`:
|
|
5
5
|
|
|
6
6
|
PS-145 — cross-package state read (§9.5 plugin-port pattern).
|
|
7
7
|
Source must not contain `~/.scitex/<other-pkg>/` literals
|
|
@@ -34,7 +34,7 @@ except ImportError: # pragma: no cover
|
|
|
34
34
|
|
|
35
35
|
# Known short-names for every scitex-* package and external partner.
|
|
36
36
|
# Mirrors the §2 prefix-stripping rule in
|
|
37
|
-
# 01_ecosystem/
|
|
37
|
+
# 01_ecosystem/06_dot_scitex_directory.md. Kept in sync manually with
|
|
38
38
|
# `_ecosystem._core.ECOSYSTEM`. Adding a new package here is a one-liner.
|
|
39
39
|
_KNOWN_SHORTS = frozenset(
|
|
40
40
|
{
|
|
@@ -252,7 +252,7 @@ def check_ps145_cross_package_read(
|
|
|
252
252
|
f"var: {sample}{more}. Use the plugin-port pattern: "
|
|
253
253
|
f"expose `SCITEX_<THIS>_*_DIRS` and let the consumer "
|
|
254
254
|
f"populate it from their own startup. See "
|
|
255
|
-
f"_skills/general/01_ecosystem/
|
|
255
|
+
f"_skills/general/01_ecosystem/06_dot_scitex_directory.md "
|
|
256
256
|
f"§9.5."
|
|
257
257
|
),
|
|
258
258
|
)
|
|
@@ -338,7 +338,7 @@ def check_ps146_pip_install_side_effect(
|
|
|
338
338
|
". `pip install <pkg>` must not create `~/.scitex/<pkg-short>/` — "
|
|
339
339
|
"use lazy `mkdir(parents=True, exist_ok=True)` from PathManager on "
|
|
340
340
|
"first write. See _skills/general/"
|
|
341
|
-
"01_ecosystem/
|
|
341
|
+
"01_ecosystem/06_dot_scitex_directory.md §3.5."
|
|
342
342
|
)
|
|
343
343
|
out.append(violation_cls("PS-146", str(pp), detail))
|
|
344
344
|
|
|
@@ -395,7 +395,7 @@ def check_ps147_eval_form_completion(
|
|
|
395
395
|
f"create an XDG symlink, and write a `[ -f cache ] && "
|
|
396
396
|
f"source cache` line into rc. See _skills/general/"
|
|
397
397
|
f"03_interface/02_cli/03_required-introspection-commands.md "
|
|
398
|
-
f"and 01_ecosystem/
|
|
398
|
+
f"and 01_ecosystem/06_dot_scitex_directory.md §11."
|
|
399
399
|
),
|
|
400
400
|
)
|
|
401
401
|
)
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
"""PS-182 — rolled-own local-state path resolver.
|
|
2
|
+
|
|
3
|
+
Implements the resolution-by-data-nature standard from
|
|
4
|
+
`_skills/general/01_ecosystem/12_local-state-resolution.md`:
|
|
5
|
+
|
|
6
|
+
PS-182 — a package ships its own `src/<pkg>/**/_paths.py` (or
|
|
7
|
+
`paths.py`) that RE-IMPLEMENTS the project-scope / git-root
|
|
8
|
+
precedence walk — a `.git` sentinel walk plus a
|
|
9
|
+
`.scitex/<pkg-short>` project-scope literal — WITHOUT
|
|
10
|
+
importing the canonical
|
|
11
|
+
`scitex_config._ecosystem.local_state` helper.
|
|
12
|
+
|
|
13
|
+
Rolling your own precedence is the CONFIG-vs-DATA footgun:
|
|
14
|
+
`local_state.path()` legitimately lets a project scope shadow
|
|
15
|
+
the user scope for *config*, but a hand-rolled resolver
|
|
16
|
+
applies the same "project wins" rule to *data / state stores*
|
|
17
|
+
too. That is exactly how a week-stale
|
|
18
|
+
`<repo>/.scitex/todo/tasks.yaml` silently shadowed the
|
|
19
|
+
canonical `~/.scitex/todo/tasks.yaml` task store when a
|
|
20
|
+
process ran with its cwd inside the repo (2026-07 incident).
|
|
21
|
+
|
|
22
|
+
Fix: adopt `scitex_config._ecosystem.local_state` and pick the
|
|
23
|
+
resolver by DATA NATURE — `path()` for config,
|
|
24
|
+
`user_path()` for DATA/STATE stores (user-canonical, never
|
|
25
|
+
project-shadowed), `runtime_path()` for ephemera. See the
|
|
26
|
+
standard doc + PS-182 detail string.
|
|
27
|
+
|
|
28
|
+
Deterministic + low-false-positive by design: the finding needs BOTH a
|
|
29
|
+
git-root walk signal AND a `.scitex` project-scope literal in a file
|
|
30
|
+
named `_paths.py` / `paths.py`, and is suppressed when the file already
|
|
31
|
+
imports the canonical helper. A resolver that keys off a plain
|
|
32
|
+
`$SCITEX_<PKG>_DIR` / `$SCITEX_BASE_DIR` env var without a `.git` walk
|
|
33
|
+
(e.g. `scitex-app/paths.py`) is NOT flagged.
|
|
34
|
+
|
|
35
|
+
b2 (a resolver whose chain orders project-scope ABOVE user-scope for a
|
|
36
|
+
`.yaml`/`.db`/`.json` DATA store specifically) is intentionally DEFERRED:
|
|
37
|
+
detecting store-nature + chain-order cleanly enough to stay
|
|
38
|
+
low-false-positive is a separate refinement. PS-182 (b1) already flags
|
|
39
|
+
the root cause — the rolled-own resolver — so b2 buys little today. See
|
|
40
|
+
the standard doc §"Future refinement (b2)".
|
|
41
|
+
"""
|
|
42
|
+
|
|
43
|
+
from __future__ import annotations
|
|
44
|
+
|
|
45
|
+
import re
|
|
46
|
+
from pathlib import Path
|
|
47
|
+
|
|
48
|
+
__all__ = ["check_ps182_rolled_own_path_resolver"]
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
# A git-root walk: a named helper (`find_project_scope` / `_find_git_root`
|
|
52
|
+
# / `_project_root`) OR a bare `.git` sentinel probe `(... / ".git").exists()`
|
|
53
|
+
# / `.is_dir()`. Any one is enough — combined with the `.scitex` literal below
|
|
54
|
+
# it is an unambiguous "I re-implemented project-scope resolution" signal.
|
|
55
|
+
_GIT_WALK_RE = re.compile(
|
|
56
|
+
r"""(?:
|
|
57
|
+
find_project_scope
|
|
58
|
+
| _find_git_root
|
|
59
|
+
| _project_root
|
|
60
|
+
| ["']\.git["']\s*\)\s*\.\s*(?:exists|is_dir)
|
|
61
|
+
)""",
|
|
62
|
+
re.VERBOSE,
|
|
63
|
+
)
|
|
64
|
+
|
|
65
|
+
# A `.scitex` project-scope path literal (the `<repo>/.scitex/<pkg>` join).
|
|
66
|
+
_SCITEX_LITERAL_RE = re.compile(r"""["']\.scitex["']""")
|
|
67
|
+
|
|
68
|
+
# The canonical helper — its presence means the file delegates precedence
|
|
69
|
+
# to `local_state` rather than rolling its own. Match the import/attribute
|
|
70
|
+
# form so a stray mention in a comment is unlikely to exempt a real offender
|
|
71
|
+
# (we require BOTH tokens).
|
|
72
|
+
_CANONICAL_HELPER_RE = re.compile(r"\blocal_state\b")
|
|
73
|
+
_CANONICAL_PKG_RE = re.compile(r"\bscitex_config\b")
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
def _candidate_resolver_files(repo: Path) -> list[Path]:
|
|
77
|
+
"""`src/**/_paths.py` and `src/**/paths.py` (gitignore-naive, cache-skip)."""
|
|
78
|
+
src = repo / "src"
|
|
79
|
+
if not src.is_dir():
|
|
80
|
+
return []
|
|
81
|
+
out: list[Path] = []
|
|
82
|
+
for p in src.rglob("*.py"):
|
|
83
|
+
if "__pycache__" in p.parts:
|
|
84
|
+
continue
|
|
85
|
+
if p.name in ("_paths.py", "paths.py"):
|
|
86
|
+
out.append(p)
|
|
87
|
+
return sorted(out)
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
def _uses_canonical_helper(text: str) -> bool:
|
|
91
|
+
"""True iff the file references `scitex_config` AND `local_state`.
|
|
92
|
+
|
|
93
|
+
Both tokens are required so a package that merely mentions one word in
|
|
94
|
+
an unrelated string does not get a free pass.
|
|
95
|
+
"""
|
|
96
|
+
return bool(_CANONICAL_HELPER_RE.search(text) and _CANONICAL_PKG_RE.search(text))
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
def check_ps182_rolled_own_path_resolver(
|
|
100
|
+
repo: Path,
|
|
101
|
+
violation_cls: type,
|
|
102
|
+
out: list,
|
|
103
|
+
) -> None:
|
|
104
|
+
"""Append one PS-182 violation per rolled-own local-state resolver file.
|
|
105
|
+
|
|
106
|
+
Fires when a `_paths.py` / `paths.py` under `src/`:
|
|
107
|
+
* shows a git-root walk signal (`_GIT_WALK_RE`), AND
|
|
108
|
+
* builds a `.scitex` project-scope path (`_SCITEX_LITERAL_RE`), AND
|
|
109
|
+
* does NOT import the canonical `scitex_config._ecosystem.local_state`
|
|
110
|
+
helper (`_uses_canonical_helper`).
|
|
111
|
+
"""
|
|
112
|
+
for py in _candidate_resolver_files(repo):
|
|
113
|
+
try:
|
|
114
|
+
text = py.read_text(encoding="utf-8", errors="replace")
|
|
115
|
+
except OSError:
|
|
116
|
+
continue
|
|
117
|
+
if _uses_canonical_helper(text):
|
|
118
|
+
continue
|
|
119
|
+
if not _GIT_WALK_RE.search(text):
|
|
120
|
+
continue
|
|
121
|
+
if not _SCITEX_LITERAL_RE.search(text):
|
|
122
|
+
continue
|
|
123
|
+
out.append(
|
|
124
|
+
violation_cls(
|
|
125
|
+
"PS-182",
|
|
126
|
+
str(py),
|
|
127
|
+
(
|
|
128
|
+
"rolls its own local-state precedence (a `.git`-root walk "
|
|
129
|
+
"+ `.scitex/<pkg>` project-scope literal) instead of the "
|
|
130
|
+
"canonical `scitex_config._ecosystem.local_state` helper. "
|
|
131
|
+
"Project-scope shadowing is legitimate for CONFIG but a "
|
|
132
|
+
"footgun for DATA/STATE stores: it silently shadowed the "
|
|
133
|
+
"canonical `~/.scitex/todo/tasks.yaml` with a week-stale "
|
|
134
|
+
"`<repo>/.scitex/todo/tasks.yaml` (2026-07). Adopt "
|
|
135
|
+
"`local_state` and resolve by DATA NATURE — `path()` for "
|
|
136
|
+
"config, `user_path()` for DATA/STATE stores "
|
|
137
|
+
"(user-canonical, never project-shadowed), "
|
|
138
|
+
"`runtime_path()` for ephemera. See _skills/general/"
|
|
139
|
+
"01_ecosystem/12_local-state-resolution.md."
|
|
140
|
+
),
|
|
141
|
+
)
|
|
142
|
+
)
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
# EOF
|