agent-wiki-cli 3.0.0__tar.gz → 3.1.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.
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/MANIFEST.in +2 -0
- {agent_wiki_cli-3.0.0/src/agent_wiki_cli.egg-info → agent_wiki_cli-3.1.0}/PKG-INFO +1 -1
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/docs/automation.md +102 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/docs/cli-reference.md +229 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/pyproject.toml +2 -1
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0/src/agent_wiki_cli.egg-info}/PKG-INFO +1 -1
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/agent_wiki_cli.egg-info/SOURCES.txt +25 -1
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/api.py +45 -1
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/api_types.py +2 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/cli.py +26 -3
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/knowledge_storage_cmd.py +2 -1
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/maintenance_cmd.py +10 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/query_cmd.py +2 -1
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/sync_cmd.py +334 -17
- agent_wiki_cli-3.1.0/src/llm_wiki_cli/schemas/llm-wiki-normalization-diagnostic-v1.schema.json +34 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/analysis_contracts.json +6 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/context_budget.py +12 -8
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/context_packet.py +52 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/context_service.py +8 -1
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/contracts.py +2 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/documentation_queries.py +8 -0
- agent_wiki_cli-3.1.0/src/llm_wiki_cli/services/evidence_diagnostics.py +120 -0
- agent_wiki_cli-3.1.0/src/llm_wiki_cli/services/evidence_explanation.py +81 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/extractor_helpers.py +99 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/instruction_ownership.py +46 -21
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/knowledge_evidence.py +220 -287
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/knowledge_freshness.py +10 -1
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/knowledge_orchestration.py +7 -1
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/knowledge_storage_diagnostics.py +134 -36
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/lint_service.py +10 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/maintenance_service.py +16 -2
- agent_wiki_cli-3.1.0/src/llm_wiki_cli/services/normalization_diagnostics.py +101 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/schema.py +90 -18
- agent_wiki_cli-3.1.0/src/llm_wiki_cli/services/scoped_sync_repair.py +279 -0
- agent_wiki_cli-3.1.0/src/llm_wiki_cli/services/sync_recovery.py +561 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/wiki_write_basis.py +12 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/wiki-reference/SKILL.md +2 -2
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/wiki-reference/references/development-workflow.md +7 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/wiki-reference/references/extractors-dependencies.md +9 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/wiki-reference/references/maintenance.md +101 -0
- agent_wiki_cli-3.1.0/tests/fixtures/knowledge-evidence/concept-observation-inventories.json +229 -0
- agent_wiki_cli-3.1.0/tests/fixtures/knowledge-evidence/producer-evidence-expectations.json +37 -0
- agent_wiki_cli-3.1.0/tests/fixtures/knowledge-evidence/producer-evidence-inventories.json +400 -0
- agent_wiki_cli-3.1.0/tests/fixtures/knowledge-evidence/released-2.5.0-large-files.json +801 -0
- agent_wiki_cli-3.1.0/tests/fixtures/knowledge-evidence/released-2.5.0-large.json +810 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_agent_instruction_decisions.py +19 -9
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_api_exception_taxonomy.py +2 -0
- agent_wiki_cli-3.1.0/tests/test_captured_evidence_diagnostics.py +214 -0
- agent_wiki_cli-3.1.0/tests/test_committed_projection_recovery.py +197 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_core_shard_runner.py +32 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_current_install_defaults.py +6 -0
- agent_wiki_cli-3.1.0/tests/test_evidence_explanation_query.py +239 -0
- agent_wiki_cli-3.1.0/tests/test_evidence_recovery_guidance.py +195 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_extractor_helpers.py +13 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_extractor_inventory_contracts.py +44 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_go_extract.py +29 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_haskell_extract.py +32 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_helper_preparation.py +2 -1
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_instruction_ownership.py +39 -1
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_evidence.py +61 -0
- agent_wiki_cli-3.1.0/tests/test_normalization_diagnostics.py +334 -0
- agent_wiki_cli-3.1.0/tests/test_owned_packet_recovery.py +300 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_package_metadata.py +7 -1
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_package_validation.py +30 -1
- agent_wiki_cli-3.1.0/tests/test_preflight.py +748 -0
- agent_wiki_cli-3.1.0/tests/test_preflight_contracts.py +370 -0
- agent_wiki_cli-3.1.0/tests/test_preflight_runner.py +782 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_python_implementation.py +21 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_release_dogfood.py +29 -7
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_release_static_checks.py +5 -1
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_release_workflows.py +78 -7
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_rust_extract.py +31 -2
- agent_wiki_cli-3.1.0/tests/test_scoped_sync_repair.py +375 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_source_selection.py +7 -2
- agent_wiki_cli-3.1.0/tests/test_storage_review_pagination.py +276 -0
- agent_wiki_cli-3.1.0/tests/test_sync_guard_diagnostics.py +415 -0
- agent_wiki_cli-3.1.0/tests/test_sync_recovery.py +484 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_ts_extract.py +147 -2
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/LICENSE +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/README.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/docs/native-agent-workflow.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/docs/native-knowledge-provider.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/docs/security-model.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/docs/standalone-documentation.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/docs/wiki-guide.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/examples/plugins/documentation-hooks/README.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/examples/plugins/documentation-hooks/detectors.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/examples/plugins/documentation-hooks/llm-wiki-plugin.json +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/examples/plugins/documentation-hooks/styles.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/release_build_backend.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/setup.cfg +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/agent_wiki_cli.egg-info/dependency_links.txt +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/agent_wiki_cli.egg-info/entry_points.txt +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/agent_wiki_cli.egg-info/requires.txt +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/agent_wiki_cli.egg-info/top_level.txt +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/__init__.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/__init__.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/api_diff_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/bootstrap_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/bump_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/ci_check_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/context_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/docs_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/doctor_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/extract_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/generate_prompt_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/hook_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/init_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/install_ci_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/install_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/knowledge_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/lint_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/mcp_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/metrics_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/migrate_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/obsidian_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/plugins_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/prepare_extractors_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/queue_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/release_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/review_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/search_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/site_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/skills_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/status_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/task_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/team_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/trigger_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/uninstall_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/commands/upgrade_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/config.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/eval_lite/__init__.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/eval_lite/planner.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/examples/plugins/documentation-hooks/README.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/examples/plugins/documentation-hooks/detectors.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/examples/plugins/documentation-hooks/llm-wiki-plugin.json +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/examples/plugins/documentation-hooks/styles.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/extractors/__init__.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/extractors/common.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/extractors/fastapi_contracts.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/extractors/go_extractor.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/extractors/go_scripts/go.mod +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/extractors/go_scripts/main.go +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/extractors/haskell_extractor.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/extractors/haskell_scripts/Inventory.hs +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/extractors/haskell_scripts/Json.hs +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/extractors/haskell_scripts/Main.hs +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/extractors/haskell_scripts/Parser.hs +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/extractors/haskell_scripts/Paths.hs +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/extractors/native_diagnostics.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/extractors/python_bindings.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/extractors/python_contracts.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/extractors/python_extractor.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/extractors/rust_extractor.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/extractors/rust_scripts/Cargo.lock +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/extractors/rust_scripts/Cargo.toml +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/extractors/rust_scripts/src/main.rs +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/extractors/ts_extractor.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/extractors/ts_scripts/extract.js +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/extractors/ts_scripts/package-lock.json +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/extractors/ts_scripts/package.json +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/py.typed +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/schemas/__init__.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/schemas/llm-wiki-implementation-declarations-v1.schema.json +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/schemas/llm-wiki-implementation-evidence-v1.schema.json +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/schemas/llm-wiki-knowledge-object-v1.schema.json +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/schemas/llm-wiki-knowledge-pack-index-v1.schema.json +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/schemas/llm-wiki-knowledge-pack-index-v2.schema.json +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/schemas/llm-wiki-knowledge-v1.schema.json +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/schemas/llm-wiki-knowledge-v2.schema.json +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/schemas/llm-wiki-knowledge-v3.schema.json +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/schemas/llm-wiki-knowledge-v4.schema.json +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/schemas/llm-wiki-maintenance-adoption-v1.schema.json +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/schemas/llm-wiki-maintenance-basis-v1.schema.json +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/schemas/llm-wiki-maintenance-binding-v1.schema.json +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/schemas/llm-wiki-maintenance-event-v1.schema.json +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/schemas/llm-wiki-maintenance-record-binding-v1.schema.json +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/schemas/llm-wiki-maintenance-state-v1.schema.json +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/schemas/llm-wiki-manifest-catalog-v1.schema.json +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/schemas/llm-wiki-manifest-v6.schema.json +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/schemas/llm-wiki-manifest-v7.schema.json +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/schemas/llm-wiki-manifest-v8.schema.json +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/__init__.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/analysis_capture.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/analysis_compatibility.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/api_contracts.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/api_diff.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/bootstrap_runtime.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/bootstrap_service.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/calibration/__init__.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/calibration/broker.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/calibration/contracts.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/calibration/controller.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/calibration/host_broker.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/canonical_json.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/canonical_pages.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/capability_diagnostics.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/change_selection.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/ci_installer.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/ci_report.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/circuit_breaker.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/concept_identity.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/context_knowledge_contract.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/context_session.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/current_contracts.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/data_flow.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/dependencies.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/dependency_versions.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/diagrams.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/doctor_service.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/documentation_calibration.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/documentation_calibration_broker.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/documentation_calibration_controller.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/documentation_calibration_host_broker.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/documentation_claim_evidence.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/documentation_model_policy.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/documentation_native.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/documentation_policy.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/documentation_query_builder.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/documentation_review.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/documentation_run/__init__.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/documentation_run/contracts.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/documentation_run/dependencies.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/documentation_run/export.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/documentation_run/integrity.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/documentation_run/packet.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/documentation_run/prepare.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/documentation_run/record.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/documentation_run/refresh.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/documentation_run/schema.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/documentation_run/verify.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/documentation_run/workspace.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/documentation_wiki_input.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/documentation_worklist.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/entrypoints.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/extraction_jobs.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/extraction_service.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/filesystem_guard.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/flow_overview.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/freshness_wording.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/go_calls.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/health_contract.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/health_details.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/health_policy.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/health_summary.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/helper_preparation.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/immutable.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/impact.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/implementation_evidence.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/imports.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/infrastructure_inventory.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/infrastructure_sync.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/inventory_cache.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/io.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/knowledge_artifacts.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/knowledge_audit.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/knowledge_consumption.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/knowledge_coverage.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/knowledge_envelope.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/knowledge_generation.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/knowledge_governance.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/knowledge_graph.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/knowledge_index.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/knowledge_links.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/knowledge_loader.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/knowledge_maintenance.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/knowledge_model.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/knowledge_observability.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/knowledge_packs.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/knowledge_projection.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/knowledge_reuse.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/knowledge_storage.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/knowledge_storage_access.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/knowledge_storage_io.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/knowledge_storage_lifecycle.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/knowledge_stream_audit.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/knowledge_verification.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/legacy_hooks.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/lockfile.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/maintenance_evidence.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/maintenance_projection.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/maintenance_protocol.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/maintenance_queue.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/maintenance_shapes.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/maintenance_state.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/maintenance_status.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/manifest_storage.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/markdown_sections.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/mcp_server.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/metrics.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/module_maps.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/native_inspection.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/obsidian.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/packages.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/packet_field_policy.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/paths.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/plugin_samples.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/plugins.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/progress.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/protected_artifacts.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/python_calls.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/python_implementation.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/python_imports.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/python_observations.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/python_stdlib.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/redaction.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/relationships.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/rendering_lifecycle.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/request_json.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/resource_diagnostics.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/review_service.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/runtime_output.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/search_discovery.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/search_discovery_capture.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/search_lexical.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/search_rank.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/search_service.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/search_source.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/section_ownership.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/secure_file.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/site_export.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/site_html_check.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/skills.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/source_path_diagnostics.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/source_retirement.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/source_selection.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/source_snapshot.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/storage_receipts.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/storage_sort.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/storage_spool.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/sync_analysis.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/sync_analysis_cache.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/sync_generated_sections.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/sync_manifest.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/sync_retained_links.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/sync_transition_execution.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/sync_transitions.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/task_compact.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/task_compact_delivery.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/task_compact_readable.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/task_context.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/task_context_v2.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/task_contract.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/task_evidence.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/task_implementation.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/team.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/token_counting.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/validation.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/verification_contracts.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/versioning.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/wiki_git_policy.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/wiki_lifecycle.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/wiki_media.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/wiki_scaffold.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/wiki_surface.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/wiki_surface_index.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/workflow_profile.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/yaml_formats.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/services/yaml_syntax.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/agent-docs/SKILL.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/agent-docs/reference.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/attack-surface/SKILL.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/attack-surface/reference.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/dep-audit/SKILL.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/dep-audit/reference.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/dep-vuln-triage/SKILL.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/dep-vuln-triage/reference.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/doc-hub/SKILL.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/doc-hub/reference.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/doc-review/SKILL.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/doc-review/reference.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/impact-analysis/SKILL.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/impact-analysis/reference.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/infra-review/SKILL.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/infra-review/reference.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/native-coding/SKILL.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/native-coding/profile.json +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/onboarding-guide/SKILL.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/onboarding-guide/reference.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/publish-docs/SKILL.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/publish-docs/reference.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/usage-examples/SKILL.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/usage-examples/reference.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/user-docs-author/SKILL.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/user-docs-author/reference.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/wiki-bootstrap/SKILL.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/wiki-bootstrap/reference.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/wiki-reference/reference.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/wiki-reference/references/context-query.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/wiki-reference/references/governance.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/wiki-reference/references/knowledge-consumption.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/wiki-reference/references/publishing.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/wiki-reference/references/repository-handoff.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/wiki-reference/references/resources-context.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/wiki-reference/references/surfaces-naming.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/wiki-semantic-enhance/SKILL.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/wiki-semantic-enhance/reference.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/wiki-sync/SKILL.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/src/llm_wiki_cli/skills/wiki-sync/reference.md +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_action_runtimes.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_analysis_compatibility.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_analysis_input_preflight.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_analysis_qualification.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_api.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_api_contracts.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_api_diff.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_architecture_layers.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_artifact_fixture_clock.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_bandit_decision.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_bandit_probe_metadata.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_bandit_runner.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_bootstrap.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_bootstrap_api_contracts.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_bootstrap_service.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_bump.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_calibration_cli.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_calibration_isolation.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_capability_diagnostics.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_change_selection.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_ci_check.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_ci_runtime_output.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_ci_toolchain_setup.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_ci_workflow_wrapper.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_circuit_breaker.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_cli.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_cli_error_streams.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_compact_context_session.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_compact_delivery_interfaces.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_compact_delivery_policy.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_compact_first_use.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_concept_identity.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_config.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_constructor_call_interfaces.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_context.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_context_budget.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_context_integration.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_context_knowledge_contract.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_context_knowledge_runtime.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_context_packet.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_context_packet_knowledge.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_context_packet_mutation_locks.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_context_session.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_core_check_performance.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_core_shard_workflow.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_core_shards.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_credential_named_knowledge.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_data_flow.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_default_development_workflow.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_dep_vuln_triage_skill.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_dependencies.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_dependencies_external.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_dependency_audit.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_dependency_downloads.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_dependency_setup_probe.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_dependency_setup_workflow.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_dependency_version_details.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_developer_value_after_change.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_developer_value_before_change.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_developer_value_combined_compatibility.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_developer_value_combined_interfaces.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_developer_value_combined_workflows.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_developer_value_compact_experiment.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_developer_value_comparison.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_developer_value_complete_workflow.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_developer_value_composition.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_developer_value_corpus.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_developer_value_cost_recorder.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_developer_value_evaluate.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_developer_value_evidence_reconciliation.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_developer_value_frozen_changes.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_developer_value_guide_review.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_developer_value_historical_triage.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_developer_value_measure.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_developer_value_packed_experiment.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_developer_value_resume.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_developer_value_retrieval_experiment.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_developer_value_search_orientation.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_developer_value_search_route.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_developer_value_triage_acceptance.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_developer_value_triage_oracle.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_developer_value_triage_workflow_gate.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_developer_value_workflow_oracles.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_diagrams.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_docker_bootstrap.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_docker_extract.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_docker_lint.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_docs_cli.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_doctor.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_documentation_adversarial.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_documentation_calibration.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_documentation_calibration_broker.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_documentation_calibration_controller.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_documentation_calibration_host_broker.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_documentation_calibration_oci_integration.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_documentation_claim_evidence.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_documentation_control_integrity.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_documentation_dogfood.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_documentation_input_recheck.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_documentation_model_policy.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_documentation_native.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_documentation_native_lifecycle.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_documentation_prepare_transaction.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_documentation_projection_policy.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_documentation_protocol.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_documentation_queries.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_documentation_refresh_continuation.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_documentation_review.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_documentation_run_fixtures.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_documentation_wiki_input.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_documentation_worklist.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_documentation_workspace.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_e2e.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_enriched_projection_resilience.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_entity_retirement.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_entity_retirement_evidence.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_entrypoints.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_eval_lite.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_examples.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_extract.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_extract_api_contracts.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_extract_data_flow_details.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_filesystem_guard.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_filesystem_guard_windows.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_filesystem_guard_windows_model.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_flow_overview.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_flow_overview_receiving.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_freshness_wording.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_generate_prompt.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_generated_relationship_pages.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_github_action.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_github_action_shell.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_go_calls.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_governance_reconciliation.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_graph_section_end_to_end.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_guarded_read_metadata.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_guide_landing_preservation.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_health_details.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_helper_packaging_parity.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_hook.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_hosted_evidence.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_impact.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_implementation_evidence.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_implementation_integration.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_implementation_read_view.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_imports.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_infra_review_skill.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_infrastructure_inventory.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_infrastructure_sync.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_init.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_install.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_install_ci.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_inventory_cache.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_io.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_javascript_module_coverage.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_artifacts.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_benchmark.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_cmd.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_commands.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_compatibility.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_consumption.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_contract.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_coverage.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_envelope.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_freshness.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_generation.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_governance.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_graph.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_hardening.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_health_refresh.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_index.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_links.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_lint.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_loader.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_maintenance.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_model.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_observability.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_packs.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_performance.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_producer_languages.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_projection.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_projection_e2e.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_queries.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_query_adapters.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_reuse.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_scale.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_storage.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_storage_artifacts.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_storage_lifecycle.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_validation_receipt.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_validation_receiving.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_knowledge_verification_view.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_lint.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_lint_advisory_text.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_llm_wiki_convergence_script.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_llm_wiki_convergence_workflow.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_lockfile.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_maintenance_interfaces.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_maintenance_lifecycle.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_maintenance_manifest.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_maintenance_moves.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_maintenance_operations.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_maintenance_preservation.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_maintenance_queue.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_maintenance_queue_unadopted.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_maintenance_read_projections.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_maintenance_reconciliation.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_maintenance_state.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_maintenance_status.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_managed_reference_topics.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_manifest_storage.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_markdown_sections.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_mcp.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_mcp_probe.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_mcp_sdk.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_metrics.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_migrate.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_migration_ignore_transition.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_module_maps.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_multilanguage_wiki.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_native_helper_path_diagnostics.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_native_inspection.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_native_knowledge_semantics_docs.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_native_published_artifacts.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_native_query_boundaries.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_native_reduction_contracts.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_native_session_diagnostics.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_native_skill_preflight_and_reanchor.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_native_workflow_baseline.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_native_workflow_codex_host.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_native_workflow_executable.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_native_workflow_oracles.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_native_workflow_scenarios.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_native_workflow_trace.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_navigation_layouts.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_obsidian.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_optimization_evidence.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_optimization_measurements.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_packages.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_packet_field_policy.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_paths.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_plugin_sample.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_plugins.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_policy_activation.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_policy_renewal.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_policy_source_freeze.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_progress.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_protected_artifacts.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_protocol_registry.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_provider_conformance.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_provider_state_receipts.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_provisioning_failures.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_public_docs_performance.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_public_docs_vocabulary.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_publishing_hub_attack_contracts.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_pytest_portability.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_python_binding_adversaries.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_python_binding_state_growth.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_python_call_bindings.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_python_constructor_bindings.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_python_constructor_control_flow.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_python_constructor_resolution.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_python_go_path_diagnostics.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_python_import_scopes.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_python_observation_cache.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_python_source_inventory.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_python_typed_dicts.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_qualification_automation.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_qualified_context_acceptance.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_qualified_empty_modules.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_quality_workflows.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_readonly_subprocess_stdin.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_real_caller_action_fixture.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_redaction.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_reference_skill_verifier.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_relationships.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_release.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_release_automation_workflow.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_release_build_backend.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_release_qualification.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_release_supply_chain.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_rendering_lifecycle.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_resource_diagnostics.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_route_projection_regressions.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_runtime_output.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_schema.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_schema_context_baselines.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_search_discovery.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_search_discovery_capture.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_search_discovery_interfaces.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_search_discovery_route.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_search_lexical.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_search_rank.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_search_source_interfaces.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_section_ownership.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_secure_file.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_site_export.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_site_knowledge_metadata.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_site_root_identity.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_skill_contracts.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_skill_contracts_all.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_skill_ownership_boundaries.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_skill_policy_routes.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_skills.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_source_snapshot.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_static_quality_architecture.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_status.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_storage_followup_controls.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_storage_locality.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_storage_lock_diagnostics.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_storage_performance.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_storage_retention_diagnostics.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_surface_initialization.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_sync.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_sync_analysis.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_sync_analysis_cache.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_sync_analysis_capture.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_sync_api_contracts.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_sync_generated_sections.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_sync_manifest.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_sync_missing_pages.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_sync_no_plugins.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_sync_page_transitions.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_sync_retained_links.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_sync_runtime_regressions.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_sync_transition_execution.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_sync_transitions.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_task_adoption_diagnostics.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_task_adoption_recipes.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_task_compact.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_task_compact_readable.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_task_compact_receiving.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_task_context.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_task_context_v2.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_team.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_team_policy_regressions.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_trigger.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_typed_graph_queries.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_ubuntu_shadow.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_ubuntu_suites.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_uninstall.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_upgrade.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_validated_knowledge_reuse.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_validation.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_verification_contracts.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_verified_bug_migrations.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_versioning.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_wiki_git_policy.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_wiki_helper_cache.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_wiki_integrity_action.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_wiki_lifecycle.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_wiki_reference_skill.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_wiki_review_snapshot.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_wiki_surface.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_wiki_surface_index.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_wiki_sync_cleanup.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_workflow_contracts.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_workflow_interfaces.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_yaml_formats.py +0 -0
- {agent_wiki_cli-3.0.0 → agent_wiki_cli-3.1.0}/tests/test_yaml_syntax.py +0 -0
|
@@ -2,6 +2,7 @@ prune examples
|
|
|
2
2
|
recursive-include examples/plugins/documentation-hooks *.py *.json *.md
|
|
3
3
|
include release_build_backend.py
|
|
4
4
|
include src/llm_wiki_cli/py.typed
|
|
5
|
+
include src/llm_wiki_cli/schemas/llm-wiki-normalization-diagnostic-v1.schema.json
|
|
5
6
|
include src/llm_wiki_cli/schemas/llm-wiki-knowledge-v1.schema.json
|
|
6
7
|
include src/llm_wiki_cli/schemas/llm-wiki-knowledge-v2.schema.json
|
|
7
8
|
include src/llm_wiki_cli/schemas/llm-wiki-knowledge-v3.schema.json
|
|
@@ -18,5 +19,6 @@ include docs/security-model.md
|
|
|
18
19
|
include docs/native-knowledge-provider.md
|
|
19
20
|
include docs/native-agent-workflow.md
|
|
20
21
|
prune reports
|
|
22
|
+
recursive-include tests/fixtures/knowledge-evidence *.json
|
|
21
23
|
include src/llm_wiki_cli/schemas/llm-wiki-manifest-v6.schema.json
|
|
22
24
|
include src/llm_wiki_cli/schemas/llm-wiki-manifest-catalog-v1.schema.json
|
|
@@ -138,6 +138,108 @@ source .git/llm-wiki-ci-toolchains.env
|
|
|
138
138
|
--src-dir . --wiki-dir docs/llm_wiki
|
|
139
139
|
```
|
|
140
140
|
|
|
141
|
+
### Local release preparation
|
|
142
|
+
|
|
143
|
+
This repository provides `release/preflight.py` for explicit local preparation
|
|
144
|
+
and release rehearsal. Run it from the source checkout with the project virtual
|
|
145
|
+
environment. It keeps source, runtime, dependency and evidence identities bound
|
|
146
|
+
to the selected commit, and reports native or hosted requirements that remain
|
|
147
|
+
outstanding. It has no publication or promotion authority.
|
|
148
|
+
|
|
149
|
+
Choose new output paths already covered by the project's ignore rules. The
|
|
150
|
+
controller refuses unignored output and occupied, unowned work directories;
|
|
151
|
+
existing owned work retains separate attempts. For example:
|
|
152
|
+
|
|
153
|
+
```bash
|
|
154
|
+
PREFLIGHT_DIR=reports/local-preflight
|
|
155
|
+
RELEASE_CANDIDATE_SHA="$(git rev-parse HEAD)"
|
|
156
|
+
git check-ignore -q -- "$PREFLIGHT_DIR/before-prepare.json"
|
|
157
|
+
git check-ignore -q -- "$PREFLIGHT_DIR/work"
|
|
158
|
+
.venv/bin/python -I release/preflight.py plan \
|
|
159
|
+
--candidate-sha "$RELEASE_CANDIDATE_SHA" --check-registry \
|
|
160
|
+
--output "$PREFLIGHT_DIR/before-prepare.json"
|
|
161
|
+
.venv/bin/python -I release/preflight.py prepare \
|
|
162
|
+
--plan "$PREFLIGHT_DIR/before-prepare.json" --work "$PREFLIGHT_DIR/work"
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
`plan` inspects the checkout and available capabilities without installing
|
|
166
|
+
anything. `--check-registry` additionally requests read-only remote tag and
|
|
167
|
+
package-registry inspection. An unavailable service stays unavailable; it does
|
|
168
|
+
not establish that a version is free. Already published versions, including
|
|
169
|
+
3.0.0, and unfinished version or changelog preparation prevent complete release
|
|
170
|
+
rehearsal. Version selection, migration review and issue disposition remain
|
|
171
|
+
explicit maintainer decisions.
|
|
172
|
+
|
|
173
|
+
`prepare` explicitly invokes the maintained locked toolchain and helper setup
|
|
174
|
+
routes on supported hosts. Review its result, activate the prepared Node/npm
|
|
175
|
+
environment as described above, finish authorized source and wiki maintenance,
|
|
176
|
+
and commit the coherent result. Preparation may change the captured environment;
|
|
177
|
+
a fresh plan is required after those changes. The controller refuses stale
|
|
178
|
+
plans instead of silently selecting a different commit or environment.
|
|
179
|
+
|
|
180
|
+
Preparation also screens an archive of the exact committed HEAD against the
|
|
181
|
+
existing hosted source-archive limits before requesting repository health. Its
|
|
182
|
+
`archive-budget/report.json` records compressed and expanded bytes, member count
|
|
183
|
+
and the archive digest when an archive is created. This measures committed
|
|
184
|
+
source scope. An archive above the 64 MiB compressed limit, or another existing
|
|
185
|
+
archive bound, stays blocked for reviewed correction. Preparation never prunes
|
|
186
|
+
storage automatically, and this local screen cannot authenticate the eventual
|
|
187
|
+
hosted archive.
|
|
188
|
+
|
|
189
|
+
For complete rehearsal, first save the actual issue snapshot, dispositions and
|
|
190
|
+
version rationale in an ignored `$PREFLIGHT_DIR/release-review.json`. Its JSON
|
|
191
|
+
object has exactly these fields:
|
|
192
|
+
|
|
193
|
+
- `schema_version`: `agent-wiki-local-release-review/v1`.
|
|
194
|
+
- `candidate_sha` and `version`: the final full commit SHA and its package version.
|
|
195
|
+
- `observed_at`: a timezone-aware ISO 8601 observation time, no more than 24 hours old.
|
|
196
|
+
- `issues`: the observed issue rows, each containing integer `number` and string `title`.
|
|
197
|
+
- `dispositions`: one row for every observed issue, each containing its `number`,
|
|
198
|
+
a `decision` of `blocker`, `resolved`, `deferred`, or `not-a-bug`, and a specific
|
|
199
|
+
nonempty `reason`.
|
|
200
|
+
- `semver`: `baseline` as the previous three-part release version, `target` matching
|
|
201
|
+
the candidate version, and a nonempty `reason` for the version choice.
|
|
202
|
+
|
|
203
|
+
Record the review that was actually performed. This local record does not prove
|
|
204
|
+
independent approval or a complete authenticated GitHub issue inventory. A
|
|
205
|
+
recorded blocker prevents full rehearsal. Omitting `--review-file` leaves review
|
|
206
|
+
pending and still permits the early diagnostic invocation described below.
|
|
207
|
+
|
|
208
|
+
```bash
|
|
209
|
+
RELEASE_CANDIDATE_SHA="$(git rev-parse HEAD)"
|
|
210
|
+
git check-ignore -q -- "$PREFLIGHT_DIR/release-review.json"
|
|
211
|
+
git check-ignore -q -- "$PREFLIGHT_DIR/final-plan.json"
|
|
212
|
+
.venv/bin/python -I release/preflight.py plan \
|
|
213
|
+
--candidate-sha "$RELEASE_CANDIDATE_SHA" --check-registry \
|
|
214
|
+
--review-file "$PREFLIGHT_DIR/release-review.json" \
|
|
215
|
+
--output "$PREFLIGHT_DIR/final-plan.json"
|
|
216
|
+
.venv/bin/python -I release/preflight.py run \
|
|
217
|
+
--plan "$PREFLIGHT_DIR/final-plan.json" --work "$PREFLIGHT_DIR/work"
|
|
218
|
+
.venv/bin/python -I release/preflight.py status --work "$PREFLIGHT_DIR/work"
|
|
219
|
+
```
|
|
220
|
+
|
|
221
|
+
Use the returned `receipt_path` with
|
|
222
|
+
`.venv/bin/python -I release/preflight.py verify --receipt RECEIPT_PATH`.
|
|
223
|
+
Verification checks retained evidence and its current applicability without
|
|
224
|
+
executing recorded commands or repairing anything. `status` shows recorded
|
|
225
|
+
attempts; it does not establish their current applicability. Plans expire after
|
|
226
|
+
24 hours and require a new inspection.
|
|
227
|
+
|
|
228
|
+
For an early diagnostic check before version preparation is complete, append
|
|
229
|
+
`--stage contracts` to `run`. A partial invocation remains `blocked` for release
|
|
230
|
+
readiness even when its checks succeed. Full execution runs the maintained
|
|
231
|
+
host-applicable checks, independent builds and installed-artifact verification
|
|
232
|
+
serially. It reports `failed`, `blocked`, or
|
|
233
|
+
`local-ready-hosted-required`; the last result still requires normal hosted
|
|
234
|
+
qualification and all required target environments.
|
|
235
|
+
|
|
236
|
+
Local macOS success cannot establish Windows or Linux semantics, an unsupported
|
|
237
|
+
helper or OCI architecture, an authenticated policy proof, or publication
|
|
238
|
+
attestations. A missing capability remains pending. Continue through reviewed
|
|
239
|
+
main changes, current native CI and the existing qualification and publication
|
|
240
|
+
procedure using its verified artifacts. Local rehearsal distributions and
|
|
241
|
+
receipts cannot replace that evidence.
|
|
242
|
+
|
|
141
243
|
### Qualification after merging
|
|
142
244
|
|
|
143
245
|
Repository release automation is disabled by default in
|
|
@@ -19,6 +19,53 @@ task detector with Mermaid styling.
|
|
|
19
19
|
| Extend and collaborate | [install / plugins](#install-and-plugins), [team](#team), [knowledge](#knowledge) |
|
|
20
20
|
| Manage an installation | [upgrade](#upgrade), [migrate](#migrate), [metrics](#metrics), [status / release / bump / uninstall](#status-release-bump-and-uninstall) |
|
|
21
21
|
|
|
22
|
+
## Recover captured evidence
|
|
23
|
+
|
|
24
|
+
Keep the failure's source, cause and qualifications. Use the same source/wiki
|
|
25
|
+
roots, selection, helper cache and generation options through diagnosis and
|
|
26
|
+
repair. For example, with source `src`, wiki `wiki`, selection
|
|
27
|
+
`config/sources.json` and an existing helper cache `.cache/helpers`, save a
|
|
28
|
+
permitted request file `evidence.json` containing:
|
|
29
|
+
|
|
30
|
+
```json
|
|
31
|
+
{"operation":"explain","source":"orders.py","limit":5}
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
```bash
|
|
35
|
+
llm-wiki query --request evidence.json --src-dir src --wiki-dir wiki --source-selection config/sources.json --helper-cache-dir .cache/helpers
|
|
36
|
+
llm-wiki extract --src-dir src --paths orders.py --deep --read-only --source-selection config/sources.json --helper-cache-dir .cache/helpers
|
|
37
|
+
llm-wiki sync --dry-run --jobs 1 --src-dir src --wiki-dir wiki --source-selection config/sources.json --helper-cache-dir .cache/helpers
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
Replace these example bindings with the original command's actual values.
|
|
41
|
+
Request `source` and extract `--paths` are canonical POSIX paths relative to
|
|
42
|
+
`--src-dir`; filesystem and cache arguments use native paths. Explanation is
|
|
43
|
+
snapshot-only by default; choose an exact locator from ambiguous results.
|
|
44
|
+
`live:true` plus `allow_full_inventory:true` authorizes full current analysis.
|
|
45
|
+
The [explanation route](#context) separates captured/current source and producer
|
|
46
|
+
bases, helper identity and active runtime. Raw extraction prints JSON, installs
|
|
47
|
+
no dependencies and cannot repair a stored manifest.
|
|
48
|
+
|
|
49
|
+
For a missing/stale helper, use its exact [preparation remedy](#prepare-extractors)
|
|
50
|
+
with setup authority, then retry the original read once with the same selection
|
|
51
|
+
and cache. Preparation takes `--cache-dir`, reads take `--helper-cache-dir`.
|
|
52
|
+
Do not combine explicit `--language` preparation with `--source-selection`.
|
|
53
|
+
A current helper with a runtime mismatch needs the reported runtime selected on
|
|
54
|
+
PATH; preparation does not change PATH. No hand-linked dependencies or internal
|
|
55
|
+
helper-script invocation is required.
|
|
56
|
+
|
|
57
|
+
Fix fresh normalization rejection before repair; invalid evidence stays blocking.
|
|
58
|
+
If raw output is valid but captured evidence is unavailable, the authorized
|
|
59
|
+
[owning sync](#sync) must commit the repair. Review the complete preview, including
|
|
60
|
+
removals. Broad changes require explicit authority for the same invocation with
|
|
61
|
+
`--force` replacing `--dry-run`; never force automatically. Review again after
|
|
62
|
+
any input change. The bounded `--repair-evidence` writer retains its own adoption,
|
|
63
|
+
stable-producer and scope conditions and still performs full analysis.
|
|
64
|
+
Missing/corrupt authority needs its recovery route, not generated JSON edits or
|
|
65
|
+
reinitialization. Review semantic prose, re-anchor edits through owning sync,
|
|
66
|
+
then run strict lint and CI with the same bindings. Keep current defaults and
|
|
67
|
+
strict gates. Storage upgrade and diagnostic reads alone do not establish repair.
|
|
68
|
+
|
|
22
69
|
## Resource-aware execution
|
|
23
70
|
|
|
24
71
|
In an interactive IDE or whenever host capacity is unknown, run one heavy gate
|
|
@@ -260,6 +307,77 @@ or controlled CI runner with known capacity.
|
|
|
260
307
|
Sync repairs
|
|
261
308
|
manifests with invalid source hashes without touching pages, and stops unusually
|
|
262
309
|
broad diffs unless `--force` is used.
|
|
310
|
+
|
|
311
|
+
The affected-source count names inputs whose wiki projections may change;
|
|
312
|
+
sync does not rewrite those source files. A generator-version transition can
|
|
313
|
+
refresh every managed source even when source bytes are unchanged. A storage
|
|
314
|
+
repack alone is separate from that generator refresh.
|
|
315
|
+
When a broad update is refused, the message separates source-change reasons
|
|
316
|
+
from additional generator-refresh inputs, identifies captured/current generator
|
|
317
|
+
versions when available, and shows a bounded path sample with omitted counts.
|
|
318
|
+
Reason counts can overlap; the total source-input count is deduplicated.
|
|
319
|
+
Use the supplied `--dry-run` command with the same source/wiki roots, source
|
|
320
|
+
selection and cache bindings to inspect the full page and artifact plan before
|
|
321
|
+
authorizing a broad write. The preview lists complete affected input paths and
|
|
322
|
+
their reasons, including paths omitted from the refusal sample.
|
|
323
|
+
An oversized, control-containing or non-UTF-8 command is not
|
|
324
|
+
printed; repeat the original invocation with `--dry-run` and omit `--force`.
|
|
325
|
+
The path sample bounds the diagnostic output, not extraction or preview work.
|
|
326
|
+
|
|
327
|
+
For a generator upgrade, review the complete dry-run page and artifact actions,
|
|
328
|
+
including removals, before explicitly repeating the same invocation with
|
|
329
|
+
`--force` in place of `--dry-run`. Keep the source/wiki roots, selection,
|
|
330
|
+
helper/cache bindings and generation options unchanged. This is an owning
|
|
331
|
+
refresh: it regenerates evidence with the current provider and commits matching
|
|
332
|
+
projections and provenance. Already matching managed pages keep their bytes and
|
|
333
|
+
are not rewritten. Changed generated content still appears as a page update;
|
|
334
|
+
it is not classified as a source metadata edit merely because sources match.
|
|
335
|
+
|
|
336
|
+
A preview is not a saved approval token. `--force` computes a new plan from
|
|
337
|
+
current inputs; repeat preview and review if source, helper, selection, provider
|
|
338
|
+
or wiki inputs change. It can authorize broad changes and stale generated
|
|
339
|
+
surface removal, including authored Behavior on those retired surfaces. It does
|
|
340
|
+
not waive ownership or integrity checks, adopt foreign state or recover missing
|
|
341
|
+
authority. After the refresh and semantic review, re-anchor any prose edits with
|
|
342
|
+
ordinary sync, then run strict lint and CI integrity validation using the same
|
|
343
|
+
roots and selection. A subsequent sync with unchanged inputs should be a no-op.
|
|
344
|
+
If publication is rejected, follow its explicit recovery diagnostic before
|
|
345
|
+
retrying; do not delete authority files or reinitialize an established wiki.
|
|
346
|
+
|
|
347
|
+
For a narrowly authorized repair of captured invalid evidence, use
|
|
348
|
+
`--repair-evidence` with canonical POSIX source paths relative to `--src-dir`:
|
|
349
|
+
|
|
350
|
+
```bash
|
|
351
|
+
llm-wiki sync --src-dir src --wiki-dir wiki --no-plugins --repair-evidence package/module.py --dry-run
|
|
352
|
+
llm-wiki sync --src-dir src --wiki-dir wiki --no-plugins --repair-evidence package/module.py
|
|
353
|
+
```
|
|
354
|
+
|
|
355
|
+
Keep the project's source selection, helper/cache bindings and other applicable
|
|
356
|
+
options on both invocations. This mode requires an already adopted, coherent
|
|
357
|
+
wiki, unchanged source and generation policy, and matching complete built-in
|
|
358
|
+
producer/helper/runtime commitments. Run the authorized ordinary owning update
|
|
359
|
+
first after a generator or producer transition. Missing or corrupt authority
|
|
360
|
+
requires its explicit recovery route; scoped repair never adopts or migrates it.
|
|
361
|
+
|
|
362
|
+
The writer repairs a selected source's existing module and entity evidence
|
|
363
|
+
together, preserves unselected captured failures and review history, and does
|
|
364
|
+
not acknowledge review. It refuses mixed source/prose edits, missing or renamed
|
|
365
|
+
pages, new/retired identities, and any reconciliation that changes unselected
|
|
366
|
+
facts or the global typed graph. `--force` can authorize a reviewed broad input
|
|
367
|
+
count; it cannot override these scope conditions. A selected known basis must
|
|
368
|
+
match the fresh observation; otherwise use ordinary owning sync for full review.
|
|
369
|
+
|
|
370
|
+
This is scoped application after **full analysis**, not one-file extraction.
|
|
371
|
+
Source verification, global graph/projection reconciliation, an isolated wiki
|
|
372
|
+
copy, native objects, log/cache metadata and complete recovery preimages still
|
|
373
|
+
require global work. The command checks its candidate before live application
|
|
374
|
+
and again before publication. A changed source, helper, provider, selection or
|
|
375
|
+
wiki invalidates the prepared operation. Existing publication recovery remains
|
|
376
|
+
active; the isolated preflight does not replace a recoverable owning commit.
|
|
377
|
+
Already matching selected evidence produces no scoped publication. Success
|
|
378
|
+
does not certify the whole wiki: unselected unknown evidence remains unknown,
|
|
379
|
+
so repeat strict lint and CI validation afterward.
|
|
380
|
+
|
|
263
381
|
`--initialize-surfaces` enters a surface-only backfill mode for `flows`,
|
|
264
382
|
`dependencies`, and/or `api-contracts`: ordinary entity/module source changes
|
|
265
383
|
are reported but deferred. `--flow-category` is repeatable, `--exclude-tests`
|
|
@@ -576,6 +694,57 @@ Inspect the named source with the read-only
|
|
|
576
694
|
single-file extraction command above, repair the underlying producer or source
|
|
577
695
|
problem, then run owning sync before repeating strict validation. Editing a
|
|
578
696
|
generated wiki table does not repair invalid extractor evidence.
|
|
697
|
+
Diagnostics distinguish a captured failure with no fresh result, a captured
|
|
698
|
+
failure whose fresh normalization succeeds, and a fresh observation that still
|
|
699
|
+
fails normalization. Where captured source hashes exist, they distinguish
|
|
700
|
+
unchanged bytes from changed or incomparable inputs. Producer metadata and
|
|
701
|
+
version labels do not identify historical package bytes; unavailable provenance
|
|
702
|
+
and rejected-record details remain explicit.
|
|
703
|
+
|
|
704
|
+
Fresh normalization rejections can include `Fresh normalization diagnostic: `
|
|
705
|
+
followed by a JSON object in the existing finding `message` or evidence freshness
|
|
706
|
+
`description`. The object has its own
|
|
707
|
+
[`llm-wiki-normalization-diagnostic/v1` schema](../src/llm_wiki_cli/schemas/llm-wiki-normalization-diagnostic-v1.schema.json).
|
|
708
|
+
It identifies the source, scope and extractor, the entity's named occurrence
|
|
709
|
+
when applicable, a record `pointer`, the failed `rule`, the `expected` shape,
|
|
710
|
+
and redacted `actual` type/summary. For example, an import can identify
|
|
711
|
+
`/imports/0/module` with rule `import-module`; a near-miss explicit dynamic
|
|
712
|
+
import can instead identify its missing `/imports/0/reason`.
|
|
713
|
+
|
|
714
|
+
Exact pointers use JSON Pointer with zero-based array indexes. Entity occurrence
|
|
715
|
+
coordinates remain one-based among declarations with the same name. A missing
|
|
716
|
+
occurrence points to the declaration collection, without inventing an index.
|
|
717
|
+
An unknown recursion/encoding location uses a null pointer. When an arbitrary
|
|
718
|
+
mapping key is redacted, the pointer identifies an ancestor and `pointer_exact`
|
|
719
|
+
is false. Bounded coordinate prefixes are listed in `truncated_fields` and must
|
|
720
|
+
not be treated as exact identities.
|
|
721
|
+
|
|
722
|
+
The rendered diagnostic is limited to 4,096 UTF-8 bytes, including its prefix.
|
|
723
|
+
Rejected string values, container contents and arbitrary mapping keys are redacted;
|
|
724
|
+
actual summaries retain safe shape facts such as type, length, emptiness or
|
|
725
|
+
non-finiteness. No arbitrary object representation is rendered. A surrounding
|
|
726
|
+
query may impose a tighter response bound and disclose truncation separately.
|
|
727
|
+
Missing detail does not establish valid evidence.
|
|
728
|
+
|
|
729
|
+
This versioned object is carried as diagnostic text; existing outer report and
|
|
730
|
+
evidence-basis fields are unchanged. Older decoders can retain that text without
|
|
731
|
+
parsing it. A consumer interpreting the object must recognize its schema version;
|
|
732
|
+
unknown versions are not an inferred current contract. Native comparison data
|
|
733
|
+
still requires its compatible outer report schema. Raw `extract` output remains
|
|
734
|
+
inventory, not an annotated normalization report. Historical reason-only snapshots
|
|
735
|
+
do not acquire reconstructed record pointers: details describe only a rejection
|
|
736
|
+
observed by the current normalization run. Valid observation hashes, reason codes
|
|
737
|
+
and strict failure policy remain unchanged.
|
|
738
|
+
|
|
739
|
+
Fresh extraction and evidence explanation are reads: a valid fresh observation
|
|
740
|
+
does not make an unknown committed baseline current. Ordinary owning sync can
|
|
741
|
+
refresh a captured invalid module/entity basis after current deep normalization
|
|
742
|
+
succeeds, including when the generator version label is unchanged. Its preview
|
|
743
|
+
labels this as `evidence-refresh-additional`, separately from source edits and
|
|
744
|
+
generator transitions. Broad refreshes retain the normal review guards. If fresh
|
|
745
|
+
normalization is still invalid, repair that cause; `--force` does not waive
|
|
746
|
+
evidence validity. If fresh normalization succeeds but owning sync is refused by
|
|
747
|
+
the broad-update guard, follow its complete preview and reviewed apply route.
|
|
579
748
|
`lint --profile` and `ci-check --format json` additionally include this shape:
|
|
580
749
|
|
|
581
750
|
```json
|
|
@@ -909,6 +1078,40 @@ perform a full inventory only when `allow_full_inventory=true` is supplied.
|
|
|
909
1078
|
The context budget and focus bound emitted output after a full deep inventory;
|
|
910
1079
|
they do not make that scan computationally cheap.
|
|
911
1080
|
|
|
1081
|
+
Explain one exact concept using the existing evidence service:
|
|
1082
|
+
|
|
1083
|
+
```bash
|
|
1084
|
+
printf '%s\n' '{"operation":"explain","value":"llm-wiki://modules/orders"}' | llm-wiki query --request - --src-dir . --wiki-dir docs/llm_wiki
|
|
1085
|
+
printf '%s\n' '{"operation":"explain","source":"src/orders.py","limit":10}' | llm-wiki query --request - --src-dir . --wiki-dir docs/llm_wiki
|
|
1086
|
+
printf '%s\n' '{"operation":"explain","value":"llm-wiki://modules/orders","live":true,"allow_full_inventory":true}' | llm-wiki query --request - --src-dir . --wiki-dir docs/llm_wiki --helper-cache-dir .git
|
|
1087
|
+
```
|
|
1088
|
+
|
|
1089
|
+
Supply exactly one `value` (exact concept locator, UID or canonical route) or
|
|
1090
|
+
canonical POSIX `source` path relative to `--src-dir`. A source with multiple
|
|
1091
|
+
concepts returns bounded choices; repeat with one exact locator to see evidence.
|
|
1092
|
+
The default reads the committed snapshot without extraction. Set `live:true`
|
|
1093
|
+
and explicitly authorize `allow_full_inventory:true` to compare against a full
|
|
1094
|
+
current source inventory. Existing evidence freshness includes recorded/live
|
|
1095
|
+
source bases, cause and bounded fresh normalization detail when available;
|
|
1096
|
+
snapshot reads never reconstruct historical rejected-record details.
|
|
1097
|
+
|
|
1098
|
+
`provenance` separates stored/live producer records, the installed package
|
|
1099
|
+
fingerprint and version, the structural inventory contract, and active Python
|
|
1100
|
+
runtime. The fingerprint covers installed files and runtime/version inputs; it
|
|
1101
|
+
does not identify the original distribution archive or prove release authenticity.
|
|
1102
|
+
For a selected external extractor, existing preparation receipt source/artifact
|
|
1103
|
+
identities and preparation toolchain are reported separately from active runtime.
|
|
1104
|
+
TypeScript also checks the source copy in the prepared execution directory against
|
|
1105
|
+
the bundled source fingerprint; missing or changed copies require preparation again.
|
|
1106
|
+
Artifact fingerprints cover the receipt's recorded path. For TypeScript this is
|
|
1107
|
+
the `ts-morph` subtree, which does not identify sibling transitive dependencies.
|
|
1108
|
+
Missing or mismatched data stays explicit. Reads do not install dependencies or
|
|
1109
|
+
update source, wiki or helper state. Missing helpers include the existing exact
|
|
1110
|
+
preparation command for the selected cache; setup requires authorization, then
|
|
1111
|
+
retry with the same roots, source selection and cache. A runtime mismatch also
|
|
1112
|
+
requires selecting the matching runtime on PATH. Output limits and truncation
|
|
1113
|
+
disclosures apply to explanation and provenance together.
|
|
1114
|
+
|
|
912
1115
|
External tools can use the `llm-wiki-context/v1` JSON request protocol:
|
|
913
1116
|
|
|
914
1117
|
```bash
|
|
@@ -2134,6 +2337,32 @@ prepared-adoption and captured-preimage retries need their explicit options.
|
|
|
2134
2337
|
See [ordinary review and recovery](maintenance.md) for exact eligibility and
|
|
2135
2338
|
Python/MCP interfaces.
|
|
2136
2339
|
|
|
2340
|
+
### Recover new pages from a rejected sync
|
|
2341
|
+
|
|
2342
|
+
If sync emits `new_page_recovery`, retain its recovery directory and exact
|
|
2343
|
+
`expected_journal_hash`. Preview the pages before applying recovery:
|
|
2344
|
+
|
|
2345
|
+
```bash
|
|
2346
|
+
llm-wiki maintenance recover-new-pages --wiki-dir wiki --recovery-dir RECOVERY_DIR --expected-journal-hash JOURNAL_SHA256 --dry-run
|
|
2347
|
+
```
|
|
2348
|
+
|
|
2349
|
+
After reviewing the list, repeat without `--dry-run` to remove only unchanged
|
|
2350
|
+
Markdown pages created by that rejected operation. Their exact postimages remain
|
|
2351
|
+
in the recovery directory. Existing prose, source files and committed authority
|
|
2352
|
+
are not restored or overwritten. Edited/replaced pages, changed selection or
|
|
2353
|
+
authority, unsafe links, another wiki and altered journals are refused.
|
|
2354
|
+
|
|
2355
|
+
Run the original sync again after recovery. This command does not make an
|
|
2356
|
+
interrupted generation current, repair missing maintenance authority, or replace
|
|
2357
|
+
the complete adopted recovery route above. Recovery is not atomic across pages:
|
|
2358
|
+
an I/O failure can leave a partially removed set, with all original postimages
|
|
2359
|
+
retained for explicit inspection and restoration. A missing or changed candidate
|
|
2360
|
+
is refused; do not blindly replay or manufacture another journal hash.
|
|
2361
|
+
Capture is bounded to 10,000 baseline/created-page entries, an 8 MiB journal
|
|
2362
|
+
and individual postimages, and 64 MiB of postimages per operation. Limits stop
|
|
2363
|
+
the new write rather than authorize unrecorded pages. Without an original
|
|
2364
|
+
rejection journal, this command cannot authorize removal of older stranded pages.
|
|
2365
|
+
|
|
2137
2366
|
## `upgrade`
|
|
2138
2367
|
|
|
2139
2368
|
Refresh framework-managed artifacts in place.
|
|
@@ -5,7 +5,7 @@ backend-path = ["."]
|
|
|
5
5
|
|
|
6
6
|
[project]
|
|
7
7
|
name = "agent-wiki-cli"
|
|
8
|
-
version = "3.
|
|
8
|
+
version = "3.1.0"
|
|
9
9
|
description = "CLI tool to maintain hybrid LLM Wikis for multi-language projects."
|
|
10
10
|
readme = "README.md"
|
|
11
11
|
license = "MIT"
|
|
@@ -67,6 +67,7 @@ where = ["src"]
|
|
|
67
67
|
"llm_wiki_cli" = [
|
|
68
68
|
"py.typed",
|
|
69
69
|
"services/analysis_contracts.json",
|
|
70
|
+
"schemas/llm-wiki-normalization-diagnostic-v1.schema.json",
|
|
70
71
|
"schemas/llm-wiki-knowledge-v1.schema.json",
|
|
71
72
|
"schemas/llm-wiki-implementation-evidence-v1.schema.json",
|
|
72
73
|
"schemas/llm-wiki-maintenance-adoption-v1.schema.json",
|
|
@@ -114,6 +114,7 @@ src/llm_wiki_cli/schemas/llm-wiki-manifest-catalog-v1.schema.json
|
|
|
114
114
|
src/llm_wiki_cli/schemas/llm-wiki-manifest-v6.schema.json
|
|
115
115
|
src/llm_wiki_cli/schemas/llm-wiki-manifest-v7.schema.json
|
|
116
116
|
src/llm_wiki_cli/schemas/llm-wiki-manifest-v8.schema.json
|
|
117
|
+
src/llm_wiki_cli/schemas/llm-wiki-normalization-diagnostic-v1.schema.json
|
|
117
118
|
src/llm_wiki_cli/services/__init__.py
|
|
118
119
|
src/llm_wiki_cli/services/analysis_capture.py
|
|
119
120
|
src/llm_wiki_cli/services/analysis_compatibility.py
|
|
@@ -156,6 +157,8 @@ src/llm_wiki_cli/services/documentation_review.py
|
|
|
156
157
|
src/llm_wiki_cli/services/documentation_wiki_input.py
|
|
157
158
|
src/llm_wiki_cli/services/documentation_worklist.py
|
|
158
159
|
src/llm_wiki_cli/services/entrypoints.py
|
|
160
|
+
src/llm_wiki_cli/services/evidence_diagnostics.py
|
|
161
|
+
src/llm_wiki_cli/services/evidence_explanation.py
|
|
159
162
|
src/llm_wiki_cli/services/extraction_jobs.py
|
|
160
163
|
src/llm_wiki_cli/services/extraction_service.py
|
|
161
164
|
src/llm_wiki_cli/services/extractor_helpers.py
|
|
@@ -221,6 +224,7 @@ src/llm_wiki_cli/services/mcp_server.py
|
|
|
221
224
|
src/llm_wiki_cli/services/metrics.py
|
|
222
225
|
src/llm_wiki_cli/services/module_maps.py
|
|
223
226
|
src/llm_wiki_cli/services/native_inspection.py
|
|
227
|
+
src/llm_wiki_cli/services/normalization_diagnostics.py
|
|
224
228
|
src/llm_wiki_cli/services/obsidian.py
|
|
225
229
|
src/llm_wiki_cli/services/packages.py
|
|
226
230
|
src/llm_wiki_cli/services/packet_field_policy.py
|
|
@@ -242,6 +246,7 @@ src/llm_wiki_cli/services/resource_diagnostics.py
|
|
|
242
246
|
src/llm_wiki_cli/services/review_service.py
|
|
243
247
|
src/llm_wiki_cli/services/runtime_output.py
|
|
244
248
|
src/llm_wiki_cli/services/schema.py
|
|
249
|
+
src/llm_wiki_cli/services/scoped_sync_repair.py
|
|
245
250
|
src/llm_wiki_cli/services/search_discovery.py
|
|
246
251
|
src/llm_wiki_cli/services/search_discovery_capture.py
|
|
247
252
|
src/llm_wiki_cli/services/search_lexical.py
|
|
@@ -264,6 +269,7 @@ src/llm_wiki_cli/services/sync_analysis.py
|
|
|
264
269
|
src/llm_wiki_cli/services/sync_analysis_cache.py
|
|
265
270
|
src/llm_wiki_cli/services/sync_generated_sections.py
|
|
266
271
|
src/llm_wiki_cli/services/sync_manifest.py
|
|
272
|
+
src/llm_wiki_cli/services/sync_recovery.py
|
|
267
273
|
src/llm_wiki_cli/services/sync_retained_links.py
|
|
268
274
|
src/llm_wiki_cli/services/sync_transition_execution.py
|
|
269
275
|
src/llm_wiki_cli/services/sync_transitions.py
|
|
@@ -372,6 +378,7 @@ tests/test_bump.py
|
|
|
372
378
|
tests/test_calibration_cli.py
|
|
373
379
|
tests/test_calibration_isolation.py
|
|
374
380
|
tests/test_capability_diagnostics.py
|
|
381
|
+
tests/test_captured_evidence_diagnostics.py
|
|
375
382
|
tests/test_change_selection.py
|
|
376
383
|
tests/test_ci_check.py
|
|
377
384
|
tests/test_ci_runtime_output.py
|
|
@@ -380,6 +387,7 @@ tests/test_ci_workflow_wrapper.py
|
|
|
380
387
|
tests/test_circuit_breaker.py
|
|
381
388
|
tests/test_cli.py
|
|
382
389
|
tests/test_cli_error_streams.py
|
|
390
|
+
tests/test_committed_projection_recovery.py
|
|
383
391
|
tests/test_compact_context_session.py
|
|
384
392
|
tests/test_compact_delivery_interfaces.py
|
|
385
393
|
tests/test_compact_delivery_policy.py
|
|
@@ -473,6 +481,8 @@ tests/test_entity_retirement.py
|
|
|
473
481
|
tests/test_entity_retirement_evidence.py
|
|
474
482
|
tests/test_entrypoints.py
|
|
475
483
|
tests/test_eval_lite.py
|
|
484
|
+
tests/test_evidence_explanation_query.py
|
|
485
|
+
tests/test_evidence_recovery_guidance.py
|
|
476
486
|
tests/test_examples.py
|
|
477
487
|
tests/test_extract.py
|
|
478
488
|
tests/test_extract_api_contracts.py
|
|
@@ -597,9 +607,11 @@ tests/test_native_workflow_oracles.py
|
|
|
597
607
|
tests/test_native_workflow_scenarios.py
|
|
598
608
|
tests/test_native_workflow_trace.py
|
|
599
609
|
tests/test_navigation_layouts.py
|
|
610
|
+
tests/test_normalization_diagnostics.py
|
|
600
611
|
tests/test_obsidian.py
|
|
601
612
|
tests/test_optimization_evidence.py
|
|
602
613
|
tests/test_optimization_measurements.py
|
|
614
|
+
tests/test_owned_packet_recovery.py
|
|
603
615
|
tests/test_package_metadata.py
|
|
604
616
|
tests/test_package_validation.py
|
|
605
617
|
tests/test_packages.py
|
|
@@ -610,6 +622,9 @@ tests/test_plugins.py
|
|
|
610
622
|
tests/test_policy_activation.py
|
|
611
623
|
tests/test_policy_renewal.py
|
|
612
624
|
tests/test_policy_source_freeze.py
|
|
625
|
+
tests/test_preflight.py
|
|
626
|
+
tests/test_preflight_contracts.py
|
|
627
|
+
tests/test_preflight_runner.py
|
|
613
628
|
tests/test_progress.py
|
|
614
629
|
tests/test_protected_artifacts.py
|
|
615
630
|
tests/test_protocol_registry.py
|
|
@@ -656,6 +671,7 @@ tests/test_runtime_output.py
|
|
|
656
671
|
tests/test_rust_extract.py
|
|
657
672
|
tests/test_schema.py
|
|
658
673
|
tests/test_schema_context_baselines.py
|
|
674
|
+
tests/test_scoped_sync_repair.py
|
|
659
675
|
tests/test_search_discovery.py
|
|
660
676
|
tests/test_search_discovery_capture.py
|
|
661
677
|
tests/test_search_discovery_interfaces.py
|
|
@@ -682,6 +698,7 @@ tests/test_storage_locality.py
|
|
|
682
698
|
tests/test_storage_lock_diagnostics.py
|
|
683
699
|
tests/test_storage_performance.py
|
|
684
700
|
tests/test_storage_retention_diagnostics.py
|
|
701
|
+
tests/test_storage_review_pagination.py
|
|
685
702
|
tests/test_surface_initialization.py
|
|
686
703
|
tests/test_sync.py
|
|
687
704
|
tests/test_sync_analysis.py
|
|
@@ -689,10 +706,12 @@ tests/test_sync_analysis_cache.py
|
|
|
689
706
|
tests/test_sync_analysis_capture.py
|
|
690
707
|
tests/test_sync_api_contracts.py
|
|
691
708
|
tests/test_sync_generated_sections.py
|
|
709
|
+
tests/test_sync_guard_diagnostics.py
|
|
692
710
|
tests/test_sync_manifest.py
|
|
693
711
|
tests/test_sync_missing_pages.py
|
|
694
712
|
tests/test_sync_no_plugins.py
|
|
695
713
|
tests/test_sync_page_transitions.py
|
|
714
|
+
tests/test_sync_recovery.py
|
|
696
715
|
tests/test_sync_retained_links.py
|
|
697
716
|
tests/test_sync_runtime_regressions.py
|
|
698
717
|
tests/test_sync_transition_execution.py
|
|
@@ -730,4 +749,9 @@ tests/test_wiki_sync_cleanup.py
|
|
|
730
749
|
tests/test_workflow_contracts.py
|
|
731
750
|
tests/test_workflow_interfaces.py
|
|
732
751
|
tests/test_yaml_formats.py
|
|
733
|
-
tests/test_yaml_syntax.py
|
|
752
|
+
tests/test_yaml_syntax.py
|
|
753
|
+
tests/fixtures/knowledge-evidence/concept-observation-inventories.json
|
|
754
|
+
tests/fixtures/knowledge-evidence/producer-evidence-expectations.json
|
|
755
|
+
tests/fixtures/knowledge-evidence/producer-evidence-inventories.json
|
|
756
|
+
tests/fixtures/knowledge-evidence/released-2.5.0-large-files.json
|
|
757
|
+
tests/fixtures/knowledge-evidence/released-2.5.0-large.json
|
|
@@ -2540,6 +2540,7 @@ def explain_evidence(
|
|
|
2540
2540
|
DOCUMENTATION_QUERY_SCHEMA_VERSION = "llm-wiki-documentation-query/v1"
|
|
2541
2541
|
MAX_RAW_QUERY_EVIDENCE_BYTES = 64 * 1024
|
|
2542
2542
|
_DOCUMENTATION_QUERY_FIELDS = {
|
|
2543
|
+
"explain": frozenset({"operation", "value", "source", "limit", "live", "allow_full_inventory"}),
|
|
2543
2544
|
"concept": frozenset({"operation", "value", "limit"}),
|
|
2544
2545
|
"related": frozenset({"operation", "value", "limit", "direction", "kinds"}),
|
|
2545
2546
|
"surface": frozenset({"operation", "value", "limit"}),
|
|
@@ -2706,7 +2707,18 @@ def _validate_documentation_query_request(
|
|
|
2706
2707
|
limit = _normalize_query_limit(request.get("limit", 20))
|
|
2707
2708
|
# Operation-specific transport fields are input validation, not part of
|
|
2708
2709
|
# loading the query service. Reject them before any workspace access.
|
|
2709
|
-
if operation == "
|
|
2710
|
+
if operation == "explain":
|
|
2711
|
+
if type(request.get("live", False)) is not bool:
|
|
2712
|
+
raise InvalidRequestError("live must be a boolean.", code="invalid-request", details={"field": "live"})
|
|
2713
|
+
if type(request.get("allow_full_inventory", False)) is not bool:
|
|
2714
|
+
raise InvalidRequestError("allow_full_inventory must be a boolean.", code="invalid-request", details={"field": "allow_full_inventory"})
|
|
2715
|
+
if ("value" in request) == ("source" in request):
|
|
2716
|
+
raise InvalidRequestError("Supply exactly one of value or source.", code="invalid-request", details={"field": "value"})
|
|
2717
|
+
if request.get("live", False):
|
|
2718
|
+
_require_full_inventory_opt_in(request)
|
|
2719
|
+
elif request.get("allow_full_inventory", False):
|
|
2720
|
+
raise InvalidRequestError("allow_full_inventory requires live=true.", code="invalid-request", details={"field": "allow_full_inventory"})
|
|
2721
|
+
elif operation == "impact":
|
|
2710
2722
|
_normalize_query_choice(request.get("source_policy", "explicit"), field="source_policy", allowed=("explicit", "discovery"))
|
|
2711
2723
|
elif operation == "related":
|
|
2712
2724
|
_normalize_query_choice(request.get("direction", "both"), field="direction", allowed=_KNOWLEDGE_QUERY_DIRECTIONS)
|
|
@@ -3050,11 +3062,43 @@ def query_documentation(
|
|
|
3050
3062
|
wiki_dir: str = DEFAULT_WIKI_DIR,
|
|
3051
3063
|
allow_external_src: bool = False,
|
|
3052
3064
|
source_selection: str | Path | None = None,
|
|
3065
|
+
helper_cache_dir: str | Path | None = None,
|
|
3053
3066
|
comparison_policy: str | None = None,
|
|
3054
3067
|
) -> DocumentationQueryResult:
|
|
3055
3068
|
"""Dispatch one exact bounded read-only documentation query."""
|
|
3056
3069
|
|
|
3057
3070
|
operation, limit = _validate_documentation_query_request(request)
|
|
3071
|
+
if operation == "explain":
|
|
3072
|
+
from .services.evidence_explanation import explain_source, explanation_provenance
|
|
3073
|
+
|
|
3074
|
+
if helper_cache_dir is not None and not isinstance(helper_cache_dir, (str, Path)):
|
|
3075
|
+
raise InvalidRequestError("must be a path", code="invalid-request", details={"field": "helper_cache_dir"})
|
|
3076
|
+
source = "source" in request
|
|
3077
|
+
value = _normalize_query_input(
|
|
3078
|
+
lambda: normalize_supplied_paths((request.get("source"),))[0]
|
|
3079
|
+
if source else normalize_concept_coordinate(request.get("value")),
|
|
3080
|
+
field="source" if source else "value",
|
|
3081
|
+
)
|
|
3082
|
+
source_root = validate_source_root(src_dir, "--src-dir", allow_external=allow_external_src)
|
|
3083
|
+
if request.get("live", False):
|
|
3084
|
+
service = build_documentation_query_service(
|
|
3085
|
+
src_dir, wiki_dir=wiki_dir, limit=limit,
|
|
3086
|
+
allow_external_src=allow_external_src, read_only=True,
|
|
3087
|
+
source_selection=source_selection, helper_cache_dir=helper_cache_dir,
|
|
3088
|
+
)
|
|
3089
|
+
scope = "full-inventory"
|
|
3090
|
+
else:
|
|
3091
|
+
service = _snapshot_query_service(wiki_dir, limit=limit)
|
|
3092
|
+
scope = "snapshot-index-only"
|
|
3093
|
+
payload = explain_source(service, value) if source else service.explain_evidence(value)
|
|
3094
|
+
payload["provenance"] = explanation_provenance(
|
|
3095
|
+
service, payload, source_root=source_root, helper_cache_dir=helper_cache_dir,
|
|
3096
|
+
)
|
|
3097
|
+
payload["limitations"] = [
|
|
3098
|
+
"Live explanation performs a full source inventory; snapshot explanation does not extract source or establish fresh normalization.",
|
|
3099
|
+
"Helper inspection reads existing receipts/bytes and probes runtime versions; it never prepares dependencies.",
|
|
3100
|
+
]
|
|
3101
|
+
return _with_query_envelope(operation, payload, scope=scope)
|
|
3058
3102
|
if operation == "impact":
|
|
3059
3103
|
return _impact_query(
|
|
3060
3104
|
request,
|
|
@@ -456,6 +456,8 @@ class DocumentationQueryResult(_DocumentationQueryRequired, total=False):
|
|
|
456
456
|
"""Common envelope returned by the shared bounded query dispatcher."""
|
|
457
457
|
|
|
458
458
|
knowledge: KnowledgeStatus | dict[str, Any]
|
|
459
|
+
evidence: dict[str, Any] | None
|
|
460
|
+
provenance: dict[str, Any]
|
|
459
461
|
concept: dict[str, Any] | None
|
|
460
462
|
total: int
|
|
461
463
|
returned: int
|