crprotocol 5.0.0__tar.gz → 5.1.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1027) hide show
  1. crprotocol-5.1.0/.coverage.konvidi.pid29996.XQNEr1Cx.HLpP21RTVxfh +0 -0
  2. crprotocol-5.1.0/.coverage.konvidi.pid29996.Xr8Aseyx.HNQIp837rWOh +0 -0
  3. {crprotocol-5.0.0 → crprotocol-5.1.0}/.github/workflows/ci.yml +1 -1
  4. {crprotocol-5.0.0 → crprotocol-5.1.0}/.gitignore +2 -0
  5. {crprotocol-5.0.0 → crprotocol-5.1.0}/AI Agent adoption/CRP-SKILL.md +1 -1
  6. crprotocol-5.0.0/site-docs/llms-full.txt → crprotocol-5.1.0/AI Agent adoption/llms-full.txt +1 -1
  7. {crprotocol-5.0.0 → crprotocol-5.1.0}/AI Agent adoption/llms.txt +1 -1
  8. {crprotocol-5.0.0 → crprotocol-5.1.0}/CHANGELOG.md +81 -1
  9. {crprotocol-5.0.0 → crprotocol-5.1.0}/CRPv4_Implementation_Rounds.md +6 -3
  10. {crprotocol-5.0.0 → crprotocol-5.1.0}/CRPv5_FINALISATION_TRACKING.md +39 -4
  11. {crprotocol-5.0.0 → crprotocol-5.1.0}/PKG-INFO +11 -9
  12. {crprotocol-5.0.0 → crprotocol-5.1.0}/RAILWAY_DEPLOYMENT_GUIDE.md +8 -6
  13. {crprotocol-5.0.0 → crprotocol-5.1.0}/RAILWAY_VARIABLES.md +25 -17
  14. {crprotocol-5.0.0 → crprotocol-5.1.0}/README.md +10 -8
  15. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/__init__.py +17 -0
  16. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/_version.py +1 -1
  17. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/extraction/stage3_gliner.py +15 -0
  18. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/scan/github_app.py +11 -3
  19. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/scan/remediation.py +8 -1
  20. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/sdk/client.py +61 -0
  21. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/stl/__init__.py +9 -1
  22. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/stl/operation_state.py +13 -0
  23. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/stl/positioned.py +210 -7
  24. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/auth.py +12 -6
  25. crprotocol-5.1.0/crp_test_groups/group1.txt +20 -0
  26. crprotocol-5.1.0/crp_test_groups/group2.txt +20 -0
  27. crprotocol-5.1.0/crp_test_groups/group3.txt +20 -0
  28. crprotocol-5.1.0/crp_test_groups/group4.txt +20 -0
  29. crprotocol-5.1.0/examples/crp_demos/e2e_v5_test.py +314 -0
  30. crprotocol-5.1.0/examples/crp_demos/positioned_benchmark.py +232 -0
  31. crprotocol-5.1.0/examples/crp_demos/quality_benchmark.py +216 -0
  32. crprotocol-5.1.0/examples/crp_demos/safety_checkpoint_test.py +192 -0
  33. crprotocol-5.1.0/examples/crp_demos/sqb_positioned.py +155 -0
  34. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/v4/server.py +26 -1
  35. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/v4/static/app.js +31 -0
  36. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/v4/static/index.html +5 -0
  37. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/v4/static/style.css +34 -0
  38. {crprotocol-5.0.0 → crprotocol-5.1.0}/mkdocs.yml +2 -1
  39. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/aiuc-1.md +468 -468
  40. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/modules/activation.md +44 -44
  41. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/modules/adapters.md +12 -12
  42. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/modules/advanced.md +100 -100
  43. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/modules/agent.md +44 -44
  44. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/modules/ckf.md +92 -92
  45. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/modules/cli.md +36 -36
  46. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/modules/comply.md +116 -116
  47. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/modules/config.md +12 -12
  48. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/modules/config_schema.md +12 -12
  49. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/modules/continuation.md +100 -92
  50. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/modules/core.md +180 -172
  51. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/modules/envelope.md +76 -76
  52. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/modules/extraction.md +108 -108
  53. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/modules/gateway.md +36 -36
  54. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/modules/headers.md +60 -60
  55. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/modules/index.md +44 -43
  56. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/modules/integrations.md +44 -36
  57. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/modules/license_guard.md +12 -12
  58. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/modules/observability.md +60 -60
  59. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/modules/policy.md +76 -76
  60. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/modules/provenance.md +132 -124
  61. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/modules/providers.md +92 -92
  62. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/modules/resources.md +52 -44
  63. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/modules/scan.md +36 -36
  64. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/modules/schemas.md +12 -12
  65. crprotocol-5.1.0/site-docs/api/modules/sdk.md +60 -0
  66. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/modules/security.md +156 -148
  67. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/modules/state.md +212 -212
  68. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/modules/stl.md +76 -52
  69. crprotocol-5.1.0/site-docs/api/modules/tools.md +52 -0
  70. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/control-evidence.md +194 -194
  71. crprotocol-5.0.0/site-docs/crpv4-roadmap.md → crprotocol-5.1.0/site-docs/crpv5-roadmap.md +201 -199
  72. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/index.md +494 -494
  73. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/products/comply.md +1 -1
  74. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/protocol/context-sources.md +2 -2
  75. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/protocol/index.md +101 -101
  76. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/sdk/index.md +3 -3
  77. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/sdk/tools-and-agents.md +100 -0
  78. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/testing/benchmarks.md +73 -13
  79. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/testing/running-tests.md +2 -2
  80. {crprotocol-5.0.0 → crprotocol-5.1.0}/slides.md +39 -5
  81. crprotocol-5.1.0/sqb_results/positioned_kimi.json +56 -0
  82. crprotocol-5.1.0/sqb_results/quality_benchmark.json +64 -0
  83. crprotocol-5.1.0/sqb_results/sqb_positioned_kimi.json +45 -0
  84. crprotocol-5.1.0/sqb_results/sqb_positioned_local_w6.json +45 -0
  85. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_comply_quota_gate.py +5 -4
  86. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_crp_mcp_auth.py +38 -2
  87. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_dispatch_positioned.py +31 -0
  88. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_gap_fixes_live.py +73 -19
  89. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_github_app.py +19 -0
  90. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_orchestrator_perf.py +20 -2
  91. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_positioned.py +74 -0
  92. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_smoke.py +1 -1
  93. crprotocol-5.0.0/kimi_moonshot_api_key.txt +0 -1
  94. crprotocol-5.0.0/site-docs/api/modules/sdk.md +0 -28
  95. {crprotocol-5.0.0 → crprotocol-5.1.0}/.dockerignore +0 -0
  96. {crprotocol-5.0.0 → crprotocol-5.1.0}/.github/CODEOWNERS +0 -0
  97. {crprotocol-5.0.0 → crprotocol-5.1.0}/.github/FUNDING.yml +0 -0
  98. {crprotocol-5.0.0 → crprotocol-5.1.0}/.github/ISSUE_TEMPLATE/bug-report.yml +0 -0
  99. {crprotocol-5.0.0 → crprotocol-5.1.0}/.github/ISSUE_TEMPLATE/feature-request.yml +0 -0
  100. {crprotocol-5.0.0 → crprotocol-5.1.0}/.github/ISSUE_TEMPLATE/spec-clarification.yml +0 -0
  101. {crprotocol-5.0.0 → crprotocol-5.1.0}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  102. {crprotocol-5.0.0 → crprotocol-5.1.0}/.github/workflows/docs.yml +0 -0
  103. {crprotocol-5.0.0 → crprotocol-5.1.0}/.github/workflows/link-check-config.json +0 -0
  104. {crprotocol-5.0.0 → crprotocol-5.1.0}/.github/workflows/link-check.yml +0 -0
  105. {crprotocol-5.0.0 → crprotocol-5.1.0}/.github/workflows/validate-schemas.yml +0 -0
  106. {crprotocol-5.0.0 → crprotocol-5.1.0}/.kimi/skills/crp-auth-expert/SKILL.md +0 -0
  107. {crprotocol-5.0.0 → crprotocol-5.1.0}/.kimi/skills/crp-comply-expert/SKILL.md +0 -0
  108. {crprotocol-5.0.0 → crprotocol-5.1.0}/.kimi/skills/crp-gateway-expert/SKILL.md +0 -0
  109. {crprotocol-5.0.0 → crprotocol-5.1.0}/.kimi/skills/crp-v4-expert/SKILL.md +0 -0
  110. {crprotocol-5.0.0 → crprotocol-5.1.0}/.kimi/skills/crp-v4-specs/SKILL.md +0 -0
  111. {crprotocol-5.0.0 → crprotocol-5.1.0}/.kimi/skills/programmatic-video-production/SKILL.md +0 -0
  112. {crprotocol-5.0.0 → crprotocol-5.1.0}/.kimi/skills/programmatic-video-production/references/tool-comparison.md +0 -0
  113. {crprotocol-5.0.0 → crprotocol-5.1.0}/.pre-commit-config.yaml +0 -0
  114. {crprotocol-5.0.0 → crprotocol-5.1.0}/3.1.0 +0 -0
  115. {crprotocol-5.0.0 → crprotocol-5.1.0}/AGENTS.md +0 -0
  116. {crprotocol-5.0.0 → crprotocol-5.1.0}/AI Agent adoption/CRP-AGENT-ADOPTION-STRATEGY.md +0 -0
  117. {crprotocol-5.0.0 → crprotocol-5.1.0}/AI Agent adoption/CRP-MCP-SERVER-SPECIFICATION.md +0 -0
  118. {crprotocol-5.0.0 → crprotocol-5.1.0}/BENCHMARKS.md +0 -0
  119. {crprotocol-5.0.0 → crprotocol-5.1.0}/CNAME +0 -0
  120. {crprotocol-5.0.0 → crprotocol-5.1.0}/CODE_OF_CONDUCT.md +0 -0
  121. {crprotocol-5.0.0 → crprotocol-5.1.0}/CONTRIBUTING.md +0 -0
  122. {crprotocol-5.0.0 → crprotocol-5.1.0}/CRP Comply LLM connection methods issues prompt.txt +0 -0
  123. {crprotocol-5.0.0 → crprotocol-5.1.0}/CRP protocol ecosystem figure.png +0 -0
  124. {crprotocol-5.0.0 → crprotocol-5.1.0}/CRP-COMPLY-AI-SAFETY-PLAN.md +0 -0
  125. {crprotocol-5.0.0 → crprotocol-5.1.0}/CRP-COMPLY-UPGRADE-REPORT-v2.md +0 -0
  126. {crprotocol-5.0.0 → crprotocol-5.1.0}/CRP-COMPLY-UPGRADE-REPORT.md +0 -0
  127. {crprotocol-5.0.0 → crprotocol-5.1.0}/CRP-SHARED-HERO-POSITIONING.md +0 -0
  128. {crprotocol-5.0.0 → crprotocol-5.1.0}/CRP-v4-SPRINT-REPORT.md +0 -0
  129. {crprotocol-5.0.0 → crprotocol-5.1.0}/CRP-v4-VISUAL-AUDIT-RATING.md +0 -0
  130. {crprotocol-5.0.0 → crprotocol-5.1.0}/CRP_CAPABILITIES.md +0 -0
  131. {crprotocol-5.0.0 → crprotocol-5.1.0}/CRP_Comply_github_app_details.txt +0 -0
  132. {crprotocol-5.0.0 → crprotocol-5.1.0}/CRP_SLM_PROTOCOL_PROPOSAL.md +0 -0
  133. {crprotocol-5.0.0 → crprotocol-5.1.0}/CRP_protocol_FULL_transparent_white.png +0 -0
  134. {crprotocol-5.0.0 → crprotocol-5.1.0}/CRPv4_realised_deliverables.md +0 -0
  135. {crprotocol-5.0.0 → crprotocol-5.1.0}/D1_CRP_Protocol_Marketing_Update.docx +0 -0
  136. {crprotocol-5.0.0 → crprotocol-5.1.0}/Dockerfile +0 -0
  137. {crprotocol-5.0.0 → crprotocol-5.1.0}/GOVERNANCE.md +0 -0
  138. {crprotocol-5.0.0 → crprotocol-5.1.0}/HOSTING_POSITIONING.md +0 -0
  139. {crprotocol-5.0.0 → crprotocol-5.1.0}/INTERNAL_DOCS.md +0 -0
  140. {crprotocol-5.0.0 → crprotocol-5.1.0}/LICENSE.md +0 -0
  141. {crprotocol-5.0.0 → crprotocol-5.1.0}/NOTICE +0 -0
  142. {crprotocol-5.0.0 → crprotocol-5.1.0}/SECURITY.md +0 -0
  143. {crprotocol-5.0.0 → crprotocol-5.1.0}/SITE_NAVIGATION_AND_PUBLISHING.md +0 -0
  144. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/CRP-BUILD-PROMPT.md +0 -0
  145. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/CRP-CODER-BRIEF.md +0 -0
  146. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/CRP-GATEWAY-BLUEPRINT.md +0 -0
  147. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/CRP-MASTER-INDEX.md +0 -0
  148. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/CRP-SDK-REFERENCE.md +0 -0
  149. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-FEASIBILITY.md +0 -0
  150. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-IANA-RESPONSE-STRATEGY.md +0 -0
  151. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-IETF-EMAIL-TEMPLATES.md +0 -0
  152. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-PUBLIC-CHECKLIST.md +0 -0
  153. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SITE-STRATEGY.md +0 -0
  154. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-001-core-protocol.md +0 -0
  155. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-002-headers.md +0 -0
  156. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-003-envelope.md +0 -0
  157. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-004-continuation.md +0 -0
  158. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-005-dpe.md +0 -0
  159. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-006-safety-policy.md +0 -0
  160. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-007-session-token.md +0 -0
  161. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-008-dispatch.md +0 -0
  162. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-009-ckf.md +0 -0
  163. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-010-regulatory-mapping.md +0 -0
  164. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-011-audit-trail.md +0 -0
  165. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-012-multi-agent-safety.md +0 -0
  166. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-013-github-action.md +0 -0
  167. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-014-conformance.md +0 -0
  168. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-015-security-privacy.md +0 -0
  169. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-016-gateway-service.md +0 -0
  170. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-017-zero-ckf-mode.md +0 -0
  171. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-018-air.md +0 -0
  172. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-019-cognitive-quality.md +0 -0
  173. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-020-cognitive-load-distribution.md +0 -0
  174. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-021-reasoning-orchestration.md +0 -0
  175. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-022-execution-fabric.md +0 -0
  176. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-023-amplification-boundary.md +0 -0
  177. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-024-coverage-differential-retrieval.md +0 -0
  178. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-025-graph-retrieval.md +0 -0
  179. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-026-semantic-quality-benchmark.md +0 -0
  180. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-027-retrieval-integrity.md +0 -0
  181. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-028-conversational-context.md +0 -0
  182. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-029-ephemeral-tool-context.md +0 -0
  183. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-030-cognitive-state-relay.md +0 -0
  184. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-031-semantic-task-layer.md +0 -0
  185. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-032-developer-experience.md +0 -0
  186. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-033-safety-control-plane.md +0 -0
  187. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-034-safety-coverage.md +0 -0
  188. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-035-context-lifecycle.md +0 -0
  189. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-036-scan-remediation.md +0 -0
  190. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-037-unified-config.md +0 -0
  191. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-038-storage-backends.md +0 -0
  192. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-039-semantic-code-ingestion.md +0 -0
  193. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-040-crp-comply.md +0 -0
  194. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-041-adoption-ecosystem.md +0 -0
  195. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SPEC-HOSTING-CONTROL.md +0 -0
  196. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-COMPLETE-PACKAGE/crp-coder-package/specs/CRP-SUBMISSION-GUIDE.md +0 -0
  197. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-MASTER-INDEX.md +0 -0
  198. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-SPEC-040-crp-comply.md +0 -0
  199. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS-2.06.2026/CRP-SPEC-041-adoption-ecosystem.md +0 -0
  200. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_27-05-2027/CRP-FEASIBILITY.md +0 -0
  201. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_27-05-2027/CRP-IETF-EMAIL-TEMPLATES.md +0 -0
  202. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_27-05-2027/CRP-PUBLIC-CHECKLIST.md +0 -0
  203. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_27-05-2027/CRP-SITE-STRATEGY.md +0 -0
  204. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_27-05-2027/CRP-SPEC-001-core-protocol.md +0 -0
  205. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_27-05-2027/CRP-SPEC-002-headers.md +0 -0
  206. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_27-05-2027/CRP-SPEC-003-envelope.md +0 -0
  207. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_27-05-2027/CRP-SPEC-004-continuation.md +0 -0
  208. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_27-05-2027/CRP-SPEC-005-dpe.md +0 -0
  209. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_27-05-2027/CRP-SPEC-006-safety-policy.md +0 -0
  210. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_27-05-2027/CRP-SPEC-007-session-token.md +0 -0
  211. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_27-05-2027/CRP-SPEC-008-dispatch.md +0 -0
  212. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_27-05-2027/CRP-SPEC-009-ckf.md +0 -0
  213. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_27-05-2027/CRP-SPEC-010-regulatory-mapping.md +0 -0
  214. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_27-05-2027/CRP-SPEC-011-audit-trail.md +0 -0
  215. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_27-05-2027/CRP-SPEC-012-multi-agent-safety.md +0 -0
  216. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_27-05-2027/CRP-SPEC-013-github-action.md +0 -0
  217. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_27-05-2027/CRP-SPEC-014-conformance.md +0 -0
  218. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_27-05-2027/CRP-SPEC-015-security-privacy.md +0 -0
  219. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_27-05-2027/CRP-SPEC-016-gateway-service.md +0 -0
  220. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_27-05-2027/CRP-SPEC-017-zero-ckf-mode.md +0 -0
  221. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_27-05-2027/CRP-SPEC-HOSTING-CONTROL.md +0 -0
  222. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_27-05-2027/CRP-SUBMISSION-GUIDE.md +0 -0
  223. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_27-05-2027/CRP-V3-IMPLEMENTATION-PLAN.md +0 -0
  224. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_27-05-2027/Overview of all documents.docx +0 -0
  225. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_27-05-2027/SUBMISSION-GUIDE.md +0 -0
  226. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_27-05-2027/TRACKING_OF_PROGRESS.MD +0 -0
  227. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_27-05-2027/crp-headers-spec.html +0 -0
  228. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_27-05-2027/crp-product-ecosystem.html +0 -0
  229. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_27-05-2027/crp-v3-complete-spec.html +0 -0
  230. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/Automated prompt-response review, questions, actions and insights.txt +0 -0
  231. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/CRP-AUTH-MIGRATION-SPRINT-SUMMARY.md +0 -0
  232. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/CRP-AUTH-POSTGRESQL-MIGRATION-PLAN.md +0 -0
  233. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/CRP-AUTH-USER-MANAGEMENT-SOLUTION.md +0 -0
  234. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/CRP-BUILD-PROMPT.md +0 -0
  235. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/CRP-CODER-BRIEF.md +0 -0
  236. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/CRP-COMPLY-BUILDER-PROMPT.md +0 -0
  237. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/CRP-COMPLY-UPGRADE-HANDOFF.md +0 -0
  238. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/CRP-ECOSYSTEM-BOUNDARIES.md +0 -0
  239. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/CRP-GATEWAY-BLUEPRINT.md +0 -0
  240. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/CRP-GATEWAY-PRODUCT-OVERVIEW.md +0 -0
  241. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/CRP-GITHUB-APP-GUIDE.md +0 -0
  242. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/CRP-GITHUB-CONNECTIVITY-SOLUTION.md +0 -0
  243. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/CRP-MARKET-STRATEGY.md +0 -0
  244. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/CRP-MASTER-INDEX.md +0 -0
  245. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/CRP-RAILWAY-SETUP-GUIDE.md +0 -0
  246. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/CRP-SDK-REFERENCE.md +0 -0
  247. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/CRP-STRIPE-SETUP-GUIDE.md +0 -0
  248. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/CRP-V4-UPGRADE-PROMPT.md +0 -0
  249. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/CRP-v4-PHASED-IMPLEMENTATION-REPORT.md +0 -0
  250. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/adversarially-robust-safety.md +0 -0
  251. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/mfa_plan.md +0 -0
  252. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-FEASIBILITY.md +0 -0
  253. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-IANA-RESPONSE-STRATEGY.md +0 -0
  254. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-IETF-EMAIL-TEMPLATES.md +0 -0
  255. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-PUBLIC-CHECKLIST.md +0 -0
  256. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SITE-STRATEGY.md +0 -0
  257. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-001-core-protocol.md +0 -0
  258. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-002-headers.md +0 -0
  259. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-003-envelope.md +0 -0
  260. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-004-continuation.md +0 -0
  261. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-005-dpe.md +0 -0
  262. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-006-safety-policy.md +0 -0
  263. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-007-session-token.md +0 -0
  264. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-008-dispatch.md +0 -0
  265. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-009-ckf.md +0 -0
  266. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-010-regulatory-mapping.md +0 -0
  267. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-011-audit-trail.md +0 -0
  268. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-012-multi-agent-safety.md +0 -0
  269. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-013-github-action.md +0 -0
  270. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-014-conformance.md +0 -0
  271. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-015-security-privacy.md +0 -0
  272. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-016-gateway-service.md +0 -0
  273. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-017-zero-ckf-mode.md +0 -0
  274. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-018-air.md +0 -0
  275. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-019-cognitive-quality.md +0 -0
  276. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-020-cognitive-load-distribution.md +0 -0
  277. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-021-reasoning-orchestration.md +0 -0
  278. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-022-execution-fabric.md +0 -0
  279. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-023-amplification-boundary.md +0 -0
  280. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-024-coverage-differential-retrieval.md +0 -0
  281. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-025-graph-retrieval.md +0 -0
  282. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-026-semantic-quality-benchmark.md +0 -0
  283. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-027-retrieval-integrity.md +0 -0
  284. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-028-conversational-context.md +0 -0
  285. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-029-ephemeral-tool-context.md +0 -0
  286. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-030-cognitive-state-relay.md +0 -0
  287. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-031-semantic-task-layer.md +0 -0
  288. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-032-developer-experience.md +0 -0
  289. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-033-safety-control-plane.md +0 -0
  290. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-034-safety-coverage.md +0 -0
  291. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-035-context-lifecycle.md +0 -0
  292. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-036-scan-remediation.md +0 -0
  293. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-037-unified-config.md +0 -0
  294. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-038-storage-backends.md +0 -0
  295. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-039-semantic-code-ingestion.md +0 -0
  296. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-040-crp-comply.md +0 -0
  297. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-041-adoption-ecosystem.md +0 -0
  298. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-042-comply-upgrade-integration.md +0 -0
  299. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-043-gateway-runtime-product.md +0 -0
  300. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-044-authoritative-domain-agent.md +0 -0
  301. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-045-knowledge-learning.md +0 -0
  302. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-046-user-defined-cognition.md +0 -0
  303. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-047-monetisation-payments.md +0 -0
  304. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-048-comply-lowcode-github.md +0 -0
  305. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-049-slm-agent-execution.md +0 -0
  306. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-050-tool-capability-fabric.md +0 -0
  307. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SPEC-HOSTING-CONTROL.md +0 -0
  308. {crprotocol-5.0.0 → crprotocol-5.1.0}/SPECS_5_06_2026_CRP_v4/specs/CRP-SUBMISSION-GUIDE.md +0 -0
  309. {crprotocol-5.0.0 → crprotocol-5.1.0}/STRIPE_MONETISATION.md +0 -0
  310. {crprotocol-5.0.0 → crprotocol-5.1.0}/TRADEMARK.md +0 -0
  311. {crprotocol-5.0.0 → crprotocol-5.1.0}/WASA_AI_CRITICAL_GAP_AUDIT.md +0 -0
  312. {crprotocol-5.0.0 → crprotocol-5.1.0}/_MConverter.eu_agentic_ai_slm_report.agent.final.footnote.md +0 -0
  313. {crprotocol-5.0.0 → crprotocol-5.1.0}/agentic_ai_slm_report.agent.final.footnote.docx +0 -0
  314. {crprotocol-5.0.0 → crprotocol-5.1.0}/android-chrome-192x192.png +0 -0
  315. {crprotocol-5.0.0 → crprotocol-5.1.0}/android-chrome-512x512.png +0 -0
  316. {crprotocol-5.0.0 → crprotocol-5.1.0}/apple-touch-icon.png +0 -0
  317. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/__main__.py +0 -0
  318. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/_typing.py +0 -0
  319. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/activation/__init__.py +0 -0
  320. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/activation/mode.py +0 -0
  321. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/activation/onboarding.py +0 -0
  322. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/activation/policy_adjust.py +0 -0
  323. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/activation/stages.py +0 -0
  324. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/adapters.py +0 -0
  325. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/advanced/__init__.py +0 -0
  326. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/advanced/auto_ingest.py +0 -0
  327. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/advanced/cqs.py +0 -0
  328. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/advanced/cross_window.py +0 -0
  329. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/advanced/curator.py +0 -0
  330. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/advanced/feedback.py +0 -0
  331. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/advanced/hierarchical.py +0 -0
  332. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/advanced/meta_learning.py +0 -0
  333. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/advanced/parallel.py +0 -0
  334. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/advanced/review_cycle.py +0 -0
  335. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/advanced/scale_mode.py +0 -0
  336. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/advanced/source_grounding.py +0 -0
  337. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/agent/__init__.py +0 -0
  338. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/agent/budget.py +0 -0
  339. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/agent/chain.py +0 -0
  340. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/agent/oversight.py +0 -0
  341. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/agent/propagation.py +0 -0
  342. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/ckf/__init__.py +0 -0
  343. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/ckf/cdgr.py +0 -0
  344. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/ckf/community.py +0 -0
  345. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/ckf/fabric.py +0 -0
  346. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/ckf/gc.py +0 -0
  347. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/ckf/graph_edges.py +0 -0
  348. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/ckf/graph_walk.py +0 -0
  349. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/ckf/merge.py +0 -0
  350. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/ckf/pattern_query.py +0 -0
  351. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/ckf/pubsub.py +0 -0
  352. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/ckf/semantic.py +0 -0
  353. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/cli/__init__.py +0 -0
  354. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/cli/main.py +0 -0
  355. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/cli/sidecar.py +0 -0
  356. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/cli/startup.py +0 -0
  357. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/comply/__init__.py +0 -0
  358. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/comply/billing/__init__.py +0 -0
  359. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/comply/billing/checkout.py +0 -0
  360. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/comply/billing/constants.py +0 -0
  361. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/comply/billing/entitlements.py +0 -0
  362. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/comply/billing/metering.py +0 -0
  363. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/comply/billing/reconciliation.py +0 -0
  364. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/comply/billing/webhook.py +0 -0
  365. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/comply/checkpoint_inbox.py +0 -0
  366. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/comply/gateway_client.py +0 -0
  367. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/comply/gateway_proxy.py +0 -0
  368. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/comply/github_routes.py +0 -0
  369. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/comply/header_mapping.py +0 -0
  370. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/comply/no_code.py +0 -0
  371. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/comply/quota_gate.py +0 -0
  372. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/comply/signup.py +0 -0
  373. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/config.py +0 -0
  374. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/config_schema.py +0 -0
  375. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/continuation/__init__.py +0 -0
  376. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/continuation/completion.py +0 -0
  377. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/continuation/degradation.py +0 -0
  378. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/continuation/document_map.py +0 -0
  379. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/continuation/flow.py +0 -0
  380. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/continuation/gap.py +0 -0
  381. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/continuation/input_planner.py +0 -0
  382. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/continuation/manager.py +0 -0
  383. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/continuation/quality_monitor.py +0 -0
  384. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/continuation/stitch.py +0 -0
  385. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/continuation/trigger.py +0 -0
  386. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/continuation/voice.py +0 -0
  387. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/core/__init__.py +0 -0
  388. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/core/app_profile.py +0 -0
  389. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/core/batch.py +0 -0
  390. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/core/circuit_breaker.py +0 -0
  391. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/core/config.py +0 -0
  392. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/core/context_enforcer.py +0 -0
  393. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/core/context_source.py +0 -0
  394. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/core/context_tools.py +0 -0
  395. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/core/dispatch_router.py +0 -0
  396. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/core/errors.py +0 -0
  397. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/core/extraction_facade.py +0 -0
  398. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/core/facilitator.py +0 -0
  399. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/core/idempotency.py +0 -0
  400. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/core/ledger_backends.py +0 -0
  401. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/core/manifest_derive.py +0 -0
  402. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/core/manifest_ledger.py +0 -0
  403. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/core/orchestrator.py +0 -0
  404. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/core/relay_strategies.py +0 -0
  405. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/core/security_manager.py +0 -0
  406. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/core/session.py +0 -0
  407. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/core/task_intent.py +0 -0
  408. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/core/window.py +0 -0
  409. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/envelope/__init__.py +0 -0
  410. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/envelope/builder.py +0 -0
  411. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/envelope/cdr.py +0 -0
  412. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/envelope/decomposer.py +0 -0
  413. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/envelope/formatter.py +0 -0
  414. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/envelope/packer.py +0 -0
  415. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/envelope/reranker.py +0 -0
  416. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/envelope/retrieval_integrity.py +0 -0
  417. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/envelope/scoring.py +0 -0
  418. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/extraction/__init__.py +0 -0
  419. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/extraction/complexity.py +0 -0
  420. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/extraction/contradiction.py +0 -0
  421. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/extraction/pipeline.py +0 -0
  422. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/extraction/quality_gate.py +0 -0
  423. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/extraction/stage1_regex.py +0 -0
  424. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/extraction/stage2_statistical.py +0 -0
  425. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/extraction/stage4_uie.py +0 -0
  426. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/extraction/stage5_discourse.py +0 -0
  427. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/extraction/stage6_llm.py +0 -0
  428. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/extraction/structured_output.py +0 -0
  429. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/extraction/types.py +0 -0
  430. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/gateway/__init__.py +0 -0
  431. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/gateway/api.py +0 -0
  432. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/gateway/key_vault.py +0 -0
  433. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/gateway/router.py +0 -0
  434. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/headers/__init__.py +0 -0
  435. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/headers/conditional.py +0 -0
  436. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/headers/emit.py +0 -0
  437. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/headers/halt.py +0 -0
  438. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/headers/middleware.py +0 -0
  439. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/headers/names.py +0 -0
  440. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/headers/parse.py +0 -0
  441. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/integrations/__init__.py +0 -0
  442. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/integrations/_common.py +0 -0
  443. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/integrations/anthropic_hook.py +0 -0
  444. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/integrations/app_discovery.py +0 -0
  445. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/integrations/langchain_hook.py +0 -0
  446. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/integrations/openai_hook.py +0 -0
  447. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/license_guard.py +0 -0
  448. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/observability/__init__.py +0 -0
  449. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/observability/audit.py +0 -0
  450. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/observability/events.py +0 -0
  451. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/observability/metrics.py +0 -0
  452. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/observability/quality.py +0 -0
  453. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/observability/structured_logging.py +0 -0
  454. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/observability/telemetry.py +0 -0
  455. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/policy/__init__.py +0 -0
  456. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/policy/enforce.py +0 -0
  457. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/policy/grammar.py +0 -0
  458. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/policy/inheritance.py +0 -0
  459. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/policy/mode.py +0 -0
  460. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/policy/model.py +0 -0
  461. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/policy/nonce.py +0 -0
  462. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/policy/profiles.py +0 -0
  463. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/policy/report.py +0 -0
  464. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/provenance/__init__.py +0 -0
  465. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/provenance/_embeddings.py +0 -0
  466. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/provenance/_types.py +0 -0
  467. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/provenance/amplifiers.py +0 -0
  468. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/provenance/attribution_scorer.py +0 -0
  469. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/provenance/calibration.py +0 -0
  470. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/provenance/claim_detector.py +0 -0
  471. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/provenance/contradiction_detector.py +0 -0
  472. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/provenance/distortion_detector.py +0 -0
  473. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/provenance/entailment_verifier.py +0 -0
  474. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/provenance/fabrication_detector.py +0 -0
  475. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/provenance/hallucination_scorer.py +0 -0
  476. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/provenance/omission_analyzer.py +0 -0
  477. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/provenance/provenance_chain.py +0 -0
  478. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/provenance/report_generator.py +0 -0
  479. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/provenance/rqa.py +0 -0
  480. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/provenance/rqa_stages.py +0 -0
  481. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/provenance/window_chain.py +0 -0
  482. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/providers/__init__.py +0 -0
  483. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/providers/anthropic.py +0 -0
  484. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/providers/base.py +0 -0
  485. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/providers/custom.py +0 -0
  486. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/providers/diagnostic.py +0 -0
  487. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/providers/discovery.py +0 -0
  488. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/providers/llamacpp.py +0 -0
  489. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/providers/manager.py +0 -0
  490. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/providers/ollama.py +0 -0
  491. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/providers/openai.py +0 -0
  492. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/providers/tokenizers.py +0 -0
  493. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/py.typed +0 -0
  494. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/resources/__init__.py +0 -0
  495. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/resources/adaptive_allocator.py +0 -0
  496. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/resources/cost_model.py +0 -0
  497. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/resources/governor.py +0 -0
  498. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/resources/overhead_manager.py +0 -0
  499. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/resources/resource_manager.py +0 -0
  500. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/scan/__init__.py +0 -0
  501. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/scan/semantic_ingestion.py +0 -0
  502. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/scan/templates/README.md +0 -0
  503. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/schemas/__init__.py +0 -0
  504. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/schemas/cost-estimate.json +0 -0
  505. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/schemas/crp-error.json +0 -0
  506. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/schemas/envelope-preview.json +0 -0
  507. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/schemas/persisted-state-header.json +0 -0
  508. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/schemas/quality-report.json +0 -0
  509. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/schemas/session-handle.json +0 -0
  510. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/schemas/session-status.json +0 -0
  511. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/schemas/stream-event.json +0 -0
  512. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/schemas/task-intent.json +0 -0
  513. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/sdk/__init__.py +0 -0
  514. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/sdk/dynamic.py +0 -0
  515. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/sdk/proxies.py +0 -0
  516. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/sdk/proxies_extra.py +0 -0
  517. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/sdk/proxies_more.py +0 -0
  518. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/sdk/response.py +0 -0
  519. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/security/__init__.py +0 -0
  520. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/security/audit_trail.py +0 -0
  521. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/security/binding.py +0 -0
  522. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/security/checkpoint.py +0 -0
  523. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/security/clarify.py +0 -0
  524. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/security/compliance.py +0 -0
  525. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/security/consent.py +0 -0
  526. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/security/control_plane.py +0 -0
  527. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/security/coverage.py +0 -0
  528. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/security/embedding_defense.py +0 -0
  529. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/security/encryption.py +0 -0
  530. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/security/injection.py +0 -0
  531. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/security/integrity.py +0 -0
  532. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/security/privacy.py +0 -0
  533. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/security/quarantine.py +0 -0
  534. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/security/rbac.py +0 -0
  535. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/security/safety_manifest.py +0 -0
  536. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/security/session_token.py +0 -0
  537. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/security/validation.py +0 -0
  538. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/state/__init__.py +0 -0
  539. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/state/backends/__init__.py +0 -0
  540. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/state/backends/base.py +0 -0
  541. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/state/backends/memory.py +0 -0
  542. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/state/backends/redis.py +0 -0
  543. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/state/backends/s3.py +0 -0
  544. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/state/backends/sqlite.py +0 -0
  545. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/state/cold_storage.py +0 -0
  546. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/state/compaction.py +0 -0
  547. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/state/coverage_set.py +0 -0
  548. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/state/critical_state.py +0 -0
  549. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/state/cso.py +0 -0
  550. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/state/event_log.py +0 -0
  551. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/state/fact.py +0 -0
  552. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/state/horizons.py +0 -0
  553. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/state/scratch_buffer.py +0 -0
  554. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/state/serialization.py +0 -0
  555. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/state/session_cleanup.py +0 -0
  556. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/state/snapshot.py +0 -0
  557. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/state/storage/__init__.py +0 -0
  558. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/state/storage/ephemeral_store.py +0 -0
  559. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/state/storage/hot_cache.py +0 -0
  560. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/state/storage/inverted_index.py +0 -0
  561. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/state/storage/rolling_log.py +0 -0
  562. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/state/storage/router.py +0 -0
  563. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/state/warm_store.py +0 -0
  564. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/stl/classifier.py +0 -0
  565. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/stl/depth_model.py +0 -0
  566. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/stl/frame_builder.py +0 -0
  567. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/stl/goal_compass.py +0 -0
  568. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/stl/orchestrator.py +0 -0
  569. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/stl/tool_positioner.py +0 -0
  570. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/tools/__init__.py +0 -0
  571. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/tools/adapters.py +0 -0
  572. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/tools/capability_fabric.py +0 -0
  573. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/tools/descriptor.py +0 -0
  574. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/tools/executor.py +0 -0
  575. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp/tools/profiles.py +0 -0
  576. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_envelope_budget +0 -0
  577. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/.env.example +0 -0
  578. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/.env.hosted.template +0 -0
  579. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/__init__.py +0 -0
  580. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/agent_tools.py +0 -0
  581. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/backend_client.py +0 -0
  582. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/billing.py +0 -0
  583. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/capabilities.py +0 -0
  584. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/checkpoint_policy.py +0 -0
  585. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/checkpoint_service.py +0 -0
  586. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/completions.py +0 -0
  587. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/comply_tools.py +0 -0
  588. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/config_tools.py +0 -0
  589. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/connectors/__init__.py +0 -0
  590. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/connectors/base.py +0 -0
  591. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/connectors/comply.py +0 -0
  592. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/connectors/console.py +0 -0
  593. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/connectors/email.py +0 -0
  594. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/connectors/fcm.py +0 -0
  595. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/connectors/gmail.py +0 -0
  596. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/connectors/pagerduty.py +0 -0
  597. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/connectors/slack.py +0 -0
  598. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/connectors/sms.py +0 -0
  599. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/connectors/webhook.py +0 -0
  600. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/corpus.py +0 -0
  601. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/dpe_tools.py +0 -0
  602. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/gateway_tools.py +0 -0
  603. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/headers_lint.py +0 -0
  604. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/local_tools.py +0 -0
  605. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/permissions.py +0 -0
  606. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/prompts.py +0 -0
  607. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/resources.py +0 -0
  608. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/safety_tools.py +0 -0
  609. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/scaffold.py +0 -0
  610. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/scan_tools.py +0 -0
  611. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/server.py +0 -0
  612. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_mcp/types.py +0 -0
  613. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_shared/__init__.py +0 -0
  614. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_shared/audit.py +0 -0
  615. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_shared/auth.py +0 -0
  616. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_shared/crp_headers.py +0 -0
  617. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_shared/db.py +0 -0
  618. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_shared/passkey.py +0 -0
  619. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_shared/schema.py +0 -0
  620. {crprotocol-5.0.0 → crprotocol-5.1.0}/crp_shared/session_token.py +0 -0
  621. {crprotocol-5.0.0 → crprotocol-5.1.0}/docs/AUDIT_REPORT_ROUND_1_SITE_FIXES.md +0 -0
  622. {crprotocol-5.0.0 → crprotocol-5.1.0}/docs/AUDIT_REPORT_ROUND_2_VISUAL_IMPROVEMENTS.md +0 -0
  623. {crprotocol-5.0.0 → crprotocol-5.1.0}/docs/Analysis_of_benchmark_results.md +0 -0
  624. {crprotocol-5.0.0 → crprotocol-5.1.0}/docs/CRP_AVAILABILITY.md +0 -0
  625. {crprotocol-5.0.0 → crprotocol-5.1.0}/docs/CRP_CHECKPOINTS_SETUP_GUIDE.md +0 -0
  626. {crprotocol-5.0.0 → crprotocol-5.1.0}/docs/CRP_DEMO_VIDEO_SCRIPT.md +0 -0
  627. {crprotocol-5.0.0 → crprotocol-5.1.0}/docs/CRP_MCP_ACTIONABLE_DEPLOYMENT_GUIDE.md +0 -0
  628. {crprotocol-5.0.0 → crprotocol-5.1.0}/docs/CRP_MCP_CONNECTORS_SETUP_GUIDE.md +0 -0
  629. {crprotocol-5.0.0 → crprotocol-5.1.0}/docs/CRP_MCP_ENVIRONMENT_MAPPING.md +0 -0
  630. {crprotocol-5.0.0 → crprotocol-5.1.0}/docs/CRP_MCP_PRODUCTION_CHECKLIST.md +0 -0
  631. {crprotocol-5.0.0 → crprotocol-5.1.0}/docs/CRP_MCP_SECURITY_AND_CHECKPOINTS_REPORT.md +0 -0
  632. {crprotocol-5.0.0 → crprotocol-5.1.0}/docs/CRP_SCAN_ACTION_GUIDE.md +0 -0
  633. {crprotocol-5.0.0 → crprotocol-5.1.0}/docs/CRP_SCAN_ACTION_PLAN.md +0 -0
  634. {crprotocol-5.0.0 → crprotocol-5.1.0}/docs/CRP_SCAN_MARKETPLACE_AND_PARTNERSHIP.md +0 -0
  635. {crprotocol-5.0.0 → crprotocol-5.1.0}/docs/CRP_SDK_CONTEXT_SAFETY_GAP_REPORT.md +0 -0
  636. {crprotocol-5.0.0 → crprotocol-5.1.0}/docs/CRP_SPEC_REALITY_MAP.md +0 -0
  637. {crprotocol-5.0.0 → crprotocol-5.1.0}/docs/CRP_V3_COMPLETENESS.md +0 -0
  638. {crprotocol-5.0.0 → crprotocol-5.1.0}/docs/DEMO_REPRODUCTION_AND_VIDEO_GUIDE.md +0 -0
  639. {crprotocol-5.0.0 → crprotocol-5.1.0}/docs/DOCS_PLATFORM_EVALUATION.md +0 -0
  640. {crprotocol-5.0.0 → crprotocol-5.1.0}/docs/DOCS_QUALITY_STRATEGY.md +0 -0
  641. {crprotocol-5.0.0 → crprotocol-5.1.0}/docs/GATEWAY_BACKEND_INTEGRATION.md +0 -0
  642. {crprotocol-5.0.0 → crprotocol-5.1.0}/docs/GATEWAY_RAILWAY_DEPLOY.md +0 -0
  643. {crprotocol-5.0.0 → crprotocol-5.1.0}/docs/GITHUB_ACTION_PUBLISH.md +0 -0
  644. {crprotocol-5.0.0 → crprotocol-5.1.0}/docs/LINKEDIN_LAUNCH_SERIES.md +0 -0
  645. {crprotocol-5.0.0 → crprotocol-5.1.0}/docs/OPERATIONS_RUNBOOK.md +0 -0
  646. {crprotocol-5.0.0 → crprotocol-5.1.0}/docs/SEO_AEO_GEO_STRATEGY.md +0 -0
  647. {crprotocol-5.0.0 → crprotocol-5.1.0}/docs/UX_ACCESSIBILITY_IMPROVEMENTS.md +0 -0
  648. {crprotocol-5.0.0 → crprotocol-5.1.0}/docs/VS_CODE_EXTENSION_PUBLISH.md +0 -0
  649. {crprotocol-5.0.0 → crprotocol-5.1.0}/docs/WASA_INTEGRATION_TUTORIAL.md +0 -0
  650. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/async_usage.py +0 -0
  651. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/benchmark_continuation.py +0 -0
  652. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/choose_provider.py +0 -0
  653. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/comply_demo.py +0 -0
  654. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/README.md +0 -0
  655. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/__init__.py +0 -0
  656. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/_benchmark_results/20260601_140350_comparison.json +0 -0
  657. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/_benchmark_results/20260601_140350_crp_document.md +0 -0
  658. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/_benchmark_results/20260601_140350_hierarchical_document.md +0 -0
  659. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/_benchmark_results/20260601_140350_injection_document.md +0 -0
  660. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/_benchmark_results/20260601_140350_rag_document.md +0 -0
  661. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/comparison_backend.py +0 -0
  662. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/pipeline.py +0 -0
  663. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/positioned_8b_validation.py +0 -0
  664. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/run_benchmark.py +0 -0
  665. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/server.py +0 -0
  666. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/sqb_benchmark.py +0 -0
  667. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/sqb_kimi_judge.py +0 -0
  668. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/static/app.js +0 -0
  669. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/static/comparison.html +0 -0
  670. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/static/context.html +0 -0
  671. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/static/context.js +0 -0
  672. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/static/index.html +0 -0
  673. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/static/safety.html +0 -0
  674. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/static/safety.js +0 -0
  675. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/static/style.css +0 -0
  676. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/strategies/__init__.py +0 -0
  677. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/strategies/base.py +0 -0
  678. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/strategies/crp_strategy.py +0 -0
  679. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/strategies/hierarchical_strategy.py +0 -0
  680. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/strategies/injection_strategy.py +0 -0
  681. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/strategies/rag_strategy.py +0 -0
  682. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/crp_demos/v4/run_demo.ps1 +0 -0
  683. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/demo_app/README.md +0 -0
  684. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/demo_app/demo.py +0 -0
  685. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/demo_app/demo_v1.py +0 -0
  686. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/extraction-pipeline.md +0 -0
  687. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/ingestion.py +0 -0
  688. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/local-model.md +0 -0
  689. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/multi-provider.md +0 -0
  690. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/multi_turn.py +0 -0
  691. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/quickstart.md +0 -0
  692. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/quickstart.py +0 -0
  693. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/scribe_demo.py +0 -0
  694. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/session-resumption.md +0 -0
  695. {crprotocol-5.0.0 → crprotocol-5.1.0}/examples/streaming.py +0 -0
  696. {crprotocol-5.0.0 → crprotocol-5.1.0}/favicon-16x16.png +0 -0
  697. {crprotocol-5.0.0 → crprotocol-5.1.0}/favicon-32x32.png +0 -0
  698. {crprotocol-5.0.0 → crprotocol-5.1.0}/favicon.ico +0 -0
  699. {crprotocol-5.0.0 → crprotocol-5.1.0}/hooks/mkdocs_hooks.py +0 -0
  700. {crprotocol-5.0.0 → crprotocol-5.1.0}/local-llm-resource-management-report.md +0 -0
  701. {crprotocol-5.0.0 → crprotocol-5.1.0}/media/FINAL_CRP_Full_logo-transparent.png +0 -0
  702. {crprotocol-5.0.0 → crprotocol-5.1.0}/message for AI safety.txt +0 -0
  703. {crprotocol-5.0.0 → crprotocol-5.1.0}/migrations/001_initial.sql +0 -0
  704. {crprotocol-5.0.0 → crprotocol-5.1.0}/overrides/404.html +0 -0
  705. {crprotocol-5.0.0 → crprotocol-5.1.0}/overrides/main.html +0 -0
  706. {crprotocol-5.0.0 → crprotocol-5.1.0}/overrides/partials/logo.html +0 -0
  707. {crprotocol-5.0.0 → crprotocol-5.1.0}/pyproject.toml +0 -0
  708. {crprotocol-5.0.0 → crprotocol-5.1.0}/rfcs/0000-template.md +0 -0
  709. {crprotocol-5.0.0 → crprotocol-5.1.0}/rfcs/0001-initial-release.md +0 -0
  710. {crprotocol-5.0.0 → crprotocol-5.1.0}/schemas/capability-descriptor.json +0 -0
  711. {crprotocol-5.0.0 → crprotocol-5.1.0}/schemas/cost-estimate.json +0 -0
  712. {crprotocol-5.0.0 → crprotocol-5.1.0}/schemas/crp-error.json +0 -0
  713. {crprotocol-5.0.0 → crprotocol-5.1.0}/schemas/envelope-preview.json +0 -0
  714. {crprotocol-5.0.0 → crprotocol-5.1.0}/schemas/openapi.json +0 -0
  715. {crprotocol-5.0.0 → crprotocol-5.1.0}/schemas/persisted-state-header.json +0 -0
  716. {crprotocol-5.0.0 → crprotocol-5.1.0}/schemas/quality-report.json +0 -0
  717. {crprotocol-5.0.0 → crprotocol-5.1.0}/schemas/session-handle.json +0 -0
  718. {crprotocol-5.0.0 → crprotocol-5.1.0}/schemas/session-status.json +0 -0
  719. {crprotocol-5.0.0 → crprotocol-5.1.0}/schemas/stream-event.json +0 -0
  720. {crprotocol-5.0.0 → crprotocol-5.1.0}/schemas/task-intent.json +0 -0
  721. {crprotocol-5.0.0 → crprotocol-5.1.0}/scripts/audit_docs.py +0 -0
  722. {crprotocol-5.0.0 → crprotocol-5.1.0}/scripts/audit_docstrings.py +0 -0
  723. {crprotocol-5.0.0 → crprotocol-5.1.0}/scripts/auto_docstrings.py +0 -0
  724. {crprotocol-5.0.0 → crprotocol-5.1.0}/scripts/demo_varied_tests.py +0 -0
  725. {crprotocol-5.0.0 → crprotocol-5.1.0}/scripts/gen_changelog.py +0 -0
  726. {crprotocol-5.0.0 → crprotocol-5.1.0}/scripts/generate_api_reference.py +0 -0
  727. {crprotocol-5.0.0 → crprotocol-5.1.0}/scripts/probe_safety.py +0 -0
  728. {crprotocol-5.0.0 → crprotocol-5.1.0}/scripts/probe_varied_use_cases.py +0 -0
  729. {crprotocol-5.0.0 → crprotocol-5.1.0}/scripts/validate_crp_mcp.py +0 -0
  730. {crprotocol-5.0.0 → crprotocol-5.1.0}/scripts/verify_v4_demo.py +0 -0
  731. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/BingSiteAuth.xml +0 -0
  732. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/CNAME +0 -0
  733. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/.meta.yml +0 -0
  734. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/activation.md +0 -0
  735. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/advanced.md +0 -0
  736. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/agent.md +0 -0
  737. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/ckf.md +0 -0
  738. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/cli.md +0 -0
  739. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/client.md +0 -0
  740. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/compliance.md +0 -0
  741. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/comply.md +0 -0
  742. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/config.md +0 -0
  743. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/continuation.md +0 -0
  744. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/core.md +0 -0
  745. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/cso.md +0 -0
  746. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/dispatch.md +0 -0
  747. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/envelope.md +0 -0
  748. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/errors.md +0 -0
  749. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/events.md +0 -0
  750. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/extraction.md +0 -0
  751. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/gateway.md +0 -0
  752. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/headers.md +0 -0
  753. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/index.md +0 -0
  754. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/observability.md +0 -0
  755. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/policy.md +0 -0
  756. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/provenance.md +0 -0
  757. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/providers.md +0 -0
  758. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/reasoning.md +0 -0
  759. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/resources.md +0 -0
  760. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/safety.md +0 -0
  761. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/scan.md +0 -0
  762. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/schemas.md +0 -0
  763. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/security.md +0 -0
  764. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/api/state.md +0 -0
  765. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/assets/CRP_protocol_ecosystem_transparent.png +0 -0
  766. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/assets/favicon/android-chrome-192x192.png +0 -0
  767. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/assets/favicon/android-chrome-512x512.png +0 -0
  768. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/assets/favicon/apple-touch-icon.png +0 -0
  769. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/assets/favicon/favicon-16x16.png +0 -0
  770. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/assets/favicon/favicon-32x32.png +0 -0
  771. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/assets/favicon/favicon.ico +0 -0
  772. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/assets/favicon/site.webmanifest +0 -0
  773. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/assets/logo-full-readme.png +0 -0
  774. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/assets/logo-full.png +0 -0
  775. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/assets/logo-small.png +0 -0
  776. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/assets/og-image.png +0 -0
  777. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/capabilities.md +0 -0
  778. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/cite.md +0 -0
  779. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/compliance/.meta.yml +0 -0
  780. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/compliance/eu-ai-act.md +0 -0
  781. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/compliance/gdpr.md +0 -0
  782. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/compliance/index.md +0 -0
  783. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/compliance/iso-42001.md +0 -0
  784. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/compliance/nist-ai-rmf.md +0 -0
  785. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/compliance/security.md +0 -0
  786. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/contributing.md +0 -0
  787. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/faq.md +0 -0
  788. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/getting-started/.meta.yml +0 -0
  789. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/getting-started/cli.md +0 -0
  790. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/getting-started/index.md +0 -0
  791. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/getting-started/installation.md +0 -0
  792. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/getting-started/licensing.md +0 -0
  793. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/getting-started/local-models.md +0 -0
  794. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/getting-started/operating-the-ecosystem.md +0 -0
  795. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/getting-started/providers.md +0 -0
  796. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/getting-started/quickstart.md +0 -0
  797. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/guides/.meta.yml +0 -0
  798. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/guides/demo-app.md +0 -0
  799. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/guides/gateway-railway.md +0 -0
  800. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/guides/index.md +0 -0
  801. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/guides/ingestion.md +0 -0
  802. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/guides/multi-turn.md +0 -0
  803. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/guides/sdk-phases.md +0 -0
  804. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/guides/sdk.md +0 -0
  805. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/guides/session-persistence.md +0 -0
  806. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/guides/sidecar.md +0 -0
  807. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/guides/streaming.md +0 -0
  808. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/javascripts/ticker.js +0 -0
  809. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/legal/.meta.yml +0 -0
  810. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/legal/ai-policy.md +0 -0
  811. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/legal/cookie-policy.md +0 -0
  812. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/legal/index.md +0 -0
  813. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/legal/information-security-policy.md +0 -0
  814. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/legal/privacy-policy.md +0 -0
  815. {crprotocol-5.0.0/AI Agent adoption → crprotocol-5.1.0/site-docs}/llms-full.txt +0 -0
  816. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/llms.txt +0 -0
  817. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/pricing.md +0 -0
  818. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/products/.meta.yml +0 -0
  819. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/products/gateway.md +0 -0
  820. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/products/index.md +0 -0
  821. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/products/scan.md +0 -0
  822. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/products/scribe.md +0 -0
  823. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/products/visualise.md +0 -0
  824. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/protocol/.meta.yml +0 -0
  825. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/protocol/ckf.md +0 -0
  826. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/protocol/conformance.md +0 -0
  827. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/protocol/continuation.md +0 -0
  828. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/protocol/core.md +0 -0
  829. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/protocol/dispatch-strategies.md +0 -0
  830. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/protocol/envelope.md +0 -0
  831. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/protocol/extraction.md +0 -0
  832. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/protocol/headers.md +0 -0
  833. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/protocol/meta-learning.md +0 -0
  834. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/protocol/multi-agent.md +0 -0
  835. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/protocol/provenance.md +0 -0
  836. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/protocol/quality-tiers.md +0 -0
  837. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/protocol/research.md +0 -0
  838. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/protocol/safety-policy.md +0 -0
  839. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/protocol/session-token.md +0 -0
  840. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/protocol/zero-ckf-mode.md +0 -0
  841. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/robots.txt +0 -0
  842. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/safety/.meta.yml +0 -0
  843. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/safety/black-box.md +0 -0
  844. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/safety/coverage.md +0 -0
  845. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/safety/dpe.md +0 -0
  846. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/safety/index.md +0 -0
  847. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/safety/safety-policy.md +0 -0
  848. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/sdk/.meta.yml +0 -0
  849. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/sdk/ai-safety.md +0 -0
  850. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/sdk/async.md +0 -0
  851. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/sdk/configuration.md +0 -0
  852. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/sdk/context-management.md +0 -0
  853. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/sdk/errors.md +0 -0
  854. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/.meta.yml +0 -0
  855. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-001-core-protocol.md +0 -0
  856. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-002-headers.md +0 -0
  857. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-003-envelope.md +0 -0
  858. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-004-continuation.md +0 -0
  859. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-005-dpe.md +0 -0
  860. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-006-safety-policy.md +0 -0
  861. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-007-session-token.md +0 -0
  862. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-008-dispatch.md +0 -0
  863. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-009-ckf.md +0 -0
  864. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-010-regulatory-mapping.md +0 -0
  865. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-011-audit-trail.md +0 -0
  866. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-012-multi-agent-safety.md +0 -0
  867. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-013-github-action.md +0 -0
  868. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-014-conformance.md +0 -0
  869. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-015-security-privacy.md +0 -0
  870. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-016-gateway-service.md +0 -0
  871. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-017-zero-ckf-mode.md +0 -0
  872. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-018-air.md +0 -0
  873. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-019-cognitive-quality.md +0 -0
  874. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-020-cognitive-load-distribution.md +0 -0
  875. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-021-reasoning-orchestration.md +0 -0
  876. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-022-execution-fabric.md +0 -0
  877. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-023-amplification-boundary.md +0 -0
  878. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-024-coverage-differential-retrieval.md +0 -0
  879. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-025-graph-retrieval.md +0 -0
  880. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-026-semantic-quality-benchmark.md +0 -0
  881. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-027-retrieval-integrity.md +0 -0
  882. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-028-conversational-context.md +0 -0
  883. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-029-ephemeral-tool-context.md +0 -0
  884. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-030-cognitive-state-relay.md +0 -0
  885. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-031-semantic-task-layer.md +0 -0
  886. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-032-developer-experience.md +0 -0
  887. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-033-safety-control-plane.md +0 -0
  888. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-034-safety-coverage.md +0 -0
  889. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-035-context-lifecycle.md +0 -0
  890. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-036-scan-remediation.md +0 -0
  891. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-037-unified-config.md +0 -0
  892. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-038-storage-backends.md +0 -0
  893. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-039-semantic-code-ingestion.md +0 -0
  894. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-040-crp-comply.md +0 -0
  895. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-041-adoption-ecosystem.md +0 -0
  896. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-042-comply-upgrade-integration.md +0 -0
  897. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-043-gateway-runtime-product.md +0 -0
  898. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-044-authoritative-domain-agent.md +0 -0
  899. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-045-knowledge-learning.md +0 -0
  900. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-046-user-defined-cognition.md +0 -0
  901. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-047-monetisation-payments.md +0 -0
  902. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-048-comply-lowcode-github.md +0 -0
  903. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SPEC-HOSTING-CONTROL.md +0 -0
  904. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/CRP-SUBMISSION-GUIDE.md +0 -0
  905. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/spec/index.md +0 -0
  906. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/standards.md +0 -0
  907. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/stylesheets/extra.css +0 -0
  908. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/tags.md +0 -0
  909. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/terms-of-service.md +0 -0
  910. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/testing/.meta.yml +0 -0
  911. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/testing/index.md +0 -0
  912. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/testing/reproduce.md +0 -0
  913. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/topics/.meta.yml +0 -0
  914. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/topics/ai-compliance.md +0 -0
  915. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/topics/ai-governance.md +0 -0
  916. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/topics/ai-safety.md +0 -0
  917. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/topics/context-management.md +0 -0
  918. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/topics/crp-vs-rag-mcp.md +0 -0
  919. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/topics/index.md +0 -0
  920. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/who-is-it-for.md +0 -0
  921. {crprotocol-5.0.0 → crprotocol-5.1.0}/site-docs/why-crp.md +0 -0
  922. {crprotocol-5.0.0 → crprotocol-5.1.0}/skills/visual-expert/SKILL.md +0 -0
  923. {crprotocol-5.0.0 → crprotocol-5.1.0}/specification/01_RESEARCH_FOUNDATIONS.md +0 -0
  924. {crprotocol-5.0.0 → crprotocol-5.1.0}/specification/02_CORE_PROTOCOL.md +0 -0
  925. {crprotocol-5.0.0 → crprotocol-5.1.0}/specification/03_CONTEXT_ENVELOPE.md +0 -0
  926. {crprotocol-5.0.0 → crprotocol-5.1.0}/specification/04_TOKEN_GENERATION_PROTOCOL.md +0 -0
  927. {crprotocol-5.0.0 → crprotocol-5.1.0}/specification/05_SYSTEM_WIDE_INTEGRATION.md +0 -0
  928. {crprotocol-5.0.0 → crprotocol-5.1.0}/specification/06_IMPLEMENTATION_PLAN.md +0 -0
  929. {crprotocol-5.0.0 → crprotocol-5.1.0}/specification/07_SECURITY.md +0 -0
  930. {crprotocol-5.0.0 → crprotocol-5.1.0}/specification/08_MONETIZATION.md +0 -0
  931. {crprotocol-5.0.0 → crprotocol-5.1.0}/specification/09_DEPLOYMENT.md +0 -0
  932. {crprotocol-5.0.0 → crprotocol-5.1.0}/sqb_results/v5_local_8b.json +0 -0
  933. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/__init__.py +0 -0
  934. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/conformance/__init__.py +0 -0
  935. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/conformance/levels.py +0 -0
  936. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/conformance/runner.py +0 -0
  937. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/conformance/test_conformance.py +0 -0
  938. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/conformance/vectors/agent.json +0 -0
  939. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/conformance/vectors/dpe.json +0 -0
  940. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/conformance/vectors/headers.json +0 -0
  941. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/conformance/vectors/hmac.json +0 -0
  942. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/conformance/vectors/safety_policy.json +0 -0
  943. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/conformance/vectors/session.json +0 -0
  944. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/conftest.py +0 -0
  945. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/killer_test/crp_killer_report.json +0 -0
  946. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/killer_test/crp_killer_report.txt +0 -0
  947. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/killer_test/crp_killer_test.py +0 -0
  948. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/killer_test/debug_gap.py +0 -0
  949. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/killer_test/debug_gap2.py +0 -0
  950. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_adaptive_allocator.py +0 -0
  951. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_adversarial_provenance.py +0 -0
  952. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_agentic.py +0 -0
  953. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_app_profile.py +0 -0
  954. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_app_profile_integration.py +0 -0
  955. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_audit.py +0 -0
  956. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_audit_integration.py +0 -0
  957. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_benchmarks.py +0 -0
  958. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_checkpoint_inbox.py +0 -0
  959. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_ckf_gate.py +0 -0
  960. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_compliance_security.py +0 -0
  961. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_compliance_wiring.py +0 -0
  962. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_comply_billing.py +0 -0
  963. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_comply_gateway_proxy.py +0 -0
  964. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_context_enforcer.py +0 -0
  965. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_context_source.py +0 -0
  966. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_crp_headers.py +0 -0
  967. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_crp_mcp.py +0 -0
  968. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_crp_mcp_backends.py +0 -0
  969. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_crp_mcp_billing.py +0 -0
  970. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_crp_mcp_checkpoint.py +0 -0
  971. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_crp_mcp_checkpoint_policy.py +0 -0
  972. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_crp_mcp_connectors.py +0 -0
  973. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_crp_mcp_coverage.py +0 -0
  974. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_crp_mcp_permissions.py +0 -0
  975. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_cso.py +0 -0
  976. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_decision_provenance.py +0 -0
  977. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_decision_provenance_engine.py +0 -0
  978. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_discovery_provider_bridge.py +0 -0
  979. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_entailment_risk.py +0 -0
  980. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_fidelity_verification.py +0 -0
  981. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_gaps_2_3.py +0 -0
  982. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_gateway.py +0 -0
  983. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_gateway_client.py +0 -0
  984. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_github_routes.py +0 -0
  985. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_governor_clarify.py +0 -0
  986. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_horizons.py +0 -0
  987. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_input_continuation.py +0 -0
  988. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_integration.py +0 -0
  989. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_ip_protection.py +0 -0
  990. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_live_comprehensive.py +0 -0
  991. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_live_full_capture.py +0 -0
  992. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_live_long_generation.py +0 -0
  993. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_live_verification.py +0 -0
  994. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_manifest_ledger.py +0 -0
  995. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_no_code.py +0 -0
  996. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_operation_state.py +0 -0
  997. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_phase1.py +0 -0
  998. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_phase2.py +0 -0
  999. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_phase3.py +0 -0
  1000. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_phase4.py +0 -0
  1001. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_phase5.py +0 -0
  1002. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_phase6.py +0 -0
  1003. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_phase7.py +0 -0
  1004. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_phase8.py +0 -0
  1005. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_phase9.py +0 -0
  1006. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_production_hardening.py +0 -0
  1007. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_relay_strategies.py +0 -0
  1008. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_resource_manager.py +0 -0
  1009. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_retrieval_integrity.py +0 -0
  1010. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_safety_control_plane.py +0 -0
  1011. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_scan_r3.py +0 -0
  1012. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_scoring_robustness.py +0 -0
  1013. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_scratch_buffer.py +0 -0
  1014. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_sdk_dynamic.py +0 -0
  1015. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_sdk_extra_namespaces.py +0 -0
  1016. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_sdk_generated_reference.py +0 -0
  1017. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_sdk_level0.py +0 -0
  1018. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_sdk_level2.py +0 -0
  1019. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_sdk_more_namespaces.py +0 -0
  1020. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_sdk_namespaces.py +0 -0
  1021. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_security_modules.py +0 -0
  1022. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_session_token.py +0 -0
  1023. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_signup.py +0 -0
  1024. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_stl.py +0 -0
  1025. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_tcf.py +0 -0
  1026. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_tool_relay.py +0 -0
  1027. {crprotocol-5.0.0 → crprotocol-5.1.0}/tests/test_unified_config.py +0 -0
@@ -30,7 +30,7 @@ jobs:
30
30
  - name: Install dependencies
31
31
  run: |
32
32
  python -m pip install --upgrade pip
33
- pip install -e ".[dev]"
33
+ pip install -e ".[full,mcp,dev]"
34
34
 
35
35
  - name: Lint with ruff
36
36
  run: ruff check crp/ tests/
@@ -51,6 +51,8 @@ encrypted-*.pem
51
51
  .env.staging
52
52
  .env.development
53
53
  secrets/
54
+ kimi_moonshot_api_key.txt
55
+ *_api_key.txt
54
56
 
55
57
  # Dev scratch files (root-level only)
56
58
  /_*.py
@@ -1,7 +1,7 @@
1
1
  # CRP — Context Relay Protocol: Agent Integration Guide
2
2
 
3
3
  > This file teaches an AI coding agent how to add AI governance, safety, and compliance
4
- > to an application using CRPv4. If you are an AI agent helping a developer govern, secure,
4
+ > to an application using CRPv5. If you are an AI agent helping a developer govern, secure,
5
5
  > or make their LLM application audit-ready, this is your reference.
6
6
  >
7
7
  > For the short discovery file, see `https://crprotocol.io/llms.txt`.
@@ -1,7 +1,7 @@
1
1
  # CRP — Context Relay Protocol: Agent Integration Guide
2
2
 
3
3
  > This file teaches an AI coding agent how to add AI governance, safety, and compliance
4
- > to an application using CRPv4. If you are an AI agent helping a developer govern, secure,
4
+ > to an application using CRPv5. If you are an AI agent helping a developer govern, secure,
5
5
  > or make their LLM application audit-ready, this is your reference.
6
6
  >
7
7
  > For the short discovery file, see `https://crprotocol.io/llms.txt`.
@@ -1,4 +1,4 @@
1
- # CRP — Context Relay Protocol (v4)
1
+ # CRP — Context Relay Protocol (v5)
2
2
 
3
3
  > CRP is a sidecar governance protocol for AI inference. It sits between an application and
4
4
  > any LLM provider and governs every call: enforcing grounding and safety policy, scoring
@@ -11,7 +11,87 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
11
11
 
12
12
  ## [Unreleased]
13
13
 
14
- ## [5.0.0] - 2026-06-30
14
+ ## [5.1.0] - 2026-07-04
15
+
16
+ ### Fixed
17
+ - **Context-overflow guard in the positioned loop (`crp/stl/positioned.py`).**
18
+ `provider_model_call` previously sent a fixed `max_tokens` with no check against
19
+ the connected provider's real context window, even though `count_tokens()` and
20
+ `context_window_size()` are mandatory on the `LLMProvider` ABC. Added
21
+ `guard_prompt_budget()` (exported via `crp.stl`): caps `max_tokens` and, only if
22
+ still necessary, trims the **oldest** prompt content (preserving the task/operation
23
+ frame) so input, tool-call frames, continuation windows, and accumulated
24
+ multi-turn CSO state can never overflow the model's actual window — local or
25
+ frontier. Verified end-to-end against a live 8196-token local model across a
26
+ 6-turn multi-turn/tool-call/continuation stress scenario with zero overflow
27
+ errors (see `crp-comply/scripts/context_overflow_stress.py`).
28
+ - **Continuation anti-repetition** (`crp/stl/positioned.py`): the continuation loop
29
+ now feeds a `DocumentMap`-derived table of covered sections into each window's
30
+ prompt and applies an n-gram repetition guard (retry once, then stop) — reduces
31
+ 4-gram repetition on Kimi to a 3.66% mean across the SQB test cases (was
32
+ 15–30% under the naive continuation harness).
33
+ - **GitHub App: wrong installation-repos endpoint** (`crp/scan/github_app.py`).
34
+ `list_repos()` called `GET /installations/{installation_id}/repositories`,
35
+ which is not a real GitHub API route (always 404, regardless of a valid
36
+ installation ID/token). The correct endpoint is `GET /installation/repositories`
37
+ (singular, no ID in the path — the installation is implied entirely by the
38
+ installation access token used for auth). Also switched the auth header to
39
+ `Bearer` (matching `X-GitHub-Api-Version: 2022-11-28`) for consistency with
40
+ `installation_token()`. Added a URL-asserting regression test — the previous
41
+ test mocked `requests.get` without checking the actual URL, so it never
42
+ caught this.
43
+ - **`crp.scan.remediation.RemediationEngine.open_pr()` crashed in production**
44
+ whenever `crp.scan.github_app` was importable (i.e. always, once installed):
45
+ it called `GithubAppClient()` with no arguments, but the class requires
46
+ `app_id` + `private_key_pem`. Fixed to use the existing
47
+ `GithubAppClient.from_env()` factory, catching `RuntimeError` (env vars not
48
+ configured) alongside the existing `ImportError` (module not installed) —
49
+ both now return the same graceful fallback string instead of crashing.
50
+ - **`crp_mcp.auth.ClerkTokenVerifier` / `authenticate()` used non-existent
51
+ `AccessToken` fields.** The real `mcp.server.auth.provider.AccessToken`
52
+ pydantic model only has `token`/`client_id`/`scopes`/`expires_at`/`resource`
53
+ — no `subject` or `claims` field. Constructing it with those kwargs silently
54
+ dropped them, and `authenticate()` reading `access_token.claims` would raise
55
+ `AttributeError` in production whenever FastMCP's auth middleware path was
56
+ taken (not caught, not covered by any prior test). Fixed to store the
57
+ resolved user id in `client_id` and re-derive claims via
58
+ `_verify_token(access_token.token)` (the JWKS client is already cached).
59
+ Added a regression test exercising the FastMCP-context path directly.
60
+ - **`.github/workflows/ci.yml` never installed the `[mcp]` extras** (mcp,
61
+ pyyaml, httpx, `pyjwt[crypto]`, stripe, google-auth) — only `[dev]`. This
62
+ meant `crp_mcp`/comply/scan tests that depend on those packages could never
63
+ correctly run in CI. Changed to `pip install -e ".[full,mcp,dev]"`.
64
+ - **Windows GLiNER/PyTorch native crash (fatal access violation during
65
+ `GLiNER.from_pretrained()`).** Root-caused as a Windows OpenMP
66
+ duplicate-runtime conflict — numpy, scipy, scikit-learn, and torch each
67
+ bundle their own OpenMP DLL, and loading more than one in the same process
68
+ can crash natively when GLiNER's model weights are loaded. Not a CRP logic
69
+ bug, but genuinely fixable rather than merely a "disable stage 3"
70
+ workaround: `crp/__init__.py` now sets `KMP_DUPLICATE_LIB_OK=TRUE` and
71
+ `OMP_NUM_THREADS=1` (Windows-only, before any other CRP import, so it takes
72
+ effect before numpy/scipy/torch are first loaded), and
73
+ `crp/extraction/stage3_gliner.py` additionally caps `torch.set_num_threads(1)`
74
+ at the GLiNER model-load call site. Verified via a repeated fresh-load
75
+ stress test (15/15 clean runs) with zero effect on Linux/macOS.
76
+ - Several previously-failing tests were stale rather than indicating real
77
+ bugs, and have been corrected to match intentional prior refactors:
78
+ `test_gap_fixes_live.py` (7 tests) checked `CRPOrchestrator.dispatch`
79
+ directly via `inspect.getsource()`, but `dispatch()` is now a thin
80
+ thread-safety wrapper around `_dispatch_locked()` (added for reentrant
81
+ locking) — updated to inspect `_dispatch_locked`; two more assumed eager
82
+ embedding-model loading, which is intentionally lazy by default
83
+ (`eager_load_models`) — updated to opt in explicitly.
84
+ `test_comply_quota_gate.py` (2 tests) hardcoded a stale `"2026-06"` billing
85
+ period key that no longer matches `period_key()`'s real current-month
86
+ output — updated to call `period_key()`. `test_orchestrator_perf.py`'s
87
+ Ollama-probe-timeout test assumed no local Ollama instance is ever running —
88
+ now mocks `urllib.request.urlopen` so it is deterministic regardless of the
89
+ host machine. `test_sdk_generated_reference.py` (2 tests) failed because
90
+ `site-docs/api/modules/` was out of sync with the current module list
91
+ (`crp.tools` was added without regenerating docs) — regenerated via
92
+ `scripts/generate_api_reference.py`.
93
+
94
+
15
95
 
16
96
  CRP v5 turns the protocol from an inference-governance layer into a full
17
97
  **agentic execution** layer for small/local language models. The doctrine is
@@ -5,7 +5,10 @@
5
5
  **Target:** CRP v4.0.0
6
6
  **PyPI publish token (use only after v4.0.0 fully passes SQB gate):**
7
7
  ```
8
- pypi-AgEIcHlwaS5vcmcCJDZhOTJhZWMyLWU1NGUtNGI5MS05NTQ1LTllNTkxZGZhMTM2ZgACElsxLFsiY3Jwcm90b2NvbCJdXQACLFsyLFsiMTcwNjA3MTAtMzQwNC00YTM3LWEyNmYtYzgwNzY5YzQ4NjA3Il1dAAAGIDFak4jg6Ainb5mLvB5soBvA7edkdk7mYjDUZ-awLtTe
8
+ [REDACTED 2026-07-02 -- this token was committed in plaintext and has been
9
+ removed. Treat it as compromised; rotate on PyPI if not already rotated.
10
+ NEVER commit publish tokens to the repository -- pass via TWINE_PASSWORD
11
+ env var or an untracked local file instead.]
9
12
  ```
10
13
 
11
14
  ---
@@ -169,7 +172,7 @@ git push origin v4.0.0
169
172
 
170
173
  #### 2e. PyPI publish
171
174
  ```cmd
172
- .venv\Scripts\python.exe -m twine upload dist/crprotocol-4.0.0-*.whl --username __token__ --password pypi-AgEIcHlwaS5vcmcCJDZhOTJhZWMyLWU1NGUtNGI5MS05NTQ1LTllNTkxZGZhMTM2ZgACElsxLFsiY3Jwcm90b2NvbCJdXQACLFsyLFsiMTcwNjA3MTAtMzQwNC00YTM3LWEyNmYtYzgwNzY5YzQ4NjA3Il1dAAAGIDFak4jg6Ainb5mLvB5soBvA7edkdk7mYjDUZ-awLtTe
175
+ .venv\Scripts\python.exe -m twine upload dist/crprotocol-4.0.0-*.whl --username __token__ --password %PYPI_TOKEN%
173
176
  ```
174
177
 
175
178
  ### PYTEST NOTE (for B4.1)
@@ -1385,7 +1388,7 @@ Document all v4.0.0 changes:
1385
1388
  pip install twine
1386
1389
  python -m twine upload dist/crprotocol-4.0.0-*.whl \
1387
1390
  --username __token__ \
1388
- --password pypi-AgEIcHlwaS5vcmcCJDZhOTJhZWMyLWU1NGUtNGI5MS05NTQ1LTllNTkxZGZhMTM2ZgACElsxLFsiY3Jwcm90b2NvbCJdXQACLFsyLFsiMTcwNjA3MTAtMzQwNC00YTM3LWEyNmYtYzgwNzY5YzQ4NjA3Il1dAAAGIDFak4jg6Ainb5mLvB5soBvA7edkdk7mYjDUZ-awLtTe
1391
+ --password "$PYPI_TOKEN"
1389
1392
  ```
1390
1393
 
1391
1394
  #### B4.4 — GitHub Push
@@ -49,8 +49,8 @@ Legend: ☐ not started · ◐ in progress · ☑ done
49
49
  | **4** | **Make STL live** — real positioned loop (`run_positioned`); preventive-safety gate; INTEGRATE→CSO; structured-decoding contract at the `model_call` boundary | `crp/stl/positioned.py` | ☑ **done** — live loop + 8B validation; full 13-stage DPE verify is a follow-up |
50
50
  | **5** | **Observation Store + Resource Governor + Visibility event stream** | `crp/state/`, `crp/observability/`, `crp/resources/` | ☑ **done** — `ResourceGovernor` (slow-and-steady, device-tier capping); observations→CSO; OSM event stream |
51
51
  | **6** | **CLARIFY + Checkpoint consolidation** — make checkpoints faultless, test them, wire CLARIFY | `crp/security/clarify.py`, `crp/security/checkpoint.py` | ☑ **done** — sync `clarify` bridge (Invariant 10 fallback); CLARIFY op + oversight approval wired; async `Checkpoint` retained for webhooks |
52
- | **7** | **Expose** — `client.dispatch_positioned()` / execution-mode `positioned-tool-loop`; preventive safety gate; SDK + Gateway wiring | `crp/sdk/client.py`, `crp/core/orchestrator.py`, `crp-gateway/` | |
53
- | **8** | **Version bump 5.0.0**, promote SPEC-049/050 from draft, conformance, CHANGELOG | `crp/_version.py`, specs, `CHANGELOG.md` | |
52
+ | **7** | **Expose** — `client.dispatch_positioned()` / execution-mode `positioned-tool-loop`; preventive safety gate; SDK + Gateway wiring | `crp/sdk/client.py`, `crp/core/orchestrator.py`, `crp-gateway/` | **done** — `dispatch_positioned()` wired; `CRP-Agent-*` headers; validated live on 8B (191-token bounded window). Gateway-product wiring tracked separately in the `crp-gateway` repo |
53
+ | **8** | **Version bump 5.0.0**, promote SPEC-049/050 from draft, conformance, CHANGELOG | `crp/_version.py`, specs, `CHANGELOG.md` | **done** — 5.0.0 shipped to PyPI; SPEC-049/050 → Stable; CHANGELOG written; tagged `v5.0.0` |
54
54
 
55
55
  ---
56
56
 
@@ -161,5 +161,40 @@ CRP makes **two distinct guarantees**, and it is important not to conflate them:
161
161
 
162
162
  ---
163
163
 
164
- *Tracking report generated 2026-06-30. Update the status columns in §2 and the gate
165
- checklist in §6 as work lands.*
164
+ ## 9. Realised state audit (2026-07-01) the honest answer
165
+
166
+ > **What is really the state of CRPv5?** The positioned agentic loop is **real and
167
+ > working for single- and multi-turn requests**, proven end-to-end on Kimi (frontier)
168
+ > and the local 8B. It is **not yet** wired to the v4 deep-context/continuation
169
+ > subsystems. Below is the audited truth.
170
+
171
+ ### Working (verified end-to-end, local 8B + Kimi + logic)
172
+ | Use case | Status | Evidence |
173
+ |----------|--------|----------|
174
+ | Tool-call agentic execution | ✅ working | `run_positioned` + TCF + executor; e2e local 3/3, Kimi 3/3 |
175
+ | Context positioning (in-turn) | ✅ working | CSO `to_prompt_context` carries facts across operations; e2e PASS |
176
+ | **Multi-turn state relay** | ✅ **NEW, working** | `prior_cso` param seeds established_facts/observations/decisions; window advances; e2e Kimi PASS + regression test `test_multi_turn_state_relay` |
177
+ | CLARIFY / human-in-the-loop | ✅ working | `resolve_clarification`; e2e PASS |
178
+ | Preventive oversight halt | ✅ working | `_preventive_check` + oversight set; e2e PASS |
179
+ | Resource-governed profile | ✅ working | `ResourceGovernor.plan`; e2e PASS |
180
+ | Bounded working set | ✅ working | 68 tok across 5 relayed turns; ≤206 tok on real tasks |
181
+
182
+ ### Honest gaps (NOT yet wired into the positioned loop)
183
+ | Gap | Impact | Where it lives |
184
+ |-----|--------|----------------|
185
+ | Output continuation (one operation exceeding the token wall) | Long single-operation generations truncate; mitigated because work is split into operations and turns | `crp/continuation/` exists, not called from `positioned.py` |
186
+ | CDR/CDGR auto-retrieval | `context_facts` is passed in manually, not retrieved by novelty/graph walk | `crp/envelope/cdr.py`, `crp/ckf/cdgr.py` exist, not imported |
187
+ | Multi-horizon context / scratch buffer | Frame builder uses a flat fact list, no PERSISTENT/CONVERSATIONAL/EPHEMERAL blend | `crp/state/horizons.py`, `scratch_buffer.py` exist, not imported |
188
+ | DPE verification in the loop | No credibility/entailment gate on each operation's output | `crp/provenance/` exists, not imported |
189
+
190
+ ### Verdict
191
+ The loop is a **real agentic executor with proven multi-turn continuity and bounded
192
+ windows**. The remaining gaps are *depth* enhancements (auto-retrieval, output
193
+ continuation, DPE gating) — valuable next, but the core "positioning + multi-turn +
194
+ context carry-forward" is done and tested. Test harnesses: `examples/crp_demos/e2e_v5_test.py`
195
+ (every use case, local+Kimi+logic) and `examples/crp_demos/positioned_benchmark.py`.
196
+
197
+ ---
198
+
199
+ *Tracking report generated 2026-06-30; realised-state audit added 2026-07-01.*
200
+
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: crprotocol
3
- Version: 5.0.0
3
+ Version: 5.1.0
4
4
  Summary: Context Relay Protocol — unbounded context, unbounded generation, amplified reasoning for LLMs
5
5
  Project-URL: Homepage, https://crprotocol.io
6
6
  Project-URL: Documentation, https://crprotocol.io
@@ -89,13 +89,13 @@ Description-Content-Type: text/markdown
89
89
  <p align="center">
90
90
  <a href="LICENSE.md"><img src="https://img.shields.io/badge/Spec-CC_BY--SA_4.0-blue.svg" alt="Spec: CC BY-SA 4.0"></a>
91
91
  <a href="LICENSE.md"><img src="https://img.shields.io/badge/Code-ELv2-orange.svg" alt="Code: Elastic License 2.0"></a>
92
- <img src="https://img.shields.io/badge/Spec_Version-4.0.0-brightgreen.svg" alt="Spec Version: 4.0.0">
92
+ <img src="https://img.shields.io/badge/Spec_Version-5.1.0-brightgreen.svg" alt="Spec Version: 5.1.0">
93
93
  <img src="https://img.shields.io/badge/RFC_2119-Conformant-orange.svg" alt="RFC 2119">
94
94
  <img src="https://img.shields.io/badge/Language_Neutral-JSON_Schema-yellow.svg" alt="Language Neutral">
95
- <img src="https://img.shields.io/badge/Status-v4.0.0_WIP-yellow.svg" alt="Status: v4.0.0 WIP">
95
+ <img src="https://img.shields.io/badge/Status-v5.1.0_Stable-brightgreen.svg" alt="Status: v5.1.0 Stable">
96
96
  <a href="https://github.com/AutoCyber-AI/context-relay-protocol/actions"><img src="https://img.shields.io/github/actions/workflow/status/AutoCyber-AI/context-relay-protocol/ci.yml?label=CI" alt="CI"></a>
97
97
  <img src="https://img.shields.io/badge/python-3.10%2B-blue.svg" alt="Python 3.10+">
98
- <img src="https://img.shields.io/badge/tests-1%2C537-brightgreen.svg" alt="1,537 tests">
98
+ <img src="https://img.shields.io/badge/tests-2%2C796-brightgreen.svg" alt="2,796 tests">
99
99
  </p>
100
100
 
101
101
  <p align="center">
@@ -1136,7 +1136,7 @@ Full error taxonomy with all codes in [§6.10.4](specification/02_CORE_PROTOCOL.
1136
1136
 
1137
1137
  | Language | Status | Package | Repository |
1138
1138
  |----------|--------|---------|------------|
1139
- | **Python** | ✅ v3.1.1 / v4.0.0 WIP | `pip install -e ".[dev]"` | This repository |
1139
+ | **Python** | ✅ v5.1.0 | `pip install crprotocol` | This repository |
1140
1140
  | **TypeScript** | 📋 Planned | `npm install @crp/sdk` | `crp-typescript` |
1141
1141
  | **Rust** | 📋 Planned | `cargo add crp` | `crp-rust` |
1142
1142
 
@@ -1270,11 +1270,13 @@ All configuration is optional. CRP works with zero configuration if you pass you
1270
1270
  ## Roadmap
1271
1271
 
1272
1272
  ### Phase 1: Open Specification ✅
1273
- ### Phase 4: v4.0 Implementation ← **We are here**
1273
+ ### Phase 5: v5.1 Agentic Execution ← **We are here**
1274
1274
  - [x] Publish CRP v2.0 specification (9 documents, ~19,200 lines)
1275
1275
  - [x] JSON Schema definitions for all API types
1276
- - [ ] Reference SDK: Python (`pip install crprotocol`)
1277
- - [ ] Benchmark results: CRP on vs. off across tasks and models
1276
+ - [x] Reference SDK: Python (`pip install crprotocol`)
1277
+ - [x] Positioned agentic loop + Tool Capability Fabric (SPEC-049/050)
1278
+ - [x] Multi-turn CSO relay and continuation anti-repetition
1279
+ - [ ] Benchmark results published to BENCHMARKS.md
1278
1280
  - [ ] arXiv technical report with empirical evaluation
1279
1281
 
1280
1282
  ### Phase 2: Ecosystem
@@ -1398,7 +1400,7 @@ See [LICENSE.md](LICENSE.md) for the full license text.
1398
1400
  ---
1399
1401
 
1400
1402
  <p align="center">
1401
- <strong>Context Relay Protocol v4.0.0 WIP</strong><br>
1403
+ <strong>Context Relay Protocol v5.1.0</strong><br>
1402
1404
  Zero configuration. Unbounded input. Unbounded output. Amplified reasoning.<br>
1403
1405
  Better context at every scale. Honest degradation. Quality-tiered.<br>
1404
1406
  Peak quality. Every window.
@@ -58,11 +58,13 @@ In the Railway project → click your service → **Variables** tab → **"New V
58
58
  ```
59
59
  # ── Clerk ────────────────────────────────────────────────────────
60
60
  CLERK_ISSUER=https://clerk.scribe.crprotocol.io
61
- CLERK_SECRET_KEY=sk_live_j5y6TVVydxWe93qEj9DAUhB9jZJtpM8i4Ti4mVi5XQ
61
+ CLERK_SECRET_KEY=sk_live_...
62
62
 
63
- # ── Stripe ────────────────────────────────────────────────────────
63
+ # ── Stripe ──────────────────────────────────────────────────────────
64
+ # NEVER commit real values here. Pull from your local .env / secrets manager
65
+ # and paste directly into Railway's Variables UI -- never into this file.
64
66
  STRIPE_SECRET_KEY=<value from your .env file>
65
- STRIPE_WEBHOOK_SECRET=whsec_ASew8AShDg6NtD4jn4F6O1lY3FYv4SDz
67
+ STRIPE_WEBHOOK_SECRET=whsec_...
66
68
  STRIPE_SCRIBE_PRO_PRICE_ID=price_1TMSB5GRBK524I7zhmUgLmfm
67
69
  STRIPE_SCRIBE_ENTERPRISE_PRICE_ID=price_1TMSB5GRBK524I7zCIU71YN6
68
70
 
@@ -92,11 +94,11 @@ VITE_CLERK_PUBLISHABLE_KEY=pk_live_<get-from-clerk-dashboard>
92
94
  ```
93
95
  # ── Clerk ────────────────────────────────────────────────────────
94
96
  CLERK_ISSUER=https://clerk.comply.crprotocol.io
95
- CLERK_SECRET_KEY=sk_live_M96E3pt7KwY3WnsIERdW7VHUbZ1NfLLnExvCyq3Qom
97
+ CLERK_SECRET_KEY=sk_live_...
96
98
 
97
- # ── Stripe ────────────────────────────────────────────────────────
99
+ # ── Stripe ──────────────────────────────────────────────────────────
98
100
  STRIPE_SECRET_KEY=<value from your .env file>
99
- STRIPE_WEBHOOK_SECRET=whsec_TzhIRl0XKlqfRVGlVUOI6MwZmzlLxhum
101
+ STRIPE_WEBHOOK_SECRET=whsec_...
100
102
  STRIPE_COMPLY_PRO_PRICE_ID=price_1TMSGAGRBK524I7zvSYEwg9S
101
103
  STRIPE_COMPLY_ENTERPRISE_PRICE_ID=price_1TMSGAGRBK524I7z9ebppShK
102
104
  STRIPE_COMPLY_CLOUD_PRICE_ID=price_1TMSGAGRBK524I7zaSuQMMzb
@@ -20,12 +20,12 @@ Paste these directly into Railway → Service → Variables → **Raw Editor**.
20
20
 
21
21
  ```
22
22
  CLERK_ISSUER=https://clerk.scribe.crprotocol.io
23
- CLERK_SECRET_KEY=sk_live_j5y6TVVydxWe93qEj9DAUhB9jZJtpM8i4Ti4mVi5XQ
24
- STRIPE_SECRET_KEY=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
25
- STRIPE_WEBHOOK_SECRET=whsec_ASew8AShDg6NtD4jn4F6O1lY3FYv4SDz
23
+ CLERK_SECRET_KEY=sk_live_...
24
+ STRIPE_SECRET_KEY=sk_live_...
25
+ STRIPE_WEBHOOK_SECRET=whsec_...
26
26
  STRIPE_SCRIBE_PRO_PRICE_ID=price_1TMSB5GRBK524I7zhmUgLmfm
27
27
  STRIPE_SCRIBE_ENTERPRISE_PRICE_ID=price_1TMSB5GRBK524I7zCIU71YN6
28
- CRP_SCRIBE_JWT_SECRET=81ab043b53aece66d5347efe2de858b8f65817f8a740ac9ec386e86c058f0000
28
+ CRP_SCRIBE_JWT_SECRET=<generate-your-own-random-secret>
29
29
  CRP_SCRIBE_DATA_DIR=/app/data
30
30
  CRP_SCRIBE_FRONTEND_DIR=/app/frontend/dist
31
31
  CRP_SCRIBE_BASE_URL=https://scribe.crprotocol.io
@@ -33,18 +33,23 @@ CRP_SCRIBE_CORS_ORIGINS=https://scribe.crprotocol.io
33
33
  PYTHONUNBUFFERED=1
34
34
  ```
35
35
 
36
+ > **NEVER commit real secret values to this file.** Pull the actual values from
37
+ > your local `.env` / secrets manager and paste them directly into Railway's
38
+ > Variables UI -- never into a git-tracked file. This file documents variable
39
+ > *names* and *shape* only.
40
+
36
41
  ### All Scribe Variables at a Glance
37
42
 
38
43
  | Variable | Value | Build-time? |
39
44
  |---|---|---|
40
45
  | `VITE_CLERK_PUBLISHABLE_KEY` | `pk_live_Y2xlcmsuc2NyaWJlLmNycHJvdG9jb2wuaW8k` | **YES — toggle ON** |
41
46
  | `CLERK_ISSUER` | `https://clerk.scribe.crprotocol.io` | No |
42
- | `CLERK_SECRET_KEY` | `sk_live_j5y6TVVydxWe93qEj9DAUhB9jZJtpM8i4Ti4mVi5XQ` | No |
43
- | `STRIPE_SECRET_KEY` | from `.env` | No |
44
- | `STRIPE_WEBHOOK_SECRET` | `whsec_ASew8AShDg6NtD4jn4F6O1lY3FYv4SDz` | No |
47
+ | `CLERK_SECRET_KEY` | `sk_live_...` (see Clerk dashboard) | No |
48
+ | `STRIPE_SECRET_KEY` | `sk_live_...` (see Stripe dashboard) | No |
49
+ | `STRIPE_WEBHOOK_SECRET` | `whsec_...` (see Stripe webhook config) | No |
45
50
  | `STRIPE_SCRIBE_PRO_PRICE_ID` | `price_1TMSB5GRBK524I7zhmUgLmfm` | No |
46
51
  | `STRIPE_SCRIBE_ENTERPRISE_PRICE_ID` | `price_1TMSB5GRBK524I7zCIU71YN6` | No |
47
- | `CRP_SCRIBE_JWT_SECRET` | `81ab043b53aece66d5347efe2de858b8f65817f8a740ac9ec386e86c058f0000` | No |
52
+ | `CRP_SCRIBE_JWT_SECRET` | `<generate-your-own-random-secret>` | No |
48
53
  | `CRP_SCRIBE_DATA_DIR` | `/app/data` | No |
49
54
  | `CRP_SCRIBE_FRONTEND_DIR` | `/app/frontend/dist` | No |
50
55
  | `CRP_SCRIBE_BASE_URL` | `https://scribe.crprotocol.io` | No |
@@ -65,13 +70,13 @@ PYTHONUNBUFFERED=1
65
70
 
66
71
  ```
67
72
  CLERK_ISSUER=https://clerk.comply.crprotocol.io
68
- CLERK_SECRET_KEY=sk_live_M96E3pt7KwY3WnsIERdW7VHUbZ1NfLLnExvCyq3Qom
69
- STRIPE_SECRET_KEY=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
70
- STRIPE_WEBHOOK_SECRET=whsec_TzhIRl0XKlqfRVGlVUOI6MwZmzlLxhum
73
+ CLERK_SECRET_KEY=sk_live_...
74
+ STRIPE_SECRET_KEY=sk_live_...
75
+ STRIPE_WEBHOOK_SECRET=whsec_...
71
76
  STRIPE_COMPLY_PRO_PRICE_ID=price_1TMSGAGRBK524I7zvSYEwg9S
72
77
  STRIPE_COMPLY_ENTERPRISE_PRICE_ID=price_1TMSGAGRBK524I7z9ebppShK
73
78
  STRIPE_COMPLY_CLOUD_PRICE_ID=price_1TMSGAGRBK524I7zaSuQMMzb
74
- CRP_COMPLY_JWT_SECRET=253bdb0c901c4cd4894ca4176c9195b66a914927c193adc09b7c7dfef2797cb5
79
+ CRP_COMPLY_JWT_SECRET=<generate-your-own-random-secret>
75
80
  CRP_COMPLY_DATA_DIR=/app/data
76
81
  CRP_COMPLY_FRONTEND_DIR=/app/frontend/dist
77
82
  CRP_COMPLY_BASE_URL=https://comply.crprotocol.io
@@ -79,7 +84,10 @@ CRP_COMPLY_CORS_ORIGINS=https://comply.crprotocol.io
79
84
  PYTHONUNBUFFERED=1
80
85
  ```
81
86
 
82
- > `STRIPE_SECRET_KEY` open `C:\Users\User\Desktop\crp-comply\.env` and copy the `sk_live_51TLbVk...` value.
87
+ > **NEVER commit real secret values to this file.** Pull the actual values from
88
+ > your local `.env` / secrets manager and paste them directly into Railway's
89
+ > Variables UI -- never into a git-tracked file. This file documents variable
90
+ > *names* and *shape* only.
83
91
 
84
92
  ### All Comply Variables at a Glance
85
93
 
@@ -87,13 +95,13 @@ PYTHONUNBUFFERED=1
87
95
  |---|---|---|
88
96
  | `VITE_CLERK_PUBLISHABLE_KEY` | `pk_live_Y2xlcmsuY29tcGx5LmNycHJvdG9jb2wuaW8k` | **YES — toggle ON** |
89
97
  | `CLERK_ISSUER` | `https://clerk.comply.crprotocol.io` | No |
90
- | `CLERK_SECRET_KEY` | `sk_live_M96E3pt7KwY3WnsIERdW7VHUbZ1NfLLnExvCyq3Qom` | No |
91
- | `STRIPE_SECRET_KEY` | from `.env` | No |
92
- | `STRIPE_WEBHOOK_SECRET` | `whsec_TzhIRl0XKlqfRVGlVUOI6MwZmzlLxhum` | No |
98
+ | `CLERK_SECRET_KEY` | `sk_live_...` (see Clerk dashboard) | No |
99
+ | `STRIPE_SECRET_KEY` | `sk_live_...` (see Stripe dashboard) | No |
100
+ | `STRIPE_WEBHOOK_SECRET` | `whsec_...` (see Stripe webhook config) | No |
93
101
  | `STRIPE_COMPLY_PRO_PRICE_ID` | `price_1TMSGAGRBK524I7zvSYEwg9S` | No |
94
102
  | `STRIPE_COMPLY_ENTERPRISE_PRICE_ID` | `price_1TMSGAGRBK524I7z9ebppShK` | No |
95
103
  | `STRIPE_COMPLY_CLOUD_PRICE_ID` | `price_1TMSGAGRBK524I7zaSuQMMzb` | No |
96
- | `CRP_COMPLY_JWT_SECRET` | `253bdb0c901c4cd4894ca4176c9195b66a914927c193adc09b7c7dfef2797cb5` | No |
104
+ | `CRP_COMPLY_JWT_SECRET` | `<generate-your-own-random-secret>` | No |
97
105
  | `CRP_COMPLY_DATA_DIR` | `/app/data` | No |
98
106
  | `CRP_COMPLY_FRONTEND_DIR` | `/app/frontend/dist` | No |
99
107
  | `CRP_COMPLY_BASE_URL` | `https://comply.crprotocol.io` | No |
@@ -16,13 +16,13 @@
16
16
  <p align="center">
17
17
  <a href="LICENSE.md"><img src="https://img.shields.io/badge/Spec-CC_BY--SA_4.0-blue.svg" alt="Spec: CC BY-SA 4.0"></a>
18
18
  <a href="LICENSE.md"><img src="https://img.shields.io/badge/Code-ELv2-orange.svg" alt="Code: Elastic License 2.0"></a>
19
- <img src="https://img.shields.io/badge/Spec_Version-4.0.0-brightgreen.svg" alt="Spec Version: 4.0.0">
19
+ <img src="https://img.shields.io/badge/Spec_Version-5.1.0-brightgreen.svg" alt="Spec Version: 5.1.0">
20
20
  <img src="https://img.shields.io/badge/RFC_2119-Conformant-orange.svg" alt="RFC 2119">
21
21
  <img src="https://img.shields.io/badge/Language_Neutral-JSON_Schema-yellow.svg" alt="Language Neutral">
22
- <img src="https://img.shields.io/badge/Status-v4.0.0_WIP-yellow.svg" alt="Status: v4.0.0 WIP">
22
+ <img src="https://img.shields.io/badge/Status-v5.1.0_Stable-brightgreen.svg" alt="Status: v5.1.0 Stable">
23
23
  <a href="https://github.com/AutoCyber-AI/context-relay-protocol/actions"><img src="https://img.shields.io/github/actions/workflow/status/AutoCyber-AI/context-relay-protocol/ci.yml?label=CI" alt="CI"></a>
24
24
  <img src="https://img.shields.io/badge/python-3.10%2B-blue.svg" alt="Python 3.10+">
25
- <img src="https://img.shields.io/badge/tests-1%2C537-brightgreen.svg" alt="1,537 tests">
25
+ <img src="https://img.shields.io/badge/tests-2%2C796-brightgreen.svg" alt="2,796 tests">
26
26
  </p>
27
27
 
28
28
  <p align="center">
@@ -1063,7 +1063,7 @@ Full error taxonomy with all codes in [§6.10.4](specification/02_CORE_PROTOCOL.
1063
1063
 
1064
1064
  | Language | Status | Package | Repository |
1065
1065
  |----------|--------|---------|------------|
1066
- | **Python** | ✅ v3.1.1 / v4.0.0 WIP | `pip install -e ".[dev]"` | This repository |
1066
+ | **Python** | ✅ v5.1.0 | `pip install crprotocol` | This repository |
1067
1067
  | **TypeScript** | 📋 Planned | `npm install @crp/sdk` | `crp-typescript` |
1068
1068
  | **Rust** | 📋 Planned | `cargo add crp` | `crp-rust` |
1069
1069
 
@@ -1197,11 +1197,13 @@ All configuration is optional. CRP works with zero configuration if you pass you
1197
1197
  ## Roadmap
1198
1198
 
1199
1199
  ### Phase 1: Open Specification ✅
1200
- ### Phase 4: v4.0 Implementation ← **We are here**
1200
+ ### Phase 5: v5.1 Agentic Execution ← **We are here**
1201
1201
  - [x] Publish CRP v2.0 specification (9 documents, ~19,200 lines)
1202
1202
  - [x] JSON Schema definitions for all API types
1203
- - [ ] Reference SDK: Python (`pip install crprotocol`)
1204
- - [ ] Benchmark results: CRP on vs. off across tasks and models
1203
+ - [x] Reference SDK: Python (`pip install crprotocol`)
1204
+ - [x] Positioned agentic loop + Tool Capability Fabric (SPEC-049/050)
1205
+ - [x] Multi-turn CSO relay and continuation anti-repetition
1206
+ - [ ] Benchmark results published to BENCHMARKS.md
1205
1207
  - [ ] arXiv technical report with empirical evaluation
1206
1208
 
1207
1209
  ### Phase 2: Ecosystem
@@ -1325,7 +1327,7 @@ See [LICENSE.md](LICENSE.md) for the full license text.
1325
1327
  ---
1326
1328
 
1327
1329
  <p align="center">
1328
- <strong>Context Relay Protocol v4.0.0 WIP</strong><br>
1330
+ <strong>Context Relay Protocol v5.1.0</strong><br>
1329
1331
  Zero configuration. Unbounded input. Unbounded output. Amplified reasoning.<br>
1330
1332
  Better context at every scale. Honest degradation. Quality-tiered.<br>
1331
1333
  Peak quality. Every window.
@@ -16,6 +16,23 @@ Usage::
16
16
 
17
17
  from __future__ import annotations
18
18
 
19
+ import os
20
+ import sys
21
+
22
+ # ── Windows OpenMP duplicate-runtime crash mitigation ────────────────────
23
+ # On Windows, numpy/scipy/scikit-learn/torch each bundle their own OpenMP
24
+ # runtime DLL. When several of them coexist in one process (as they do once
25
+ # the optional [nlp]/[full] extras — sentence-transformers, GLiNER, torch —
26
+ # are installed alongside numpy/scipy/scikit-learn), loading more than one
27
+ # OpenMP runtime can trigger a native access violation (observed as a fatal
28
+ # crash inside `torch`'s C extension during model loading, e.g.
29
+ # `GLiNER.from_pretrained(...)`). This must be set BEFORE numpy/scipy/torch
30
+ # are first imported anywhere in the process, so it lives at the very top of
31
+ # this package's __init__, ahead of every other CRP import.
32
+ if sys.platform == "win32":
33
+ os.environ.setdefault("KMP_DUPLICATE_LIB_OK", "TRUE")
34
+ os.environ.setdefault("OMP_NUM_THREADS", "1")
35
+
19
36
  from crp._version import __version__
20
37
  from crp.config import CRPConfig
21
38
  from crp.core.config import ConfigurationResolver
@@ -2,4 +2,4 @@
2
2
  # Licensed under Elastic License 2.0 — see LICENSE.md for details.
3
3
  """CRP — Context Relay Protocol SDK."""
4
4
 
5
- __version__ = "5.0.0"
5
+ __version__ = "5.1.0"
@@ -129,6 +129,21 @@ class GLiNERExtractor:
129
129
  return None
130
130
 
131
131
  try:
132
+ import sys
133
+
134
+ if sys.platform == "win32":
135
+ # Extra hardening beyond the process-level env vars set in
136
+ # crp/__init__.py: also cap torch's own intra-op thread pool.
137
+ # Prevents a Windows-only native access violation caused by
138
+ # multiple OpenMP runtimes (numpy/scipy/sklearn/torch) racing
139
+ # during model weight loading — see crp/__init__.py comment.
140
+ try:
141
+ import torch # type: ignore[import-untyped]
142
+
143
+ torch.set_num_threads(1)
144
+ except Exception:
145
+ pass
146
+
132
147
  from gliner import GLiNER # type: ignore[import-untyped]
133
148
 
134
149
  self._model = GLiNER.from_pretrained("urchade/gliner_base") # type: ignore[assignment]
@@ -124,12 +124,20 @@ class GithubAppClient:
124
124
  # ------------------------------------------------------------------
125
125
 
126
126
  def list_repos(self, installation_id: str | int) -> list[dict[str, Any]]:
127
- """List repositories accessible to this installation."""
127
+ """List repositories accessible to this installation.
128
+
129
+ GitHub's endpoint for this is ``GET /installation/repositories``
130
+ (singular ``installation``, no ID in the path) -- the installation
131
+ is implied entirely by the installation access token used for auth.
132
+ There is no ``/installations/{id}/repositories`` route; using it
133
+ returns a 404 regardless of a valid installation_id/token.
134
+ """
128
135
  token = self.installation_token(installation_id)
129
- url = f"{_GITHUB_API_BASE}/installations/{installation_id}/repositories"
136
+ url = f"{_GITHUB_API_BASE}/installation/repositories"
130
137
  headers = {
131
- "Authorization": f"token {token}",
138
+ "Authorization": f"Bearer {token}",
132
139
  "Accept": "application/vnd.github+json",
140
+ "X-GitHub-Api-Version": "2022-11-28",
133
141
  }
134
142
  repos: list[dict[str, Any]] = []
135
143
  while url:
@@ -263,7 +263,14 @@ class RemediationEngine:
263
263
  # NEVER commit to base_branch directly — use the PR branch from the proposal
264
264
  pr_branch = proposal.pr_branch
265
265
 
266
- github = GithubAppClient()
266
+ try:
267
+ github = GithubAppClient.from_env()
268
+ except RuntimeError:
269
+ return (
270
+ f"[GitHub App not configured — set GITHUB_APP_ID + "
271
+ f"GITHUB_APP_PRIVATE_KEY (or GITHUB_APP_PRIVATE_KEY_PATH). "
272
+ f"Proposed branch: {proposal.pr_branch}]"
273
+ )
267
274
  token = github.installation_token(installation_id)
268
275
  # Split owner/repo from the repo full name
269
276
  owner_name, repo_name = repo.split("/", 1) if "/" in repo else ("", repo)