agent-wiki-cli 2.3.2__tar.gz → 2.4.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-2.3.2/src/agent_wiki_cli.egg-info → agent_wiki_cli-2.4.0}/PKG-INFO +1 -1
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/docs/automation.md +2 -2
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/docs/cli-reference.md +139 -11
- agent_wiki_cli-2.4.0/docs/native-agent-workflow.md +406 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/docs/wiki-guide.md +4 -1
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/pyproject.toml +12 -1
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0/src/agent_wiki_cli.egg-info}/PKG-INFO +1 -1
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/agent_wiki_cli.egg-info/SOURCES.txt +96 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/api.py +239 -4
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/api_types.py +91 -5
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/cli.py +55 -4
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/__init__.py +1 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/knowledge_cmd.py +11 -4
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/commands/maintenance_cmd.py +134 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/migrate_cmd.py +68 -7
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/search_cmd.py +4 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/sync_cmd.py +32 -9
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/commands/task_cmd.py +166 -0
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/extractors/python_bindings.py +3131 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/extractors/python_extractor.py +50 -7
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/schemas/llm-wiki-implementation-declarations-v1.schema.json +373 -0
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/schemas/llm-wiki-implementation-evidence-v1.schema.json +179 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/schemas/llm-wiki-knowledge-v1.schema.json +385 -1
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/schemas/llm-wiki-maintenance-adoption-v1.schema.json +48 -0
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/schemas/llm-wiki-maintenance-basis-v1.schema.json +128 -0
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/schemas/llm-wiki-maintenance-binding-v1.schema.json +24 -0
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/schemas/llm-wiki-maintenance-event-v1.schema.json +1083 -0
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/schemas/llm-wiki-maintenance-record-binding-v1.schema.json +94 -0
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/schemas/llm-wiki-maintenance-state-v1.schema.json +989 -0
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/schemas/llm-wiki-manifest-v7.schema.json +1079 -0
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/schemas/llm-wiki-manifest-v8.schema.json +384 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/analysis_contracts.json +31 -1
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/bootstrap_runtime.py +105 -17
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/context_packet.py +111 -9
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/context_service.py +50 -1
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/context_session.py +265 -17
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/contracts.py +3 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/doctor_service.py +5 -1
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/documentation_native.py +37 -4
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/documentation_queries.py +89 -1
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/documentation_query_builder.py +60 -1
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/documentation_wiki_input.py +45 -3
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/documentation_worklist.py +32 -2
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/entrypoints.py +11 -2
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/extraction_service.py +149 -60
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/filesystem_guard.py +12 -0
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/services/flow_overview.py +145 -0
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/services/freshness_wording.py +5 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/health_summary.py +6 -3
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/services/implementation_evidence.py +1270 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/instruction_ownership.py +16 -1
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/io.py +9 -1
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/knowledge_artifacts.py +135 -32
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/knowledge_consumption.py +105 -2
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/knowledge_evidence.py +1 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/knowledge_freshness.py +5 -2
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/knowledge_generation.py +69 -3
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/knowledge_governance.py +4 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/knowledge_graph.py +10 -3
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/knowledge_index.py +119 -2
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/knowledge_loader.py +17 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/knowledge_model.py +19 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/knowledge_observability.py +5 -1
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/knowledge_orchestration.py +70 -9
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/knowledge_storage.py +7 -4
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/knowledge_storage_access.py +125 -5
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/knowledge_storage_lifecycle.py +98 -14
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/lint_service.py +39 -20
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/services/maintenance_evidence.py +869 -0
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/services/maintenance_projection.py +331 -0
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/services/maintenance_protocol.py +306 -0
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/services/maintenance_queue.py +605 -0
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/services/maintenance_service.py +491 -0
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/services/maintenance_shapes.py +1027 -0
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/services/maintenance_state.py +980 -0
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/services/maintenance_status.py +692 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/manifest_storage.py +76 -16
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/mcp_server.py +106 -6
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/native_inspection.py +3 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/packet_field_policy.py +10 -0
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/services/python_calls.py +410 -0
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/services/python_implementation.py +527 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/schema.py +76 -41
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/services/search_discovery.py +377 -0
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/services/search_discovery_capture.py +136 -0
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/services/search_lexical.py +216 -0
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/services/search_service.py +287 -0
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/services/search_source.py +100 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/source_snapshot.py +117 -1
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/sync_manifest.py +72 -12
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/services/task_compact.py +603 -0
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/services/task_compact_delivery.py +25 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/task_context.py +30 -6
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/task_context_v2.py +77 -9
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/task_evidence.py +9 -1
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/services/task_implementation.py +157 -0
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/services/wiki_write_basis.py +34 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/workflow_profile.py +4 -1
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/doc-review/reference.md +20 -1
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/infra-review/reference.md +1 -2
- agent_wiki_cli-2.4.0/src/llm_wiki_cli/skills/native-coding/SKILL.md +63 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/wiki-reference/references/context-query.md +150 -4
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/wiki-reference/references/knowledge-consumption.md +1 -1
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/wiki-reference/references/maintenance.md +69 -2
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_agent_instruction_decisions.py +10 -10
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_analysis_compatibility.py +25 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_api.py +2 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_api_exception_taxonomy.py +75 -8
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_bootstrap.py +12 -5
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_bootstrap_service.py +32 -0
- agent_wiki_cli-2.4.0/tests/test_compact_context_session.py +369 -0
- agent_wiki_cli-2.4.0/tests/test_compact_delivery_interfaces.py +748 -0
- agent_wiki_cli-2.4.0/tests/test_constructor_call_interfaces.py +936 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_context.py +9 -0
- agent_wiki_cli-2.4.0/tests/test_context_packet_mutation_locks.py +137 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_credential_named_knowledge.py +47 -5
- agent_wiki_cli-2.4.0/tests/test_developer_value_after_change.py +257 -0
- agent_wiki_cli-2.4.0/tests/test_developer_value_before_change.py +130 -0
- agent_wiki_cli-2.4.0/tests/test_developer_value_combined_compatibility.py +340 -0
- agent_wiki_cli-2.4.0/tests/test_developer_value_combined_interfaces.py +177 -0
- agent_wiki_cli-2.4.0/tests/test_developer_value_combined_workflows.py +343 -0
- agent_wiki_cli-2.4.0/tests/test_developer_value_compact_experiment.py +471 -0
- agent_wiki_cli-2.4.0/tests/test_developer_value_comparison.py +90 -0
- agent_wiki_cli-2.4.0/tests/test_developer_value_complete_workflow.py +103 -0
- agent_wiki_cli-2.4.0/tests/test_developer_value_composition.py +927 -0
- agent_wiki_cli-2.4.0/tests/test_developer_value_corpus.py +406 -0
- agent_wiki_cli-2.4.0/tests/test_developer_value_cost_recorder.py +941 -0
- agent_wiki_cli-2.4.0/tests/test_developer_value_evaluate.py +230 -0
- agent_wiki_cli-2.4.0/tests/test_developer_value_evidence_reconciliation.py +656 -0
- agent_wiki_cli-2.4.0/tests/test_developer_value_frozen_changes.py +196 -0
- agent_wiki_cli-2.4.0/tests/test_developer_value_guide_review.py +490 -0
- agent_wiki_cli-2.4.0/tests/test_developer_value_historical_triage.py +261 -0
- agent_wiki_cli-2.4.0/tests/test_developer_value_measure.py +235 -0
- agent_wiki_cli-2.4.0/tests/test_developer_value_packed_experiment.py +398 -0
- agent_wiki_cli-2.4.0/tests/test_developer_value_resume.py +415 -0
- agent_wiki_cli-2.4.0/tests/test_developer_value_retrieval_experiment.py +524 -0
- agent_wiki_cli-2.4.0/tests/test_developer_value_search_orientation.py +647 -0
- agent_wiki_cli-2.4.0/tests/test_developer_value_search_route.py +775 -0
- agent_wiki_cli-2.4.0/tests/test_developer_value_triage_acceptance.py +692 -0
- agent_wiki_cli-2.4.0/tests/test_developer_value_triage_oracle.py +330 -0
- agent_wiki_cli-2.4.0/tests/test_developer_value_triage_workflow_gate.py +591 -0
- agent_wiki_cli-2.4.0/tests/test_developer_value_workflow_oracles.py +121 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_documentation_dogfood.py +7 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_documentation_queries.py +6 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_documentation_wiki_input.py +1 -1
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_extract.py +6 -1
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_extractor_inventory_contracts.py +3 -0
- agent_wiki_cli-2.4.0/tests/test_flow_overview.py +229 -0
- agent_wiki_cli-2.4.0/tests/test_flow_overview_receiving.py +396 -0
- agent_wiki_cli-2.4.0/tests/test_freshness_wording.py +76 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_governance_reconciliation.py +15 -8
- agent_wiki_cli-2.4.0/tests/test_guide_landing_preservation.py +96 -0
- agent_wiki_cli-2.4.0/tests/test_implementation_evidence.py +799 -0
- agent_wiki_cli-2.4.0/tests/test_implementation_integration.py +313 -0
- agent_wiki_cli-2.4.0/tests/test_implementation_read_view.py +475 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_instruction_ownership.py +32 -3
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_commands.py +1 -1
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_observability.py +1 -1
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_queries.py +3 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_query_adapters.py +1 -1
- agent_wiki_cli-2.4.0/tests/test_knowledge_validation_receipt.py +249 -0
- agent_wiki_cli-2.4.0/tests/test_knowledge_validation_receiving.py +376 -0
- agent_wiki_cli-2.4.0/tests/test_maintenance_interfaces.py +351 -0
- agent_wiki_cli-2.4.0/tests/test_maintenance_lifecycle.py +400 -0
- agent_wiki_cli-2.4.0/tests/test_maintenance_manifest.py +394 -0
- agent_wiki_cli-2.4.0/tests/test_maintenance_moves.py +254 -0
- agent_wiki_cli-2.4.0/tests/test_maintenance_operations.py +239 -0
- agent_wiki_cli-2.4.0/tests/test_maintenance_preservation.py +412 -0
- agent_wiki_cli-2.4.0/tests/test_maintenance_queue.py +514 -0
- agent_wiki_cli-2.4.0/tests/test_maintenance_read_projections.py +319 -0
- agent_wiki_cli-2.4.0/tests/test_maintenance_reconciliation.py +504 -0
- agent_wiki_cli-2.4.0/tests/test_maintenance_state.py +408 -0
- agent_wiki_cli-2.4.0/tests/test_maintenance_status.py +403 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_managed_reference_topics.py +4 -2
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_mcp.py +3 -0
- agent_wiki_cli-2.4.0/tests/test_migration_ignore_transition.py +104 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_native_skill_preflight_and_reanchor.py +1 -1
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_package_metadata.py +1 -1
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_public_docs_vocabulary.py +116 -0
- agent_wiki_cli-2.4.0/tests/test_python_binding_adversaries.py +1339 -0
- agent_wiki_cli-2.4.0/tests/test_python_binding_state_growth.py +264 -0
- agent_wiki_cli-2.4.0/tests/test_python_constructor_bindings.py +1213 -0
- agent_wiki_cli-2.4.0/tests/test_python_constructor_control_flow.py +380 -0
- agent_wiki_cli-2.4.0/tests/test_python_constructor_resolution.py +614 -0
- agent_wiki_cli-2.4.0/tests/test_python_implementation.py +662 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_release_workflows.py +66 -4
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_schema.py +15 -15
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_schema_context_baselines.py +6 -3
- agent_wiki_cli-2.4.0/tests/test_search_discovery.py +348 -0
- agent_wiki_cli-2.4.0/tests/test_search_discovery_capture.py +323 -0
- agent_wiki_cli-2.4.0/tests/test_search_discovery_interfaces.py +97 -0
- agent_wiki_cli-2.4.0/tests/test_search_discovery_route.py +290 -0
- agent_wiki_cli-2.4.0/tests/test_search_lexical.py +171 -0
- agent_wiki_cli-2.4.0/tests/test_search_source_interfaces.py +399 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_skill_policy_routes.py +1 -1
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_source_selection.py +2 -2
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_storage_followup_controls.py +4 -4
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_sync.py +2 -2
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_sync_manifest.py +1 -1
- agent_wiki_cli-2.4.0/tests/test_task_adoption_diagnostics.py +58 -0
- agent_wiki_cli-2.4.0/tests/test_task_adoption_recipes.py +356 -0
- agent_wiki_cli-2.4.0/tests/test_task_compact.py +274 -0
- agent_wiki_cli-2.4.0/tests/test_task_compact_receiving.py +700 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_task_context_v2.py +162 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_validated_knowledge_reuse.py +9 -2
- agent_wiki_cli-2.3.2/docs/native-agent-workflow.md +0 -161
- agent_wiki_cli-2.3.2/src/llm_wiki_cli/commands/task_cmd.py +0 -35
- agent_wiki_cli-2.3.2/src/llm_wiki_cli/extractors/python_bindings.py +0 -366
- agent_wiki_cli-2.3.2/src/llm_wiki_cli/services/maintenance_queue.py +0 -298
- agent_wiki_cli-2.3.2/src/llm_wiki_cli/services/python_calls.py +0 -176
- agent_wiki_cli-2.3.2/src/llm_wiki_cli/services/search_service.py +0 -104
- agent_wiki_cli-2.3.2/src/llm_wiki_cli/skills/native-coding/SKILL.md +0 -42
- agent_wiki_cli-2.3.2/tests/test_maintenance_queue.py +0 -225
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/LICENSE +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/MANIFEST.in +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/README.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/docs/native-knowledge-provider.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/docs/security-model.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/docs/standalone-documentation.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/examples/plugins/documentation-hooks/README.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/examples/plugins/documentation-hooks/detectors.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/examples/plugins/documentation-hooks/llm-wiki-plugin.json +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/examples/plugins/documentation-hooks/styles.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/release_build_backend.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/setup.cfg +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/agent_wiki_cli.egg-info/dependency_links.txt +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/agent_wiki_cli.egg-info/entry_points.txt +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/agent_wiki_cli.egg-info/requires.txt +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/agent_wiki_cli.egg-info/top_level.txt +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/__init__.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/api_diff_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/bootstrap_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/bump_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/ci_check_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/context_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/docs_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/doctor_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/extract_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/generate_prompt_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/hook_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/init_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/install_ci_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/install_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/knowledge_storage_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/lint_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/mcp_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/metrics_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/obsidian_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/plugins_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/prepare_extractors_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/query_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/queue_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/release_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/review_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/site_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/skills_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/status_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/team_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/trigger_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/uninstall_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/commands/upgrade_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/config.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/eval_lite/__init__.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/eval_lite/planner.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/examples/plugins/documentation-hooks/README.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/examples/plugins/documentation-hooks/detectors.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/examples/plugins/documentation-hooks/llm-wiki-plugin.json +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/examples/plugins/documentation-hooks/styles.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/extractors/__init__.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/extractors/common.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/extractors/fastapi_contracts.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/extractors/go_extractor.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/extractors/go_scripts/go.mod +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/extractors/go_scripts/main.go +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/extractors/haskell_extractor.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/extractors/haskell_scripts/Inventory.hs +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/extractors/haskell_scripts/Json.hs +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/extractors/haskell_scripts/Main.hs +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/extractors/haskell_scripts/Parser.hs +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/extractors/haskell_scripts/Paths.hs +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/extractors/python_contracts.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/extractors/rust_extractor.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/extractors/rust_scripts/Cargo.lock +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/extractors/rust_scripts/Cargo.toml +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/extractors/rust_scripts/src/main.rs +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/extractors/ts_extractor.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/extractors/ts_scripts/extract.js +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/extractors/ts_scripts/package-lock.json +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/extractors/ts_scripts/package.json +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/py.typed +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/schemas/__init__.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/schemas/llm-wiki-knowledge-object-v1.schema.json +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/schemas/llm-wiki-knowledge-pack-index-v1.schema.json +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/schemas/llm-wiki-knowledge-pack-index-v2.schema.json +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/schemas/llm-wiki-knowledge-v2.schema.json +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/schemas/llm-wiki-knowledge-v3.schema.json +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/schemas/llm-wiki-knowledge-v4.schema.json +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/schemas/llm-wiki-manifest-catalog-v1.schema.json +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/schemas/llm-wiki-manifest-v6.schema.json +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/__init__.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/analysis_capture.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/analysis_compatibility.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/api_contracts.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/api_diff.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/bootstrap_service.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/calibration/__init__.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/calibration/broker.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/calibration/contracts.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/calibration/controller.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/calibration/host_broker.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/canonical_json.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/canonical_pages.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/capability_diagnostics.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/change_selection.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/ci_installer.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/ci_report.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/circuit_breaker.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/concept_identity.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/context_budget.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/context_knowledge_contract.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/data_flow.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/dependencies.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/dependency_versions.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/diagrams.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/documentation_calibration.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/documentation_calibration_broker.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/documentation_calibration_controller.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/documentation_calibration_host_broker.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/documentation_claim_evidence.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/documentation_model_policy.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/documentation_policy.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/documentation_review.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/documentation_run/__init__.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/documentation_run/contracts.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/documentation_run/dependencies.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/documentation_run/export.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/documentation_run/integrity.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/documentation_run/packet.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/documentation_run/prepare.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/documentation_run/record.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/documentation_run/refresh.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/documentation_run/schema.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/documentation_run/verify.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/documentation_run/workspace.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/extraction_jobs.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/extractor_helpers.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/go_calls.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/health_contract.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/health_details.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/health_policy.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/helper_preparation.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/immutable.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/impact.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/imports.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/infrastructure_inventory.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/infrastructure_sync.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/inventory_cache.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/knowledge_audit.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/knowledge_coverage.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/knowledge_envelope.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/knowledge_links.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/knowledge_maintenance.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/knowledge_packs.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/knowledge_projection.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/knowledge_reuse.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/knowledge_storage_diagnostics.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/knowledge_storage_io.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/knowledge_stream_audit.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/knowledge_verification.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/legacy_hooks.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/lockfile.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/markdown_sections.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/metrics.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/module_maps.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/obsidian.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/packages.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/paths.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/plugin_samples.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/plugins.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/progress.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/protected_artifacts.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/python_imports.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/python_observations.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/python_stdlib.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/redaction.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/relationships.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/rendering_lifecycle.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/request_json.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/resource_diagnostics.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/review_service.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/runtime_output.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/search_rank.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/section_ownership.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/secure_file.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/site_export.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/site_html_check.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/skills.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/source_selection.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/storage_receipts.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/storage_sort.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/storage_spool.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/sync_analysis.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/sync_retained_links.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/sync_transition_execution.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/sync_transitions.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/task_contract.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/team.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/token_counting.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/validation.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/verification_contracts.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/versioning.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/wiki_git_policy.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/wiki_lifecycle.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/wiki_media.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/wiki_scaffold.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/wiki_surface.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/services/wiki_surface_index.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/agent-docs/SKILL.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/agent-docs/reference.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/attack-surface/SKILL.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/attack-surface/reference.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/dep-audit/SKILL.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/dep-audit/reference.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/dep-vuln-triage/SKILL.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/dep-vuln-triage/reference.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/doc-hub/SKILL.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/doc-hub/reference.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/doc-review/SKILL.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/impact-analysis/SKILL.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/impact-analysis/reference.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/infra-review/SKILL.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/native-coding/profile.json +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/onboarding-guide/SKILL.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/onboarding-guide/reference.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/publish-docs/SKILL.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/publish-docs/reference.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/usage-examples/SKILL.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/usage-examples/reference.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/user-docs-author/SKILL.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/user-docs-author/reference.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/wiki-bootstrap/SKILL.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/wiki-bootstrap/reference.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/wiki-reference/SKILL.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/wiki-reference/reference.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/wiki-reference/references/extractors-dependencies.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/wiki-reference/references/governance.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/wiki-reference/references/publishing.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/wiki-reference/references/repository-handoff.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/wiki-reference/references/resources-context.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/wiki-reference/references/surfaces-naming.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/wiki-semantic-enhance/SKILL.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/wiki-semantic-enhance/reference.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/wiki-sync/SKILL.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/src/llm_wiki_cli/skills/wiki-sync/reference.md +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_action_runtimes.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_analysis_qualification.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_api_contracts.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_api_diff.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_architecture_layers.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_artifact_fixture_clock.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_bandit_decision.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_bandit_probe_metadata.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_bandit_runner.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_bootstrap_api_contracts.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_bump.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_calibration_cli.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_calibration_isolation.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_capability_diagnostics.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_change_selection.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_ci_check.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_ci_runtime_output.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_ci_toolchain_setup.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_ci_workflow_wrapper.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_circuit_breaker.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_cli.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_cli_error_streams.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_concept_identity.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_config.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_context_budget.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_context_integration.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_context_knowledge_contract.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_context_knowledge_runtime.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_context_packet.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_context_packet_knowledge.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_context_session.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_core_check_performance.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_core_shard_runner.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_core_shard_workflow.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_core_shards.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_data_flow.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_dep_vuln_triage_skill.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_dependencies.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_dependencies_external.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_dependency_audit.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_dependency_downloads.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_dependency_setup_probe.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_dependency_setup_workflow.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_dependency_version_details.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_diagrams.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_docker_bootstrap.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_docker_extract.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_docker_lint.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_docs_cli.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_doctor.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_documentation_adversarial.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_documentation_calibration.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_documentation_calibration_broker.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_documentation_calibration_controller.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_documentation_calibration_host_broker.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_documentation_calibration_oci_integration.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_documentation_claim_evidence.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_documentation_control_integrity.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_documentation_input_recheck.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_documentation_model_policy.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_documentation_native.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_documentation_native_lifecycle.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_documentation_prepare_transaction.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_documentation_projection_policy.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_documentation_protocol.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_documentation_refresh_continuation.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_documentation_review.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_documentation_run_fixtures.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_documentation_worklist.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_documentation_workspace.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_e2e.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_enriched_projection_resilience.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_entrypoints.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_eval_lite.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_examples.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_extract_api_contracts.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_extract_data_flow_details.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_extractor_helpers.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_filesystem_guard.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_filesystem_guard_windows.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_filesystem_guard_windows_model.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_generate_prompt.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_generated_relationship_pages.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_github_action.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_github_action_shell.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_go_calls.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_go_extract.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_graph_section_end_to_end.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_guarded_read_metadata.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_haskell_extract.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_health_details.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_helper_packaging_parity.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_helper_preparation.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_hook.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_hosted_evidence.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_impact.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_imports.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_infra_review_skill.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_infrastructure_inventory.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_infrastructure_sync.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_init.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_install.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_install_ci.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_inventory_cache.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_io.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_artifacts.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_benchmark.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_cmd.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_compatibility.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_consumption.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_contract.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_coverage.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_envelope.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_evidence.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_freshness.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_generation.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_governance.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_graph.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_hardening.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_health_refresh.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_index.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_links.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_lint.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_loader.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_maintenance.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_model.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_packs.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_performance.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_producer_languages.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_projection.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_projection_e2e.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_reuse.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_scale.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_storage.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_storage_artifacts.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_storage_lifecycle.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_knowledge_verification_view.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_lint.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_llm_wiki_convergence_script.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_llm_wiki_convergence_workflow.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_lockfile.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_manifest_storage.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_markdown_sections.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_mcp_probe.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_mcp_sdk.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_metrics.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_migrate.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_module_maps.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_multilanguage_wiki.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_native_inspection.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_native_knowledge_semantics_docs.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_native_query_boundaries.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_native_reduction_contracts.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_native_workflow_baseline.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_native_workflow_codex_host.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_native_workflow_executable.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_native_workflow_oracles.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_native_workflow_scenarios.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_native_workflow_trace.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_navigation_layouts.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_obsidian.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_optimization_evidence.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_optimization_measurements.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_package_validation.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_packages.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_packet_field_policy.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_paths.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_plugin_sample.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_plugins.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_policy_activation.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_policy_renewal.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_policy_source_freeze.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_progress.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_protected_artifacts.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_protocol_registry.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_provider_conformance.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_provisioning_failures.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_public_docs_performance.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_publishing_hub_attack_contracts.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_pytest_portability.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_python_call_bindings.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_python_import_scopes.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_python_observation_cache.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_python_source_inventory.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_python_typed_dicts.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_qualification_automation.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_qualified_context_acceptance.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_quality_workflows.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_readonly_subprocess_stdin.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_redaction.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_reference_skill_verifier.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_relationships.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_release.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_release_automation_workflow.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_release_build_backend.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_release_dogfood.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_release_qualification.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_release_static_checks.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_release_supply_chain.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_rendering_lifecycle.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_resource_diagnostics.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_route_projection_regressions.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_runtime_output.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_rust_extract.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_search_rank.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_section_ownership.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_secure_file.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_site_export.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_site_knowledge_metadata.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_site_root_identity.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_skill_contracts.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_skill_contracts_all.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_skill_ownership_boundaries.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_skills.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_source_snapshot.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_static_quality_architecture.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_status.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_storage_locality.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_storage_performance.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_surface_initialization.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_sync_analysis.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_sync_api_contracts.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_sync_missing_pages.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_sync_no_plugins.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_sync_page_transitions.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_sync_retained_links.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_sync_runtime_regressions.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_sync_transition_execution.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_sync_transitions.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_task_context.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_team.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_team_policy_regressions.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_trigger.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_ts_extract.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_typed_graph_queries.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_ubuntu_shadow.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_ubuntu_suites.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_uninstall.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_upgrade.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_validation.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_verification_contracts.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_verified_bug_migrations.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_versioning.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_wiki_git_policy.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_wiki_helper_cache.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_wiki_integrity_action.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_wiki_lifecycle.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_wiki_reference_skill.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_wiki_surface.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_wiki_surface_index.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_wiki_sync_cleanup.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_workflow_contracts.py +0 -0
- {agent_wiki_cli-2.3.2 → agent_wiki_cli-2.4.0}/tests/test_workflow_interfaces.py +0 -0
|
@@ -339,8 +339,8 @@ wiki checks, trusted plugin validation, or team-owned review policy.
|
|
|
339
339
|
Use `fail-on: unhealthy` to allow degraded-but-usable knowledge while blocking
|
|
340
340
|
mixed snapshots, invalid governance, confirmed stale concepts, and invalid
|
|
341
341
|
verification receipts. Use `fail-on: degraded` when any degraded result must
|
|
342
|
-
block the job. `strict: "true"` also classifies indeterminate or
|
|
343
|
-
|
|
342
|
+
block the job. `strict: "true"` also classifies indeterminate or source-byte
|
|
343
|
+
drift as unhealthy. Replace `<FULL_RELEASE_COMMIT_SHA>` with the full
|
|
344
344
|
40-character SHA of an immutable released commit supporting v4; never use a
|
|
345
345
|
branch or tag for a protected workflow.
|
|
346
346
|
|
|
@@ -12,8 +12,8 @@ task detector with Mermaid styling.
|
|
|
12
12
|
| Task | Commands |
|
|
13
13
|
|---|---|
|
|
14
14
|
| Set up a wiki | [init](#init), [prepare-extractors](#prepare-extractors), [bootstrap](#bootstrap) |
|
|
15
|
-
| Maintain and diagnose | [sync](#sync), [lint / ci-check](#lint-and-ci-check), [doctor](#doctor), [queue](#queue) |
|
|
16
|
-
| Read and analyze | [extract](#extract), [context](#context), [source integration](#codebase-source-integration), [search](#search), [review](#review), [api-diff](#api-diff) |
|
|
15
|
+
| Maintain and diagnose | [sync](#sync), [lint / ci-check](#lint-and-ci-check), [doctor](#doctor), [queue](#queue), [maintenance](#maintenance) |
|
|
16
|
+
| Read and analyze | [extract](#extract), [context](#context), [task-context](#task-context), [source integration](#codebase-source-integration), [search](#search), [review](#review), [api-diff](#api-diff) |
|
|
17
17
|
| Work with agents | [generate-prompt](#generate-prompt), [MCP](#mcp), [skills](#skills), [manual triggers](automation.md#manual-agent-triggers) |
|
|
18
18
|
| Author and export docs | [docs](#docs), [site](#site), [Obsidian](#obsidian) |
|
|
19
19
|
| Extend and collaborate | [install / plugins](#install-and-plugins), [team](#team), [knowledge](#knowledge) |
|
|
@@ -397,8 +397,15 @@ description/example, `Annotated`, validator/config, enum-member, literal, and
|
|
|
397
397
|
type-alias metadata without importing Pydantic or application modules.
|
|
398
398
|
Python call targets follow lexical bindings. Builtins remain file-less calls;
|
|
399
399
|
local declarations, aliases, and imports resolve only when their targets are
|
|
400
|
-
justified.
|
|
401
|
-
|
|
400
|
+
justified. Uniquely resolved local constructors, assigned constructor instances
|
|
401
|
+
and explicit imported class aliases can identify method callers. Factories,
|
|
402
|
+
shadowed or conflicting bindings, receiver/member mutations and uncertain
|
|
403
|
+
control-flow paths remain located unresolved observations. Captured module, class
|
|
404
|
+
and receiver namespace mutations can invalidate a target. Resolution uses lexical
|
|
405
|
+
scope and captured evaluation order, including conditional and short-circuit
|
|
406
|
+
expressions; it does not establish runtime execution. An absent edge never
|
|
407
|
+
proves that no runtime caller exists. Uncertain closures do not link to unrelated
|
|
408
|
+
same-named functions. Optional `call_bindings` entries parallel a
|
|
402
409
|
callable's `calls` list, `python_bindings` describes module bindings, and
|
|
403
410
|
`main_block_call_bindings` parallels guarded process-entry calls. Older
|
|
404
411
|
inventories may omit these fields.
|
|
@@ -741,7 +748,7 @@ The v3 `health_details` object adds:
|
|
|
741
748
|
and generation-option hashes. Comparison still uses exact producer versions;
|
|
742
749
|
`analysis_contract: null` means no cross-version compatibility contract is available.
|
|
743
750
|
- Disjoint `modeled` and `unmodeled` counts whose sum is `total`. Modeled outcomes
|
|
744
|
-
distinguish current,
|
|
751
|
+
distinguish current, source-byte change with unchanged recorded structure, changed/missing source, incompatible
|
|
745
752
|
basis and unknown evidence. Missing recorded evidence does not make a modeled
|
|
746
753
|
concept unmodeled.
|
|
747
754
|
- Separate evaluation, comparison-attempt and compatible-content counts.
|
|
@@ -766,11 +773,11 @@ resulting indeterminate drift as unhealthy.
|
|
|
766
773
|
| Exit code | Status | Meaning |
|
|
767
774
|
|---|---|---|
|
|
768
775
|
| `0` | `healthy` | The committed snapshot is coherent and no health downgrade was found. |
|
|
769
|
-
| `1` | `degraded` | Knowledge remains usable, but availability is degraded, freshness was not evaluated, a review expired, or drift is indeterminate
|
|
776
|
+
| `1` | `degraded` | Knowledge remains usable, but availability is degraded, freshness was not evaluated, a review expired, or drift is indeterminate or source bytes changed while recorded structure matched. |
|
|
770
777
|
| `2` | `unhealthy` | A mixed snapshot, invalid governance or receipt, unsupported state, or confirmed stale concept was found. |
|
|
771
778
|
| `3` | `absent` | Knowledge artifacts are absent or the wiki has not been initialized. |
|
|
772
779
|
|
|
773
|
-
`--strict` promotes indeterminate and
|
|
780
|
+
`--strict` promotes indeterminate and source-byte drift from degraded to
|
|
774
781
|
unhealthy. It does not change the JSON shape. Shell automation should capture
|
|
775
782
|
the JSON before applying its own threshold because codes `1` through `3` are
|
|
776
783
|
health results, not serialization failures. The supported Python API exposes
|
|
@@ -983,6 +990,51 @@ counter. Python callers use `llm_wiki_cli.api.build_budgeted_context(...)` with
|
|
|
983
990
|
a trusted counter implementing `identity`, `exact`, and `count(text)`; the
|
|
984
991
|
result contains the emitted `rendered` text, `accounting`, and `ok` status.
|
|
985
992
|
|
|
993
|
+
## `task-context`
|
|
994
|
+
|
|
995
|
+
Gather evidence for explicit task requirements. Prefer task request v2 when
|
|
996
|
+
supported; task v1 and legacy `context` calls retain their existing contracts.
|
|
997
|
+
Save a request outside the source tree and use source-root-relative selectors.
|
|
998
|
+
For example, with `src/app.py` defining `limit`, save `source-task.json`:
|
|
999
|
+
|
|
1000
|
+
```json
|
|
1001
|
+
{
|
|
1002
|
+
"schema_version": "llm-wiki-task-request/v2",
|
|
1003
|
+
"kind": "contract-change",
|
|
1004
|
+
"requirements": [
|
|
1005
|
+
{"id": "contract", "facet": "source-contract", "selector": "app.py:limit"}
|
|
1006
|
+
],
|
|
1007
|
+
"options": {"knowledge_mode": "off", "budget_tokens": 32000}
|
|
1008
|
+
}
|
|
1009
|
+
```
|
|
1010
|
+
|
|
1011
|
+
```bash
|
|
1012
|
+
llm-wiki task-context --request source-task.json --src-dir src --wiki-dir wiki
|
|
1013
|
+
llm-wiki task-context --request source-task.json --src-dir src --wiki-dir wiki --view compact-v1 --view-budget-tokens 32000 --canonical-output receipts/source-context.json
|
|
1014
|
+
```
|
|
1015
|
+
|
|
1016
|
+
Canonical text is the default. Compact delivery is opt-in and needs a separate
|
|
1017
|
+
host-accessible canonical receipt outside both roots. Keep the request, profile,
|
|
1018
|
+
selection, tokenizer and output paths distinct. `--view-budget-tokens` chooses
|
|
1019
|
+
its separate presentation budget; no fixed token saving or small-budget fit is
|
|
1020
|
+
promised. Include the selected view once in the coding host.
|
|
1021
|
+
|
|
1022
|
+
Choose `knowledge_mode: "off"` only when no native evidence is required; this
|
|
1023
|
+
route works without a wiki. Native v2 requirements need explicitly adopted
|
|
1024
|
+
sharded or packed knowledge. Keep `required` mode and the native requirements
|
|
1025
|
+
when a read fails; a failure never authorizes bootstrap or migration.
|
|
1026
|
+
`snapshot` reads committed native evidence, while `selected` captures declared
|
|
1027
|
+
source scope. `--allow-full-inventory` permits an explicitly requested broader
|
|
1028
|
+
scan; it does not expand an empty selection automatically.
|
|
1029
|
+
|
|
1030
|
+
Request validation errors exit 2, workspace errors exit 1, and a minimum context
|
|
1031
|
+
that cannot fit exits 3 without partial context. A compact budget failure can
|
|
1032
|
+
retain a valid canonical receipt and leaves the view destination untouched.
|
|
1033
|
+
Facts, citations, gaps and static coverage remain qualified; a behavior
|
|
1034
|
+
requirement needs host verification. Session reuse is an optional Python/MCP
|
|
1035
|
+
interface with current input revalidation, not a general speedup guarantee.
|
|
1036
|
+
See [workflow recipes and limits](native-agent-workflow.md).
|
|
1037
|
+
|
|
986
1038
|
## Codebase source integration
|
|
987
1039
|
|
|
988
1040
|
For research or indexing systems that need codebase evidence without adopting
|
|
@@ -1854,8 +1906,11 @@ llm-wiki search "KnowledgeModelError" --kind entities
|
|
|
1854
1906
|
llm-wiki search "exact phrase" --mode substring
|
|
1855
1907
|
```
|
|
1856
1908
|
|
|
1857
|
-
Ranked mode
|
|
1858
|
-
|
|
1909
|
+
Ranked mode keeps exact page IDs, paths and defined symbols ahead of fuzzy
|
|
1910
|
+
candidates, then weights informative lexical terms, section roles, titles,
|
|
1911
|
+
paths and bounded inbound-link relevance. The default `ranked` mode and explicit
|
|
1912
|
+
`ranked-v2` mode use `ranking_version: "llm-wiki-search/lexical-v2"`;
|
|
1913
|
+
`--mode ranked-v1` explicitly retains the earlier policy. Results include scores, reasons,
|
|
1859
1914
|
snippets, content hashes, a corpus identity, and the ranking version. Stable
|
|
1860
1915
|
path ordering resolves ties. `--mode substring` retains the earlier
|
|
1861
1916
|
case-insensitive substring behavior and page ordering; MCP accepts the same
|
|
@@ -1871,10 +1926,26 @@ a larger value is requested. Blank queries and invalid limits exit `2`, leave
|
|
|
1871
1926
|
stdout empty, and print argument diagnostics to stderr in both output formats.
|
|
1872
1927
|
A valid query with no matches exits `0` with empty results.
|
|
1873
1928
|
|
|
1874
|
-
JSON responses from both the CLI and MCP disclose `mode` (`ranked
|
|
1875
|
-
`substring`), `total`, `returned`, and
|
|
1929
|
+
JSON responses from both the CLI and MCP disclose `mode` (`ranked`,
|
|
1930
|
+
`ranked-v1`, `ranked-v2` or `substring`), `total`, `returned`, and
|
|
1931
|
+
`bounds.results`, including truncation.
|
|
1876
1932
|
Ranked scores and provenance remain specific to ranked mode.
|
|
1877
1933
|
|
|
1934
|
+
Source augmentation and qualification are explicit read choices:
|
|
1935
|
+
|
|
1936
|
+
```bash
|
|
1937
|
+
llm-wiki search "retry failure" --src-dir src --wiki-dir wiki --mode ranked-v2 --include-source
|
|
1938
|
+
llm-wiki search "retry failure" --src-dir src --wiki-dir wiki --discovery qualified-v1
|
|
1939
|
+
```
|
|
1940
|
+
|
|
1941
|
+
Source indexing requires a valid committed manifest and only reads mapped
|
|
1942
|
+
module sources inside the selected boundary. Qualified discovery groups the
|
|
1943
|
+
returned candidates by validated owner and preserves section, omission and
|
|
1944
|
+
recorded review details. It does not establish live source freshness or approve
|
|
1945
|
+
prose. Both choices have additional capture/revalidation costs. Select an exact
|
|
1946
|
+
candidate, inspect its source and qualifiers, and retain missing or contradictory
|
|
1947
|
+
evidence. See [qualified discovery](native-agent-workflow.md#choose-an-interface).
|
|
1948
|
+
|
|
1878
1949
|
## `queue`
|
|
1879
1950
|
|
|
1880
1951
|
Select advisory maintenance work for a managed wiki:
|
|
@@ -1907,6 +1978,63 @@ identities even if every item fits. Reports from versions without this field
|
|
|
1907
1978
|
have different identities. A valid advisory queue exits `0`, including when
|
|
1908
1979
|
there is no recommended work.
|
|
1909
1980
|
|
|
1981
|
+
The JSON report's `qualification.ordinary_review_custody` describes captured
|
|
1982
|
+
ordinary-review authority. Its `availability` is `ready`, `partial`,
|
|
1983
|
+
`unadopted` or `unavailable`; `durable_owner_available` identifies whether
|
|
1984
|
+
an ordinary-review owner was captured, and `live_evaluation_performed` reports
|
|
1985
|
+
whether its status was evaluated against live inputs. Partial, unadopted or
|
|
1986
|
+
unavailable custody does not establish completed review. Even a ready status or
|
|
1987
|
+
an empty queue leaves `source_prose_correctness` as `not-established`.
|
|
1988
|
+
Inspect the affected source and semantic prose; use explicit
|
|
1989
|
+
[ordinary review tracking](maintenance.md) when durable review is needed.
|
|
1990
|
+
An empty queue does not establish ordinary-review completion.
|
|
1991
|
+
|
|
1992
|
+
## `maintenance`
|
|
1993
|
+
|
|
1994
|
+
Ordinary review tracking is optional and independent of human governance and
|
|
1995
|
+
knowledge storage format. Start from a coherent wiki, explicitly adopt, and
|
|
1996
|
+
retain the complete recovery snapshot outside the source and wiki roots:
|
|
1997
|
+
|
|
1998
|
+
```bash
|
|
1999
|
+
llm-wiki maintenance adopt --src-dir src --wiki-dir wiki --recovery-dir maintenance-recovery
|
|
2000
|
+
llm-wiki maintenance status --src-dir src --wiki-dir wiki --format json
|
|
2001
|
+
llm-wiki maintenance status --src-dir src --wiki-dir wiki --snapshot --record-id RECORD_UUID
|
|
2002
|
+
```
|
|
2003
|
+
|
|
2004
|
+
Adoption makes existing tracked prose unreviewed and preserves authored content.
|
|
2005
|
+
The marker, maintenance manifest owner and knowledge projections belong to one
|
|
2006
|
+
committed set. Flat maintenance manifests use v7; `--manifest-format indexed-v8`
|
|
2007
|
+
explicitly selects bounded manifest storage. Upgrade all readers and writers
|
|
2008
|
+
before adopting. This does not adopt sharded or packed knowledge automatically.
|
|
2009
|
+
|
|
2010
|
+
Review the exact source and semantic section, then run the owning sync after
|
|
2011
|
+
the last prose edit. Capture current status for the selected record. Save its
|
|
2012
|
+
non-null `expected_basis` as `basis.json` outside both roots and substitute the
|
|
2013
|
+
actual record ID and captured state hash:
|
|
2014
|
+
|
|
2015
|
+
```bash
|
|
2016
|
+
llm-wiki maintenance acknowledge --src-dir src --wiki-dir wiki --record-id RECORD_UUID --expected-state-hash STATE_HASH --basis-file basis.json --actor-kind agent --actor-id documentation-agent
|
|
2017
|
+
```
|
|
2018
|
+
|
|
2019
|
+
Stale source, prose or state refuses acknowledgment. A repeated successful
|
|
2020
|
+
acknowledgment with the same actor/basis is idempotent. Later relevant changes
|
|
2021
|
+
reopen review, which survives sync and restarts. An agent or ordinary human
|
|
2022
|
+
actor records operational review; it neither grants human governance approval
|
|
2023
|
+
nor revives expired governance events. Snapshot status is historical, and
|
|
2024
|
+
read-only queue/context/MCP operations never acknowledge work.
|
|
2025
|
+
|
|
2026
|
+
A missing or corrupt adopted owner needs its matching complete recovery bundle;
|
|
2027
|
+
sync cannot reconstruct history from projections:
|
|
2028
|
+
|
|
2029
|
+
```bash
|
|
2030
|
+
llm-wiki maintenance recover --wiki-dir wiki --recovery-dir maintenance-recovery/committed --expected-adoption-id ADOPTION_UUID
|
|
2031
|
+
```
|
|
2032
|
+
|
|
2033
|
+
Use the retained adoption ID. Recovery refuses unrelated edits or newer work;
|
|
2034
|
+
prepared-adoption and captured-preimage retries need their explicit options.
|
|
2035
|
+
See [ordinary review and recovery](maintenance.md) for exact eligibility and
|
|
2036
|
+
Python/MCP interfaces.
|
|
2037
|
+
|
|
1910
2038
|
## `upgrade`
|
|
1911
2039
|
|
|
1912
2040
|
Refresh framework-managed artifacts in place.
|
|
@@ -0,0 +1,406 @@
|
|
|
1
|
+
# Native coding workflow
|
|
2
|
+
|
|
3
|
+
Use a provider whose CLI and Python API expose the task request, storage and
|
|
4
|
+
optional delivery interfaces you select. Check `llm-wiki task-context --help`
|
|
5
|
+
and `llm-wiki knowledge migrate --help` in each environment; a version number
|
|
6
|
+
alone does not establish support for every format.
|
|
7
|
+
|
|
8
|
+
For large native snapshots, [knowledge storage](knowledge-storage.md) describes
|
|
9
|
+
explicit sharded or packed storage adoption and task request v2 with selected validation.
|
|
10
|
+
Task request v1 retains its existing full-validation behavior.
|
|
11
|
+
|
|
12
|
+
Prefer task request v2 for compatible integrations. Canonical delivery stays
|
|
13
|
+
the default; compact views, sessions and source-augmented discovery are explicit
|
|
14
|
+
choices with their own limits and costs.
|
|
15
|
+
|
|
16
|
+
An explicit task request gathers qualified source and wiki evidence. The provider
|
|
17
|
+
reads and reports; your coding host decides what to include, edit, execute and
|
|
18
|
+
publish. Existing context calls retain their defaults.
|
|
19
|
+
|
|
20
|
+
## Choose an interface
|
|
21
|
+
|
|
22
|
+
| Operation | Python API | CLI | MCP |
|
|
23
|
+
|---|---|---|---|
|
|
24
|
+
| Ranked discovery | `search_wiki` | `search` | `search_wiki` |
|
|
25
|
+
| Advisory maintenance | `build_maintenance_queue` | `queue` | `get_maintenance_queue` |
|
|
26
|
+
| Exact query | `query_documentation` | `query --request FILE` | `query_documentation` |
|
|
27
|
+
| Complete output budget | `build_budgeted_context` | `context --request FILE` | `build_budgeted_context` |
|
|
28
|
+
| Task evidence | `build_task_context` | `task-context --request FILE` | `build_task_context` |
|
|
29
|
+
| Validated reuse | `open_context_session` | — | `open_context_session`, `read_context_session`, `hint_context_session`, `close_context_session` |
|
|
30
|
+
|
|
31
|
+
Search discovery preserves ranking reasons and corpus bounds. Exact queries use
|
|
32
|
+
the existing [native query contract](native-knowledge-provider.md). A maintenance
|
|
33
|
+
queue is advisory and never applies recommendations. Read its
|
|
34
|
+
`qualification.ordinary_review_custody` availability, owner and live-evaluation
|
|
35
|
+
fields before relying on ordinary-review history. Partial, unadopted or
|
|
36
|
+
unavailable custody remains a gap. Even a ready status or an empty queue does
|
|
37
|
+
not establish source/prose correctness or review completion; inspect the exact
|
|
38
|
+
source and prose and follow [ordinary review tracking](maintenance.md) when needed.
|
|
39
|
+
|
|
40
|
+
Ranked search weights informative terms and semantic sections, keeps exact page
|
|
41
|
+
and declaration matches before fuzzy candidates, and labels relaxed matches for
|
|
42
|
+
longer queries. The default `ranked` mode and explicit `ranked-v2` mode use
|
|
43
|
+
`ranking_version: "llm-wiki-search/lexical-v2"`. `--mode ranked-v1` retains
|
|
44
|
+
the earlier ranking policy;
|
|
45
|
+
`--mode substring` performs literal text matching. All results remain discovery
|
|
46
|
+
candidates and require exact inspection before a coding decision.
|
|
47
|
+
|
|
48
|
+
Source text indexing is an explicit read and cost choice:
|
|
49
|
+
|
|
50
|
+
```bash
|
|
51
|
+
llm-wiki search "retry failure" --src-dir src --wiki-dir wiki --mode ranked-v2 --include-source
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
It requires a valid committed manifest and indexes only its mapped module sources
|
|
55
|
+
inside the captured selection. Source snapshot validation and source-byte
|
|
56
|
+
rechecks have separate costs; snippets can include static code or error-message text without proving
|
|
57
|
+
runtime behavior. Narrow the selection when the declared indexing bounds cannot
|
|
58
|
+
fit. Reads never execute the application, install helpers or migrate storage.
|
|
59
|
+
|
|
60
|
+
To connect a symptom query to exact inspection, request qualified discovery:
|
|
61
|
+
|
|
62
|
+
```bash
|
|
63
|
+
llm-wiki search "retry failure" --src-dir src --wiki-dir wiki --discovery qualified-v1
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
The additional `discovery` response groups the returned candidates by validated
|
|
67
|
+
owner and retains each page and distinct narrative section. Groups cover only
|
|
68
|
+
the returned results; section omissions and limits remain explicit. Recorded
|
|
69
|
+
source and review information describes the captured state. It does not establish
|
|
70
|
+
live freshness, runtime behavior, semantic correctness or current approval.
|
|
71
|
+
Pending and contradictory prose remain visible as separate evidence.
|
|
72
|
+
|
|
73
|
+
Select a candidate explicitly, then pass its exact `path` to
|
|
74
|
+
`api.inspect_concept(path, src_dir="src", wiki_dir="wiki", live=False)`.
|
|
75
|
+
Continue with the resolved locator only when that response identifies one
|
|
76
|
+
concept. Missing, ambiguous or unavailable outcomes require investigation;
|
|
77
|
+
another fuzzy result cannot replace the selected identity automatically.
|
|
78
|
+
Use the resolved exact source, concept and section anchors in the native task
|
|
79
|
+
request below. Its compact view preserves unresolved requirements and bounds.
|
|
80
|
+
|
|
81
|
+
Qualified discovery uses bounded selected native reads where supported.
|
|
82
|
+
A wiki without committed native storage, or a valid unsupported layout within
|
|
83
|
+
the capture bounds, leaves
|
|
84
|
+
an explicit unavailable qualification and does not authorize adoption or
|
|
85
|
+
migration. Exceeding capture or output bounds aborts the read, as does missing
|
|
86
|
+
or inconsistent committed authority. Plain Markdown
|
|
87
|
+
pages can still be read by exact path. Discovery's recorded pending review is a
|
|
88
|
+
separate capture: selected task context reports its own maintenance scope and
|
|
89
|
+
may leave current review state unavailable. When review status is decisive,
|
|
90
|
+
re-read the corresponding record with `api.get_maintenance_status(...,
|
|
91
|
+
record_id=record_id, live=False)`; request a live status separately when an
|
|
92
|
+
actual current comparison is needed.
|
|
93
|
+
|
|
94
|
+
## Source-only task without a wiki
|
|
95
|
+
|
|
96
|
+
Choose this route when the task needs source evidence. It requires neither
|
|
97
|
+
bootstrap nor a wiki. In a new example workspace, create `src/app.py`:
|
|
98
|
+
|
|
99
|
+
```python
|
|
100
|
+
def limit(value: int = 3) -> int:
|
|
101
|
+
return value
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
Save this request as `source-task.json` outside `src`:
|
|
105
|
+
|
|
106
|
+
```json
|
|
107
|
+
{
|
|
108
|
+
"schema_version": "llm-wiki-task-request/v2",
|
|
109
|
+
"kind": "contract-change",
|
|
110
|
+
"requirements": [
|
|
111
|
+
{"id": "contract", "facet": "source-contract", "selector": "app.py:limit"}
|
|
112
|
+
],
|
|
113
|
+
"options": {"knowledge_mode": "off", "budget_tokens": 32000}
|
|
114
|
+
}
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
```bash
|
|
118
|
+
llm-wiki task-context --request source-task.json --src-dir src --wiki-dir wiki
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
Here `wiki` is an explicit in-project path that may be absent. `off` disables
|
|
122
|
+
native selection; `auto` is not the same no-wiki recipe. Selectors are relative
|
|
123
|
+
to `src`, so the declaration is `app.py:limit`, not `src/app.py:limit`.
|
|
124
|
+
The Python route produces and validates the same canonical evidence:
|
|
125
|
+
|
|
126
|
+
```python
|
|
127
|
+
import json
|
|
128
|
+
from pathlib import Path
|
|
129
|
+
from llm_wiki_cli import api
|
|
130
|
+
|
|
131
|
+
request = json.loads(Path("source-task.json").read_text(encoding="utf-8"))
|
|
132
|
+
result = api.build_task_context(request, src_dir="src", wiki_dir="wiki")
|
|
133
|
+
if result.ok:
|
|
134
|
+
payload = api.validate_task_context(result.rendered, request)
|
|
135
|
+
print(payload["coverage"])
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
Use your actual source root, configured selection and exact declaration instead
|
|
139
|
+
of the example paths. Reads do not create the source file, install helpers or
|
|
140
|
+
run the target project. One direct source read can be simpler for a tiny task.
|
|
141
|
+
|
|
142
|
+
## Native task with explicit storage adoption
|
|
143
|
+
|
|
144
|
+
Choose this route when a requirement needs committed concepts, semantic
|
|
145
|
+
sections or typed relationships. For a new wiki, explicitly select bounded
|
|
146
|
+
storage during authorized bootstrap:
|
|
147
|
+
|
|
148
|
+
```bash
|
|
149
|
+
llm-wiki bootstrap --src-dir src --wiki-dir wiki --knowledge-format sharded-v2
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
For an existing flat wiki, keep its current pages and complete snapshot. A task
|
|
153
|
+
v2 native read requires sharded or packed knowledge storage; a flat rejection
|
|
154
|
+
does not authorize migration.
|
|
155
|
+
|
|
156
|
+
For a captured valid flat model, the task CLI returns exit 2 with
|
|
157
|
+
`error.details.reason: "flat-native-adoption-required"` and an authorized
|
|
158
|
+
migration-preview next action. This identifies the storage prerequisite; it
|
|
159
|
+
does not audit the complete snapshot. Unknown or damaged roots receive no
|
|
160
|
+
adoption hint. Migration validates companion authority before applying.
|
|
161
|
+
|
|
162
|
+
With migration authorized, preview and apply it using an empty recovery directory
|
|
163
|
+
outside both `src` and `wiki`:
|
|
164
|
+
|
|
165
|
+
```bash
|
|
166
|
+
llm-wiki knowledge migrate --wiki-dir wiki --to sharded-v2 --dry-run --recovery-dir storage-recovery
|
|
167
|
+
llm-wiki knowledge migrate --wiki-dir wiki --to sharded-v2 --recovery-dir storage-recovery
|
|
168
|
+
llm-wiki knowledge storage-check --wiki-dir wiki --full
|
|
169
|
+
llm-wiki knowledge inspect-storage --wiki-dir wiki --selector page:modules/app.md --limit 10
|
|
170
|
+
llm-wiki doctor --capabilities --src-dir src --wiki-dir wiki --format json
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
Dry-run does not write a recovery snapshot. Apply retains the prior snapshot;
|
|
174
|
+
`storage-check --full` audits the result. Capability output can identify helper
|
|
175
|
+
or producer prerequisites; resolve those only with setup authorization. Upgrade
|
|
176
|
+
all readers and writers to support the selected schema before adoption.
|
|
177
|
+
|
|
178
|
+
Save this native snapshot request as `native-task.json`:
|
|
179
|
+
|
|
180
|
+
```json
|
|
181
|
+
{
|
|
182
|
+
"schema_version": "llm-wiki-task-request/v2",
|
|
183
|
+
"requirements": [
|
|
184
|
+
{"id": "concept", "facet": "concept", "selector": "llm-wiki://modules/app"}
|
|
185
|
+
],
|
|
186
|
+
"options": {"knowledge_mode": "required", "read_scope": "snapshot", "budget_tokens": 32000}
|
|
187
|
+
}
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
```bash
|
|
191
|
+
llm-wiki task-context --request native-task.json --src-dir src --wiki-dir wiki
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
This is committed snapshot evidence. It does not establish live source
|
|
195
|
+
currentness, prose approval or runtime behavior. Use `read_scope: "selected"`
|
|
196
|
+
and explicit source requirements when live source evidence is needed. Keep
|
|
197
|
+
native requirements and `required` mode when a native read fails; never turn
|
|
198
|
+
them into an `off` success. Missing, corrupt or unsupported roots require a
|
|
199
|
+
qualified failure and an authorized complete recovery, not hidden bootstrap.
|
|
200
|
+
For a failed storage migration, restore its retained complete snapshot:
|
|
201
|
+
|
|
202
|
+
```bash
|
|
203
|
+
llm-wiki knowledge recover-storage --wiki-dir wiki --recovery-dir storage-recovery --dry-run
|
|
204
|
+
llm-wiki knowledge recover-storage --wiki-dir wiki --recovery-dir storage-recovery
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
Storage recovery is bound to the original or target migration generation. It
|
|
208
|
+
refuses unrelated root edits, changed Markdown authority or newer committed
|
|
209
|
+
work. Restore an authorized matching complete snapshot when that eligibility
|
|
210
|
+
check fails; do not force a replacement.
|
|
211
|
+
|
|
212
|
+
Storage adoption is separate from optional
|
|
213
|
+
[ordinary review tracking](maintenance.md). A
|
|
214
|
+
`.llm-wiki-maintenance-adoption.json` marker requires its matching maintenance
|
|
215
|
+
owner. Restore missing or corrupt adopted authority through the complete
|
|
216
|
+
[maintenance recovery route](maintenance.md#recover-complete-authority) before
|
|
217
|
+
sync; manifestless seeding cannot reconstruct its history. `indexed-v8`
|
|
218
|
+
requires that adopted owner and changes manifest storage, not flat knowledge
|
|
219
|
+
storage. Neither kind of adoption happens during a read.
|
|
220
|
+
|
|
221
|
+
For an owner adopted with a retained `maintenance-recovery` directory, use its
|
|
222
|
+
actual adoption ID and complete committed snapshot:
|
|
223
|
+
|
|
224
|
+
```bash
|
|
225
|
+
llm-wiki maintenance recover --wiki-dir wiki --recovery-dir maintenance-recovery/committed --expected-adoption-id ADOPTION_UUID
|
|
226
|
+
```
|
|
227
|
+
|
|
228
|
+
Replace `ADOPTION_UUID` with the retained marker's actual ID. A storage-migration
|
|
229
|
+
recovery copy is not a substitute for this matching complete maintenance bundle.
|
|
230
|
+
|
|
231
|
+
## Interpret evidence requirements
|
|
232
|
+
|
|
233
|
+
Task kinds are `orientation`, `bug-diagnosis`, `contract-change` and `refactor`.
|
|
234
|
+
Anchors have a `kind` (`source`, `symbol`, `wiki` or `concept`) and a `value`.
|
|
235
|
+
Source selectors are portable relative paths. Declaration coordinates may include
|
|
236
|
+
an exact owner and occurrence, such as `retry.py:Client.retry#2`. An unqualified
|
|
237
|
+
name can remain ambiguous. An optional `task_ref` is a host label, separate from
|
|
238
|
+
the provider's content identity.
|
|
239
|
+
|
|
240
|
+
Requirements declare `id`, `facet`, `selector` and optionally `criterion`
|
|
241
|
+
(`present` or `complete`). Supported facets are `source-contract`, `callers`,
|
|
242
|
+
`callees`, `concept`, `semantic-section`, `typed-relationships`, `entrypoint` and
|
|
243
|
+
`dependency`. A `behavior` requirement reports that host verification is needed.
|
|
244
|
+
Static observations cannot establish complete runtime behavior or prove the
|
|
245
|
+
absence of callers. Coverage concerns emitted evidence; it does not mean the task
|
|
246
|
+
is solved or that prose is correct.
|
|
247
|
+
|
|
248
|
+
Python method callers can resolve through uniquely justified local constructors,
|
|
249
|
+
assigned constructor instances and explicit imported class aliases. Factories,
|
|
250
|
+
shadowed/conflicting bindings, receiver mutations and uncertain loop or exception
|
|
251
|
+
paths stay located unresolved evidence. Captured module, class and receiver
|
|
252
|
+
namespace mutations can invalidate a target. Resolution uses lexical scope and
|
|
253
|
+
captured evaluation order, including conditional and short-circuit expressions.
|
|
254
|
+
Inspect exact source before relying on
|
|
255
|
+
a candidate; neither a missing edge nor a non-truncated response proves runtime
|
|
256
|
+
completeness.
|
|
257
|
+
|
|
258
|
+
Source bytes, recorded declaration structure and captured Python executable
|
|
259
|
+
syntax are separate observations. A body or default edit can change executable
|
|
260
|
+
syntax while an unrelated declaration remains unchanged. Matching syntax does
|
|
261
|
+
not prove behavior, dependency stability or authored prose correctness. Other
|
|
262
|
+
languages and legacy artifacts may lack executable comparison evidence. The
|
|
263
|
+
legacy `nonsemantic-source-change` value means “Source changed; recorded
|
|
264
|
+
structure unchanged; behavior not evaluated.” Review tracking requires its own
|
|
265
|
+
explicit adoption; an untracked review state does not mean approval.
|
|
266
|
+
|
|
267
|
+
Results preserve a captured basis, citations, qualifiers and every requirement's
|
|
268
|
+
gap. Follow-ups contain bounded selectors and reasons for the host to consider.
|
|
269
|
+
JSON serialization keeps unclosed source Markdown fences inside their data fields.
|
|
270
|
+
|
|
271
|
+
## Explicit profiles and work limits
|
|
272
|
+
|
|
273
|
+
Use `api.load_workflow_profile(FILE)` or pass a `WorkflowProfile`/profile mapping.
|
|
274
|
+
The profile schema is `llm-wiki-workflow-profile/v1` with a `settings` object.
|
|
275
|
+
Profiles are never discovered automatically. The bundled `native-coding` skill
|
|
276
|
+
includes a starting profile; adopt it explicitly with the existing skills lifecycle.
|
|
277
|
+
|
|
278
|
+
Defaults use native `auto` mode, freshness preference, selected source reads,
|
|
279
|
+
estimated counting, 32,000 output tokens, 64 captured inputs, 8 MiB each of source
|
|
280
|
+
and wiki inputs, four read rounds and four follow-up proposals. A trusted
|
|
281
|
+
`WorkflowPolicy` constrains scopes and limits. Request `options` can choose
|
|
282
|
+
per-call settings within those ceilings. Neither profiles nor task text can
|
|
283
|
+
change roots, load tokenizer paths, prepare helpers, enable plugins or execute
|
|
284
|
+
commands. Source selection and helper configuration remain host arguments.
|
|
285
|
+
|
|
286
|
+
`snapshot` reads wiki evidence without extracting source. `selected` captures
|
|
287
|
+
explicit source coordinates and relevant selection/package/infrastructure inputs.
|
|
288
|
+
`full-inventory` requires permission from the host policy and an explicit request.
|
|
289
|
+
An empty selection never expands into a full scan. Questions outside the permitted
|
|
290
|
+
scope return a gap and a proposed next read.
|
|
291
|
+
|
|
292
|
+
Request text is limited to 16 KiB, coordinates to 4 KiB, and anchors/requirements
|
|
293
|
+
to 100 each. CLI JSON input is limited to 1 MiB and rejects duplicate keys,
|
|
294
|
+
unknown fields, unsupported versions and coerced values. CLI input errors exit 2;
|
|
295
|
+
workspace errors exit 1; a minimum context that cannot fit exits 3 with no partial
|
|
296
|
+
context. Input byte limits apply per capture; validation rereads and parser work
|
|
297
|
+
are separate costs.
|
|
298
|
+
|
|
299
|
+
Source directory discovery is capped at `max(4096, 128 × max_files)` entries,
|
|
300
|
+
up to 100,000; wiki discovery is capped at 10,000 entries. Excessive discovery returns an explicit work-limit gap before
|
|
301
|
+
source extraction. A narrower source root or an allowed higher limit can help.
|
|
302
|
+
|
|
303
|
+
Native `required` mode requires availability. It does not require a positive
|
|
304
|
+
currentness verdict. Freshness preference does not enable native mode or approve
|
|
305
|
+
semantic content.
|
|
306
|
+
|
|
307
|
+
## Optional compact delivery
|
|
308
|
+
|
|
309
|
+
Canonical output remains the default. Compact delivery is an explicit
|
|
310
|
+
presentation of the same validated facts, gaps, citations and qualifiers.
|
|
311
|
+
Save the full canonical receipt outside the source and wiki trees and away
|
|
312
|
+
from the request, profile, tokenizer and selection files:
|
|
313
|
+
|
|
314
|
+
```bash
|
|
315
|
+
llm-wiki task-context --request source-task.json --src-dir src --wiki-dir wiki --view compact-v1 --view-budget-tokens 32000 --canonical-output receipts/source-context.json
|
|
316
|
+
```
|
|
317
|
+
|
|
318
|
+
The compact view goes to stdout. Add `--output views/source-context.json` for a
|
|
319
|
+
separate view file. A source root of `.` requires both artifacts outside that
|
|
320
|
+
entire root; choose destinations accordingly. Redirected paths and overlaps
|
|
321
|
+
are rejected. A canonical receipt is host custody, not permission to include
|
|
322
|
+
both representations in the model prompt.
|
|
323
|
+
|
|
324
|
+
```python
|
|
325
|
+
view_options = {"schema_version": "llm-wiki-task-view-request/v1", "budget_tokens": 32000}
|
|
326
|
+
view = api.build_compact_task_context(
|
|
327
|
+
request, view_options=view_options, src_dir="src", wiki_dir="wiki"
|
|
328
|
+
)
|
|
329
|
+
if view.ok:
|
|
330
|
+
api.validate_compact_task_context(view.rendered, view.canonical_text, request, view_options=view_options)
|
|
331
|
+
facts = api.expand_compact_task_context(view.rendered, view.canonical_text, request, view_options=view_options)
|
|
332
|
+
```
|
|
333
|
+
|
|
334
|
+
Compact output may still exceed a small budget; there is no promised 1,000-token
|
|
335
|
+
fit or fixed percentage saving. If the compact minimum cannot fit, CLI exits 3
|
|
336
|
+
with its counted diagnostic, writes the valid canonical receipt when available,
|
|
337
|
+
and leaves the view output untouched. If canonical evidence cannot fit, no
|
|
338
|
+
receipt is fabricated. Estimated counts remain estimates.
|
|
339
|
+
|
|
340
|
+
Sessions support explicit `read_compact(..., view_options=...)` and exact
|
|
341
|
+
`canonical_receipt(request_id, result_id)` lookup. Configured MCP sessions expose
|
|
342
|
+
`read_compact_context_session` and `get_task_context_receipt`. The compact tool
|
|
343
|
+
returns view text plus bounded metadata; receipt lookup returns canonical text
|
|
344
|
+
separately. Lost, expired or closed custody needs a fresh read. Historical
|
|
345
|
+
receipts bind captured bytes; `current=True` requires current revalidation.
|
|
346
|
+
Metadata visibility depends on the host. Fetching a receipt and including it
|
|
347
|
+
with the compact view can cost more than canonical output alone.
|
|
348
|
+
|
|
349
|
+
## Counting and MCP delivery
|
|
350
|
+
|
|
351
|
+
The v3 MCP tool requires `protocol: "llm-wiki-context/v3"` and `changes`, which
|
|
352
|
+
accepts explicit paths, a base/head range, or staged changes. Use
|
|
353
|
+
`{"mode": "paths", "paths": []}` for no supplied changes. Old MCP context tools and
|
|
354
|
+
resource URIs retain their response shapes.
|
|
355
|
+
|
|
356
|
+
Canonical v3 and task tools return one canonical text block without a structured copy of
|
|
357
|
+
the context. Include that text once. Exact counting requires a trusted Python
|
|
358
|
+
counter or an explicitly configured server `--tokenizer FILE`; tool input cannot
|
|
359
|
+
choose the tokenizer file. Estimated counts remain labeled estimates. Accounting
|
|
360
|
+
covers canonical context text, including its accounting fields. MCP and host
|
|
361
|
+
framing, session metadata and model-side framing are separate costs.
|
|
362
|
+
|
|
363
|
+
## Optional sessions and resume
|
|
364
|
+
|
|
365
|
+
```python
|
|
366
|
+
with api.open_context_session(src_dir="src", wiki_dir="wiki") as session:
|
|
367
|
+
first = session.read(request)
|
|
368
|
+
again = session.read(request, if_result_id=first.result_id)
|
|
369
|
+
# Unchanged requires current input validation.
|
|
370
|
+
```
|
|
371
|
+
|
|
372
|
+
Sessions default to eight entries, 16 MiB retained state and a five-minute expiry.
|
|
373
|
+
They serialize calls within one instance, return detached data, and bind to their
|
|
374
|
+
creating workspace. Changed roots or working directories require a new session.
|
|
375
|
+
Close sessions at disconnect or cancellation. Set `reuse=False`, use zero entries,
|
|
376
|
+
or use `build_task_context` for cold reads with the same feature coverage.
|
|
377
|
+
|
|
378
|
+
Source membership and bytes, ignore/selection inputs, wiki artifacts, producer
|
|
379
|
+
configuration and Git metadata are rechecked. Events only invalidate state;
|
|
380
|
+
lost events cannot authorize reuse. Unsaved buffers require save/defer handling.
|
|
381
|
+
Helper-backed captures use cold reads when a complete bounded producer check is
|
|
382
|
+
unavailable. No continuous freshness or general speedup is promised.
|
|
383
|
+
|
|
384
|
+
Session metadata reports reuse, validation work, elapsed time and retained memory
|
|
385
|
+
outside the portable task identity. Embedded task work describes its originating
|
|
386
|
+
read. Optional deltas require an exact retained base; use
|
|
387
|
+
`api.apply_task_delta(base_text, delta, request)` to reconstruct and validate the
|
|
388
|
+
full canonical context. Missing bases fall back to a full result. Wrong and
|
|
389
|
+
out-of-order bases are rejected. Whole-value array replacement preserves deletions
|
|
390
|
+
and changed qualifiers.
|
|
391
|
+
|
|
392
|
+
MCP sessions require `--enable-sessions`. Handles belong to that server and its
|
|
393
|
+
configured workspace. Full responses carry canonical context in text and separate
|
|
394
|
+
session metadata in structured content. Delta text is a delta envelope; embedded
|
|
395
|
+
accounting describes reconstructed context. Session delivery counters describe
|
|
396
|
+
the transmitted context or delta. Reconnect with a fresh session and validate
|
|
397
|
+
saved context before reuse.
|
|
398
|
+
|
|
399
|
+
For a persisted handoff, `api.reconcile_task_context(saved_text, request, ...)`
|
|
400
|
+
returns one fresh scoped context together with the input-basis comparison and
|
|
401
|
+
the existing packet reconciliation facets. A matching basis and semantic approval
|
|
402
|
+
are separate results. Legacy packet reconciliation keeps its existing read scope.
|
|
403
|
+
|
|
404
|
+
See the [downstream coding example](../examples/native-workflow/README.md) for a
|
|
405
|
+
host-owned edit, behavior check, durable explanation and resumed handoff. This
|
|
406
|
+
workflow remains opt-in; comparative model benefit has not been established.
|
|
@@ -43,7 +43,10 @@ dependency-page presence, and internal wiki links; and the experimental
|
|
|
43
43
|
`.llm-wiki-knowledge.json`, a deterministic evidence-aware projection of those
|
|
44
44
|
canonical pages. Manifest v5 is the current writer format. All three JSON
|
|
45
45
|
artifacts are CLI-owned generated state and must not be edited by hand; the
|
|
46
|
-
manifest commits the surface and knowledge projections as one snapshot.
|
|
46
|
+
manifest commits the surface and knowledge projections as one snapshot. Explicit
|
|
47
|
+
[ordinary review adoption](maintenance.md) adds durable pending/acknowledged
|
|
48
|
+
section records and an immutable marker, using flat manifest v7 or indexed v8;
|
|
49
|
+
the default unadopted writer remains v5. The
|
|
47
50
|
experimental knowledge projection is evidence, not an editable authority. Its
|
|
48
51
|
observation-versus-freshness model,
|
|
49
52
|
availability states, strict-lint policy, context filters, API/MCP envelopes,
|