flare-kernel 1.0.7__tar.gz → 1.0.8__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 (1248) hide show
  1. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/PKG-INFO +1 -1
  2. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/pyproject.toml +1 -1
  3. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/contracts/session_contract.py +10 -0
  4. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/api/session.py +22 -133
  5. flare_kernel-1.0.8/src/flare_kernel/router/api/session_access.py +48 -0
  6. flare_kernel-1.0.8/src/flare_kernel/router/api/session_messages.py +101 -0
  7. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/canonical/workflow_projection.py +6 -1
  8. flare_kernel-1.0.8/src/flare_kernel/router/canonical/workflow_run_projection.py +166 -0
  9. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/session/repository.py +9 -0
  10. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/session/repository_memory.py +26 -0
  11. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/session/repository_sql.py +39 -0
  12. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/session/repository_sql_schema.py +4 -1
  13. flare_kernel-1.0.8/src/flare_kernel/session_message_window.py +82 -0
  14. flare_kernel-1.0.8/src/flare_kernel/session_message_window_store.py +42 -0
  15. flare_kernel-1.0.8/src/flare_kernel/session_repository_registry.py +39 -0
  16. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/session_store.py +25 -40
  17. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel.egg-info/PKG-INFO +1 -1
  18. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel.egg-info/SOURCES.txt +6 -0
  19. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_session_api.py +42 -0
  20. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_session_sql_repository.py +43 -0
  21. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_workflow_projection_precedence.py +72 -0
  22. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/README.md +0 -0
  23. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/setup.cfg +0 -0
  24. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/__init__.py +0 -0
  25. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/app.py +0 -0
  26. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/contracts/__init__.py +0 -0
  27. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/contracts/artifact_document.py +0 -0
  28. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/contracts/auth_contract.py +0 -0
  29. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/contracts/code_proposal_contract.py +0 -0
  30. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/contracts/context.py +0 -0
  31. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/contracts/kernel_contract.py +0 -0
  32. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/contracts/list_event_contract.py +0 -0
  33. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/contracts/llm_node_taxonomy.py +0 -0
  34. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/contracts/mode.py +0 -0
  35. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/contracts/node_result.py +0 -0
  36. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/contracts/project_contract.py +0 -0
  37. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/contracts/project_memory_contract.py +0 -0
  38. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/contracts/run_contract.py +0 -0
  39. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/contracts/source_image_understanding.py +0 -0
  40. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/contracts/update_contract.py +0 -0
  41. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/contracts/workflow_tracker_contract.py +0 -0
  42. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/list_event_broker.py +0 -0
  43. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/main.py +0 -0
  44. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/project_record_memory_store.py +0 -0
  45. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/project_session_summary.py +0 -0
  46. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/project_store.py +0 -0
  47. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/__init__.py +0 -0
  48. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/api/__init__.py +0 -0
  49. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/api/auth.py +0 -0
  50. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/api/auth_guard.py +0 -0
  51. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/api/chat.py +0 -0
  52. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/api/chat_attach_stream.py +0 -0
  53. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/api/chat_stream_timing.py +0 -0
  54. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/api/errors.py +0 -0
  55. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/api/list_events.py +0 -0
  56. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/api/project.py +0 -0
  57. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/api/run.py +0 -0
  58. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/api/session_artifact_edit.py +0 -0
  59. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/api/session_list_events.py +0 -0
  60. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/api/session_run_projection.py +0 -0
  61. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/api/update.py +0 -0
  62. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/canonical/__init__.py +0 -0
  63. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/canonical/analysis.py +0 -0
  64. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/canonical/analysis_projection.py +0 -0
  65. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/canonical/capability_availability.py +0 -0
  66. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/canonical/checkpoint.py +0 -0
  67. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/canonical/composer_ui.py +0 -0
  68. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/canonical/context/__init__.py +0 -0
  69. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/canonical/context/analysis.py +0 -0
  70. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/canonical/context/inputs.py +0 -0
  71. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/canonical/context/session.py +0 -0
  72. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/canonical/context_activity.py +0 -0
  73. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/canonical/context_authority.py +0 -0
  74. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/canonical/contract_support.py +0 -0
  75. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/canonical/flow.py +0 -0
  76. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/canonical/intent_state_projection.py +0 -0
  77. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/canonical/mode_projection.py +0 -0
  78. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/canonical/payload.py +0 -0
  79. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/canonical/projection.py +0 -0
  80. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/canonical/track_actions.py +0 -0
  81. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/canonical/workflow_projection_policy.py +0 -0
  82. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/canonical/workflow_tracker_projection.py +0 -0
  83. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/completion/__init__.py +0 -0
  84. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/completion/analysis_artifact_overwrite_guard.py +0 -0
  85. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/completion/analysis_policy.py +0 -0
  86. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/completion/analysis_result_contract.py +0 -0
  87. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/completion/artifact_action_contract.py +0 -0
  88. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/completion/artifact_regeneration_bridge.py +0 -0
  89. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/completion/boundary_intent.py +0 -0
  90. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/completion/boundary_response_composer.py +0 -0
  91. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/completion/capability_boundary.py +0 -0
  92. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/completion/degraded_fallback.py +0 -0
  93. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/completion/guided.py +0 -0
  94. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/completion/intake_chooser_reply_policy.py +0 -0
  95. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/completion/intake_commit_contract.py +0 -0
  96. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/completion/intake_question_visibility.py +0 -0
  97. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/completion/intake_summary_content.py +0 -0
  98. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/completion/intake_summary_document_sync.py +0 -0
  99. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/completion/intake_summary_events.py +0 -0
  100. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/completion/intake_summary_submission.py +0 -0
  101. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/completion/output_quality.py +0 -0
  102. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/completion/response_appendix.py +0 -0
  103. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/completion/response_builder.py +0 -0
  104. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/completion/response_quality_projection.py +0 -0
  105. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/completion/selection.py +0 -0
  106. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/completion/sidecar_reply_policy.py +0 -0
  107. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/completion/stream_collect.py +0 -0
  108. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/completion/turn_decision_policy.py +0 -0
  109. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/context/__init__.py +0 -0
  110. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/context/endpoint.py +0 -0
  111. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/context/sourcing_preview.py +0 -0
  112. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/fast_gate.py +0 -0
  113. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/hardcode_boundary.py +0 -0
  114. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/__init__.py +0 -0
  115. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/amount_quantity.py +0 -0
  116. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/answer.py +0 -0
  117. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/authority/__init__.py +0 -0
  118. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/authority/checkpoint.py +0 -0
  119. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/authority/core.py +0 -0
  120. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/authority/hydration.py +0 -0
  121. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/authority/session.py +0 -0
  122. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/canonicalization.py +0 -0
  123. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/clarification.py +0 -0
  124. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/decision_rules.py +0 -0
  125. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/delivery_time.py +0 -0
  126. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/entry_policy.py +0 -0
  127. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/extraction/__init__.py +0 -0
  128. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/extraction/control_messages.py +0 -0
  129. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/extraction/core.py +0 -0
  130. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/extraction/extractors.py +0 -0
  131. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/extraction/merge.py +0 -0
  132. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/extraction/quantity_classifier.py +0 -0
  133. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/extraction/quantity_prefixes.py +0 -0
  134. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/extraction/use_case_patterns.py +0 -0
  135. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/field_projection/__init__.py +0 -0
  136. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/field_projection/core.py +0 -0
  137. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/field_projection/entity.py +0 -0
  138. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/field_projection/payload.py +0 -0
  139. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/field_projection/source.py +0 -0
  140. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/field_scope.py +0 -0
  141. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/guided/__init__.py +0 -0
  142. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/guided/confirmed_updates.py +0 -0
  143. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/guided/flags.py +0 -0
  144. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/guided/followup.py +0 -0
  145. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/guided/followup_work_item.py +0 -0
  146. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/guided/open_fields.py +0 -0
  147. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/guided/status.py +0 -0
  148. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/guided/summary.py +0 -0
  149. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/inputs.py +0 -0
  150. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/legacy_question.py +0 -0
  151. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/node_state.py +0 -0
  152. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/numeric.py +0 -0
  153. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/payload_updates.py +0 -0
  154. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/readiness.py +0 -0
  155. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/state_persistence.py +0 -0
  156. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/status/__init__.py +0 -0
  157. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/status/core.py +0 -0
  158. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/status/guided_session.py +0 -0
  159. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/status/projection.py +0 -0
  160. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/status/schema.py +0 -0
  161. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/status/stage_resolution.py +0 -0
  162. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intake/workflow_checkpoint.py +0 -0
  163. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intent/__init__.py +0 -0
  164. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intent/classifier_utils.py +0 -0
  165. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intent/compat_aliases.py +0 -0
  166. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intent/escalation/__init__.py +0 -0
  167. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intent/escalation/override.py +0 -0
  168. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intent/escalation/pipeline.py +0 -0
  169. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intent/escalation/signal.py +0 -0
  170. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intent/routing.py +0 -0
  171. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intent/session_intent/__init__.py +0 -0
  172. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intent/session_intent/core.py +0 -0
  173. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intent/session_intent/fields.py +0 -0
  174. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/intent/session_intent/small_talk.py +0 -0
  175. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel.py +0 -0
  176. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_constants/__init__.py +0 -0
  177. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_constants/intake.py +0 -0
  178. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_constants/intent.py +0 -0
  179. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_constants/patch.py +0 -0
  180. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_endpoint_handlers/__init__.py +0 -0
  181. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_endpoint_handlers/health.py +0 -0
  182. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_endpoint_handlers/knowledge.py +0 -0
  183. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_endpoint_handlers/sourcing.py +0 -0
  184. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_endpoint_handlers/turn.py +0 -0
  185. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_facade/__init__.py +0 -0
  186. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_facade/canonical_state.py +0 -0
  187. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_facade/context_io.py +0 -0
  188. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_facade/dependency_resolution.py +0 -0
  189. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_facade/domain_pack_payload.py +0 -0
  190. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_facade/domain_trigger_signal_flow.py +0 -0
  191. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_facade/flow.py +0 -0
  192. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_facade/flow_admission.py +0 -0
  193. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_facade/flow_context_refs.py +0 -0
  194. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_facade/flow_enrichment.py +0 -0
  195. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_facade/flow_execution_mode.py +0 -0
  196. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_facade/flow_orchestration_status.py +0 -0
  197. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_facade/flow_result.py +0 -0
  198. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_facade/flow_runtime_projection.py +0 -0
  199. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_facade/flow_timing.py +0 -0
  200. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_facade/orchestration.py +0 -0
  201. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_facade/payload_enrichment.py +0 -0
  202. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_facade/runtime_prompt_projection.py +0 -0
  203. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_facade/structured_reasoning_policy.py +0 -0
  204. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_facade/turn_context.py +0 -0
  205. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_facade/utils.py +0 -0
  206. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_flow_bindings/__init__.py +0 -0
  207. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_flow_bindings/intent_query.py +0 -0
  208. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_flow_bindings/mode.py +0 -0
  209. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_flow_bindings/session_intent.py +0 -0
  210. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_request_pipeline/__init__.py +0 -0
  211. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_request_pipeline/action.py +0 -0
  212. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_request_pipeline/early_boundary.py +0 -0
  213. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_request_pipeline/fast_gate_policy.py +0 -0
  214. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_request_pipeline/intake.py +0 -0
  215. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_request_pipeline/intake_session_intent_bridge.py +0 -0
  216. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_request_pipeline/intent_query.py +0 -0
  217. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_request_pipeline/intent_signal.py +0 -0
  218. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_request_pipeline/session_binding.py +0 -0
  219. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_route/__init__.py +0 -0
  220. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_route/action.py +0 -0
  221. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_route/execution.py +0 -0
  222. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_route/run.py +0 -0
  223. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_route/stream.py +0 -0
  224. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_stream_session.py +0 -0
  225. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/kernel_support_routes.py +0 -0
  226. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/mode/__init__.py +0 -0
  227. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/mode/resolution.py +0 -0
  228. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/mode/switch.py +0 -0
  229. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/next_actions_guard.py +0 -0
  230. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/orchestration/__init__.py +0 -0
  231. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/orchestration/status/__init__.py +0 -0
  232. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/orchestration/status/action_readiness.py +0 -0
  233. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/orchestration/status/actions.py +0 -0
  234. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/orchestration/status/analysis_entry_decision.py +0 -0
  235. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/orchestration/status/builder.py +0 -0
  236. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/orchestration/status/checkpoint_state.py +0 -0
  237. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/orchestration/status/context.py +0 -0
  238. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/orchestration/status/context_helpers.py +0 -0
  239. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/orchestration/status/core.py +0 -0
  240. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/orchestration/status/decision.py +0 -0
  241. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/orchestration/status/followup_state.py +0 -0
  242. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/orchestration/status/projection.py +0 -0
  243. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/orchestration/status/result.py +0 -0
  244. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/orchestration/status/runtime_state.py +0 -0
  245. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/orchestration/status/state/__init__.py +0 -0
  246. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/orchestration/status/state/context.py +0 -0
  247. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/orchestration/status/state/decision.py +0 -0
  248. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/orchestration/status/state/entry.py +0 -0
  249. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/orchestration/status/state/flow.py +0 -0
  250. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/orchestration/status/state/followup.py +0 -0
  251. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/orchestration/status/state/intent.py +0 -0
  252. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/orchestration/status/state/node.py +0 -0
  253. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/orchestration/status/state/payload.py +0 -0
  254. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/orchestration/status/state/unpack.py +0 -0
  255. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/orchestration/trace/__init__.py +0 -0
  256. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/orchestration/trace/core.py +0 -0
  257. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/orchestration/trace/projection.py +0 -0
  258. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/orchestration/trace/steps.py +0 -0
  259. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/patch_contract.py +0 -0
  260. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/payload/__init__.py +0 -0
  261. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/payload/action.py +0 -0
  262. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/payload/admission_state.py +0 -0
  263. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/payload/analysis_artifact_context.py +0 -0
  264. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/payload/analysis_canvas.py +0 -0
  265. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/payload/analysis_template_matching.py +0 -0
  266. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/payload/analysis_template_projection.py +0 -0
  267. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/payload/analysis_template_variants.py +0 -0
  268. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/payload/enrichment.py +0 -0
  269. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/payload/turn_act_enrichment.py +0 -0
  270. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/prompting/__init__.py +0 -0
  271. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/prompting/artifact_edit_preflight.py +0 -0
  272. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/prompting/artifact_template.py +0 -0
  273. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/prompting/boundary_intent.py +0 -0
  274. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/prompting/candidate_fields.py +0 -0
  275. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/prompting/capability_boundary.py +0 -0
  276. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/prompting/context_blocks.py +0 -0
  277. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/prompting/context_copy.py +0 -0
  278. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/prompting/core.py +0 -0
  279. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/prompting/mainline_answer_frame.py +0 -0
  280. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/prompting/patch_preview.py +0 -0
  281. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/prompting/pre_response_plan.py +0 -0
  282. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/prompting/requirement_intake.py +0 -0
  283. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/prompting/response_strategy.py +0 -0
  284. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/prompting/summary_contract.py +0 -0
  285. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/prompting/track_context.py +0 -0
  286. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/prompting/workflow_guidance.py +0 -0
  287. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/request/__init__.py +0 -0
  288. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/request/identity.py +0 -0
  289. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/request/intent_resolution.py +0 -0
  290. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/response_intent/__init__.py +0 -0
  291. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/response_intent/analysis_output.py +0 -0
  292. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/response_intent/contracts.py +0 -0
  293. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/response_intent/conversation_intent.py +0 -0
  294. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/response_intent/document_output.py +0 -0
  295. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/response_intent/patch_diff_intent.py +0 -0
  296. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/response_intent/resolution.py +0 -0
  297. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/retrieval/__init__.py +0 -0
  298. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/retrieval/aliases.py +0 -0
  299. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/retrieval/field_queries.py +0 -0
  300. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/retrieval/projection.py +0 -0
  301. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/retrieval/query_builder.py +0 -0
  302. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/retrieval/search.py +0 -0
  303. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/source_library.py +0 -0
  304. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/__init__.py +0 -0
  305. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/draft/__init__.py +0 -0
  306. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/draft/artifact_upkeep_completion.py +0 -0
  307. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/draft/completion.py +0 -0
  308. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/draft/context_patch_completion.py +0 -0
  309. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/draft/final_patch_projection.py +0 -0
  310. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/draft/finalize.py +0 -0
  311. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/draft/interrupt.py +0 -0
  312. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/draft/patch_fast_path_events.py +0 -0
  313. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/draft/patch_preview_events.py +0 -0
  314. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/draft/phase.py +0 -0
  315. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/draft/phase_timing.py +0 -0
  316. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/draft/post_completion.py +0 -0
  317. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/draft/post_completion_canvas_events.py +0 -0
  318. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/draft/post_completion_canvas_policy.py +0 -0
  319. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/draft/post_completion_event_sequence.py +0 -0
  320. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/draft/post_completion_persistence_payloads.py +0 -0
  321. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/draft/post_completion_summary_actions.py +0 -0
  322. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/draft/post_completion_visible_text.py +0 -0
  323. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/draft/post_generation_completion.py +0 -0
  324. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/draft/prologue.py +0 -0
  325. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/draft/reconciliation_completion.py +0 -0
  326. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/draft/session_exchange.py +0 -0
  327. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/draft/text_cadence.py +0 -0
  328. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/draft/turn_disposition_completion.py +0 -0
  329. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/event_emitter.py +0 -0
  330. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/intake/__init__.py +0 -0
  331. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/intake/phase.py +0 -0
  332. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/mode/__init__.py +0 -0
  333. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/mode/event_payload.py +0 -0
  334. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/mode/events.py +0 -0
  335. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/response/__init__.py +0 -0
  336. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/response/background_execution.py +0 -0
  337. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/response/bootstrap.py +0 -0
  338. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/response/builder.py +0 -0
  339. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/response/builder_transport.py +0 -0
  340. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/response/draft_phase.py +0 -0
  341. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/response/first_event_timing.py +0 -0
  342. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/response/patch_fast_path_phase.py +0 -0
  343. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/response/phase_groups.py +0 -0
  344. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/response/phases.py +0 -0
  345. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/response/runtime.py +0 -0
  346. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/response/structured_reasoning_admission.py +0 -0
  347. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/response/structured_reasoning_existing.py +0 -0
  348. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/response/structured_reasoning_phase.py +0 -0
  349. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/response/structured_reasoning_projection.py +0 -0
  350. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/response/structured_reasoning_refresh.py +0 -0
  351. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/response/turn_workplan_fast_path_phase.py +0 -0
  352. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/retrieval/__init__.py +0 -0
  353. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/retrieval/phase.py +0 -0
  354. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/runtime/__init__.py +0 -0
  355. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/runtime/sourcing_observations.py +0 -0
  356. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/streaming/runtime/steps.py +0 -0
  357. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/structured_reasoning_gate.py +0 -0
  358. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/text_safety.py +0 -0
  359. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/router/turn_act.py +0 -0
  360. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/run_store.py +0 -0
  361. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/run_store_events.py +0 -0
  362. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/run_store_expiration.py +0 -0
  363. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/run_store_replay.py +0 -0
  364. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/run_store_states.py +0 -0
  365. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/__init__.py +0 -0
  366. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/artifact_edit/__init__.py +0 -0
  367. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/artifact_edit/action_content.py +0 -0
  368. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/artifact_edit/context_patch.py +0 -0
  369. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/artifact_edit/contracts.py +0 -0
  370. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/artifact_edit/orchestrator.py +0 -0
  371. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/artifact_edit/preflight.py +0 -0
  372. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/artifact_edit/refresh_structure.py +0 -0
  373. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/artifact_edit/semantic_map_refresh.py +0 -0
  374. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/artifact_edit/view_capabilities.py +0 -0
  375. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/artifact_hud/__init__.py +0 -0
  376. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/artifact_hud/contracts.py +0 -0
  377. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/artifact_hud/orchestrator.py +0 -0
  378. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/artifact_quality/__init__.py +0 -0
  379. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/artifact_quality/body_admission.py +0 -0
  380. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/artifact_quality/requirement_markdown.py +0 -0
  381. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/artifact_registry/__init__.py +0 -0
  382. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/artifact_registry/contracts.py +0 -0
  383. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/artifact_registry/resolver.py +0 -0
  384. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/artifact_upkeep/__init__.py +0 -0
  385. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/artifact_upkeep/analysis_projector.py +0 -0
  386. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/artifact_upkeep/contracts.py +0 -0
  387. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/artifact_upkeep/generic_projector.py +0 -0
  388. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/artifact_upkeep/orchestrator.py +0 -0
  389. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/artifact_upkeep/planner.py +0 -0
  390. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/artifact_upkeep/policy.py +0 -0
  391. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/artifact_upkeep/projector.py +0 -0
  392. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/artifact_upkeep/requirement_package_updates.py +0 -0
  393. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/artifact_upkeep/requirement_projector.py +0 -0
  394. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/auth/__init__.py +0 -0
  395. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/auth/bearer.py +0 -0
  396. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/auth/exchange.py +0 -0
  397. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/auth/policy.py +0 -0
  398. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/auth/scope_guard.py +0 -0
  399. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/context/__init__.py +0 -0
  400. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/context/analysis_application.py +0 -0
  401. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/context/artifact_application.py +0 -0
  402. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/context/document_application.py +0 -0
  403. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/context/intake_application.py +0 -0
  404. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/context/reasoning_application.py +0 -0
  405. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/context/session_context.py +0 -0
  406. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/context/track_application.py +0 -0
  407. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/context/turn_delta_application.py +0 -0
  408. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/diagnostics/__init__.py +0 -0
  409. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/diagnostics/provider_audit.py +0 -0
  410. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/diagnostics/provider_audit_export.py +0 -0
  411. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/diagnostics/replay_snapshot.py +0 -0
  412. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/diagnostics/replay_snapshot_io.py +0 -0
  413. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/diagnostics/replay_snapshot_validation.py +0 -0
  414. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/domain/__init__.py +0 -0
  415. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/domain/domain_pack_loader.py +0 -0
  416. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/domain/domain_pack_paths.py +0 -0
  417. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/domain/domain_pack_reload.py +0 -0
  418. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/domain/domain_pack_root.py +0 -0
  419. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/domain/profile_resolution.py +0 -0
  420. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/execution/__init__.py +0 -0
  421. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/execution/agent_runtime.py +0 -0
  422. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/execution/skill_runtime.py +0 -0
  423. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/__init__.py +0 -0
  424. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/chat_memory.py +0 -0
  425. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/database.py +0 -0
  426. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/dependency_status.py +0 -0
  427. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/infrastructure.py +0 -0
  428. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/knowledge_ingest.py +0 -0
  429. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/knowledge_memory.py +0 -0
  430. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/knowledge_postgres_search.py +0 -0
  431. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/knowledge_qdrant_search.py +0 -0
  432. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/knowledge_search.py +0 -0
  433. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/knowledge_terms.py +0 -0
  434. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/logging.py +0 -0
  435. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/project_memory_codec.py +0 -0
  436. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/project_memory_review_sql.py +0 -0
  437. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/project_memory_review_store.py +0 -0
  438. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/project_memory_sql.py +0 -0
  439. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/project_memory_store.py +0 -0
  440. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/project_memory_version_sql.py +0 -0
  441. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/project_memory_version_store.py +0 -0
  442. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/redis_client.py +0 -0
  443. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/run/__init__.py +0 -0
  444. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/run/repository.py +0 -0
  445. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/run/repository_memory.py +0 -0
  446. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/run/repository_sql.py +0 -0
  447. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/session/__init__.py +0 -0
  448. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/session/columns.py +0 -0
  449. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/source/__init__.py +0 -0
  450. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/source/document_understanding_codec.py +0 -0
  451. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/source/image_understanding_config.py +0 -0
  452. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/source/image_understanding_dashscope.py +0 -0
  453. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/source/image_understanding_policy.py +0 -0
  454. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/source/image_understanding_prompt.py +0 -0
  455. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/source/image_understanding_provider.py +0 -0
  456. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/source/image_understanding_text.py +0 -0
  457. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/source/library_dedupe.py +0 -0
  458. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/source/library_persistence.py +0 -0
  459. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/source/library_records.py +0 -0
  460. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/source/ocr_provider.py +0 -0
  461. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/source/schema.py +0 -0
  462. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/source/text_extractor.py +0 -0
  463. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/source/upload_storage.py +0 -0
  464. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/sourcing/__init__.py +0 -0
  465. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/sourcing/instance_profile_adapter.py +0 -0
  466. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/sourcing/persistence.py +0 -0
  467. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/sourcing/provider.py +0 -0
  468. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/sourcing/provider_config.py +0 -0
  469. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/sourcing/provider_gateway.py +0 -0
  470. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/sourcing/provider_normalize.py +0 -0
  471. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/sourcing/provider_public.py +0 -0
  472. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/sourcing/provider_result.py +0 -0
  473. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/trace.py +0 -0
  474. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/infrastructure/vector_store.py +0 -0
  475. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/intent/__init__.py +0 -0
  476. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/intent/intent_and_escalation/__init__.py +0 -0
  477. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/intent/intent_and_escalation/decision.py +0 -0
  478. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/intent/intent_and_escalation/lexicon.py +0 -0
  479. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/intent/intent_and_escalation/preprocessing.py +0 -0
  480. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/intent/intent_and_escalation/signals.py +0 -0
  481. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/intent/intent_and_escalation_classifier.py +0 -0
  482. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/__init__.py +0 -0
  483. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/apipro_provider.py +0 -0
  484. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/apipro_streaming_provider.py +0 -0
  485. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/code_generation_provider_matrix.py +0 -0
  486. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/completion_capture.py +0 -0
  487. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/completion_plan.py +0 -0
  488. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/config.py +0 -0
  489. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/contracts.py +0 -0
  490. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/credential_adapter.py +0 -0
  491. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/credential_config.py +0 -0
  492. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/credential_pool.py +0 -0
  493. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/dashscope_provider.py +0 -0
  494. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/dashscope_streaming_provider.py +0 -0
  495. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/failover_policy.py +0 -0
  496. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/fallback_policy.py +0 -0
  497. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/intent_model_policy.py +0 -0
  498. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/langgraph_executor_adapter.py +0 -0
  499. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/llm_provider.py +0 -0
  500. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/model_limits.py +0 -0
  501. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/model_router.py +0 -0
  502. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/native_stream_result.py +0 -0
  503. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/native_stream_retry.py +0 -0
  504. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/native_streaming.py +0 -0
  505. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/ocr_provider_contract.py +0 -0
  506. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/ocr_structured_extraction_admission.py +0 -0
  507. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/ocr_structured_extraction_contract.py +0 -0
  508. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/ocr_structured_extraction_projection.py +0 -0
  509. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/provider_error.py +0 -0
  510. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/provider_failover.py +0 -0
  511. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/provider_health.py +0 -0
  512. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/provider_health_probe.py +0 -0
  513. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/provider_health_snapshot.py +0 -0
  514. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/provider_health_source.py +0 -0
  515. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/provider_quota.py +0 -0
  516. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/provider_retry.py +0 -0
  517. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/provider_trace.py +0 -0
  518. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/provider_usage.py +0 -0
  519. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/replay_provider.py +0 -0
  520. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/stream_dispatch.py +0 -0
  521. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/streaming_provider.py +0 -0
  522. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/llm/system_prompt.py +0 -0
  523. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/__init__.py +0 -0
  524. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/action_prompt_drafts.py +0 -0
  525. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/active_artifact_context_runtime.py +0 -0
  526. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/admission_node.py +0 -0
  527. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/analysis_route_policy.py +0 -0
  528. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/analysis_router_runtime.py +0 -0
  529. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/artifact_admission.py +0 -0
  530. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/artifact_template_runtime.py +0 -0
  531. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/artifact_template_selection.py +0 -0
  532. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/background_run_contracts.py +0 -0
  533. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/background_run_coordinator.py +0 -0
  534. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/boundary_artifact_context.py +0 -0
  535. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/boundary_context_evidence.py +0 -0
  536. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/boundary_intent_gate.py +0 -0
  537. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/boundary_intent_gate_application.py +0 -0
  538. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/boundary_intent_gate_context.py +0 -0
  539. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/boundary_intent_gate_response_deferral.py +0 -0
  540. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/boundary_intent_gate_rules.py +0 -0
  541. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/boundary_intent_gate_runtime.py +0 -0
  542. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/boundary_intent_gate_semantic.py +0 -0
  543. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/boundary_semantic_evidence.py +0 -0
  544. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/boundary_semantic_frame.py +0 -0
  545. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/boundary_turn_continuity_gate.py +0 -0
  546. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/canvas/__init__.py +0 -0
  547. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/canvas/toolbar_actions.py +0 -0
  548. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/canvas_output_admission.py +0 -0
  549. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/canvas_sourcing_contract.py +0 -0
  550. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/canvas_version_history_runtime.py +0 -0
  551. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/capability_completion_admission.py +0 -0
  552. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/capability_completion_events.py +0 -0
  553. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/capability_confirmation_contracts.py +0 -0
  554. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/capability_confirmation_resolution.py +0 -0
  555. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/capability_dispatch.py +0 -0
  556. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/capability_dispatch_contracts.py +0 -0
  557. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/capability_node_result.py +0 -0
  558. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/capability_result_normalization.py +0 -0
  559. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/category_resolution.py +0 -0
  560. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/context_operation_executor.py +0 -0
  561. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/context_write_admission.py +0 -0
  562. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/decision_engine.py +0 -0
  563. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/direct_turn_runtime.py +0 -0
  564. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/domain_trigger_signals.py +0 -0
  565. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/main_chain_sidecar_model_question.py +0 -0
  566. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/main_chain_sidecar_options.py +0 -0
  567. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/main_chain_sidecar_projection.py +0 -0
  568. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/main_chain_sidecar_question.py +0 -0
  569. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/__init__.py +0 -0
  570. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/canvas_state.py +0 -0
  571. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/fallback.py +0 -0
  572. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/field_definitions.py +0 -0
  573. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_action_resolution.py +0 -0
  574. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_actions.py +0 -0
  575. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_artifact_display_value.py +0 -0
  576. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_artifact_document.py +0 -0
  577. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_artifact_node_candidates.py +0 -0
  578. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_artifact_semantic_map.py +0 -0
  579. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_artifact_semantic_template.py +0 -0
  580. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_artifact_views.py +0 -0
  581. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_canvas.py +0 -0
  582. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_canvas_candidate_fields.py +0 -0
  583. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_canvas_content.py +0 -0
  584. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_canvas_events.py +0 -0
  585. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_canvas_presentation.py +0 -0
  586. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_composer_chooser_policy.py +0 -0
  587. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_context.py +0 -0
  588. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_context_evidence.py +0 -0
  589. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_coverage.py +0 -0
  590. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_current_question.py +0 -0
  591. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_document_seed.py +0 -0
  592. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_draft_payload.py +0 -0
  593. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_events.py +0 -0
  594. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_field_candidates.py +0 -0
  595. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_field_hydration.py +0 -0
  596. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_field_pack_suggestions.py +0 -0
  597. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_field_projection.py +0 -0
  598. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_field_state.py +0 -0
  599. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_interaction_policy.py +0 -0
  600. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_markdown_normalization.py +0 -0
  601. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_model_question_plan.py +0 -0
  602. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_model_question_policy.py +0 -0
  603. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_next_actions_payload.py +0 -0
  604. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_package_draft.py +0 -0
  605. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_package_events.py +0 -0
  606. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_package_projection_policy.py +0 -0
  607. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_package_schema.py +0 -0
  608. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_payloads.py +0 -0
  609. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_procurement_task_projection.py +0 -0
  610. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_progress_payload.py +0 -0
  611. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_question.py +0 -0
  612. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_question_interruption.py +0 -0
  613. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_question_interruption_policy.py +0 -0
  614. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_question_lifecycle.py +0 -0
  615. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_question_options.py +0 -0
  616. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_question_plan_carrier.py +0 -0
  617. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_question_policy.py +0 -0
  618. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_question_progress.py +0 -0
  619. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_question_queue.py +0 -0
  620. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_question_queue_canvas.py +0 -0
  621. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_structured_document.py +0 -0
  622. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_summary_artifact.py +0 -0
  623. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_summary_generation_projection.py +0 -0
  624. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_summary_merge.py +0 -0
  625. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_summary_source.py +0 -0
  626. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_summary_validation.py +0 -0
  627. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_template_canvas_content.py +0 -0
  628. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_template_document.py +0 -0
  629. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_template_placeholder_body.py +0 -0
  630. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/intake_template_table_values.py +0 -0
  631. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/orchestration.py +0 -0
  632. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/question_selection.py +0 -0
  633. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/reasoning.py +0 -0
  634. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/runtime.py +0 -0
  635. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/runtime_bookkeeping.py +0 -0
  636. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/shared.py +0 -0
  637. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/sourcing_actions.py +0 -0
  638. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/sourcing_events.py +0 -0
  639. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/sourcing_preview.py +0 -0
  640. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/sourcing_report.py +0 -0
  641. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/mode/state_transition.py +0 -0
  642. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/module_prompt_registry.py +0 -0
  643. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/node_result_normalization.py +0 -0
  644. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/normalized_policy_view.py +0 -0
  645. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/observation.py +0 -0
  646. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/operation_target_resolver.py +0 -0
  647. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/patch_fast_path_policy.py +0 -0
  648. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/patch_preview_context.py +0 -0
  649. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/patch_preview_operations.py +0 -0
  650. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/patch_preview_runtime.py +0 -0
  651. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/patch_preview_target.py +0 -0
  652. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/patch_question_node.py +0 -0
  653. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/pre_response_plan_runtime.py +0 -0
  654. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/projection_patches.py +0 -0
  655. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/prompt_context_copy_runtime.py +0 -0
  656. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/reasoning_loop.py +0 -0
  657. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/response_strategy_runtime.py +0 -0
  658. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/run_settlement.py +0 -0
  659. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/semantic_boundary_policy.py +0 -0
  660. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/semantic_intent_node.py +0 -0
  661. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/session_context_runtime.py +0 -0
  662. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/sidecar_option_generation.py +0 -0
  663. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/source_grounding_context.py +0 -0
  664. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/sourcing/__init__.py +0 -0
  665. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/sourcing/additive_search.py +0 -0
  666. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/sourcing/analysis_entry.py +0 -0
  667. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/sourcing/candidate_explainability.py +0 -0
  668. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/sourcing/canvas_state.py +0 -0
  669. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/sourcing/context_round.py +0 -0
  670. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/sourcing/event_payloads.py +0 -0
  671. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/sourcing/instance_db_runtime.py +0 -0
  672. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/sourcing/internal_runtime.py +0 -0
  673. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/sourcing/mcp_runtime.py +0 -0
  674. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/sourcing/observation_payloads.py +0 -0
  675. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/sourcing/observations.py +0 -0
  676. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/sourcing/parameter_draft.py +0 -0
  677. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/sourcing/provider_config_loader.py +0 -0
  678. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/sourcing/provider_health.py +0 -0
  679. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/sourcing/response_labels.py +0 -0
  680. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/sourcing/result_window.py +0 -0
  681. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/sourcing/search_runtime.py +0 -0
  682. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/sourcing/source_priority.py +0 -0
  683. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/sourcing/web_runtime.py +0 -0
  684. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/structured_prompt_context.py +0 -0
  685. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/structured_reasoning.py +0 -0
  686. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/structured_reasoning_normalization.py +0 -0
  687. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/structured_reasoning_projection.py +0 -0
  688. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/track_runtime.py +0 -0
  689. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/turn_act_classification.py +0 -0
  690. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/turn_admission.py +0 -0
  691. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/turn_admission_contracts.py +0 -0
  692. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/turn_admission_facts.py +0 -0
  693. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/turn_admission_policy.py +0 -0
  694. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/turn_admission_rules.py +0 -0
  695. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/turn_continuity.py +0 -0
  696. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/turn_continuity_contracts.py +0 -0
  697. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/turn_decision_contracts.py +0 -0
  698. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/turn_decision_projection.py +0 -0
  699. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/turn_disposition.py +0 -0
  700. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/turn_operation_planner.py +0 -0
  701. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/turn_operation_projection.py +0 -0
  702. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/turn_workplan_contracts.py +0 -0
  703. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/turn_workplan_gate_decision.py +0 -0
  704. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/workflow_artifact_events.py +0 -0
  705. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/workflow_guidance_runtime.py +0 -0
  706. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/workflow_run_lifecycle.py +0 -0
  707. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/workflow_run_terminal.py +0 -0
  708. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/workplan_contracts.py +0 -0
  709. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/orchestration/workplan_projection.py +0 -0
  710. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/post_generation/__init__.py +0 -0
  711. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/post_generation/contracts.py +0 -0
  712. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/post_generation/normalizer.py +0 -0
  713. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/post_generation/orchestrator.py +0 -0
  714. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/post_generation/output_target.py +0 -0
  715. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/post_generation/validator.py +0 -0
  716. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/project_memory/__init__.py +0 -0
  717. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/project_memory/decision.py +0 -0
  718. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/project_memory/extraction.py +0 -0
  719. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/project_memory/promotion.py +0 -0
  720. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/project_memory/recall.py +0 -0
  721. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/project_memory/runtime.py +0 -0
  722. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/project_memory/semantic_index.py +0 -0
  723. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reasoning/__init__.py +0 -0
  724. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reasoning/intake/__init__.py +0 -0
  725. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reasoning/intake/api.py +0 -0
  726. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reasoning/intake/branching/__init__.py +0 -0
  727. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reasoning/intake/branching/core.py +0 -0
  728. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reasoning/intake/branching/policy.py +0 -0
  729. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reasoning/intake/context.py +0 -0
  730. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reasoning/intake/field_selection.py +0 -0
  731. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reasoning/intake/gap_detection.py +0 -0
  732. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reasoning/intake/hypothesis.py +0 -0
  733. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reasoning/intake/planning.py +0 -0
  734. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reasoning/intake/priority.py +0 -0
  735. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reasoning/intake/question/__init__.py +0 -0
  736. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reasoning/intake/question/branch_plan.py +0 -0
  737. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reasoning/intake/question/builder.py +0 -0
  738. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reasoning/intake/question/decision.py +0 -0
  739. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reasoning/intake/question/extraction.py +0 -0
  740. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reasoning/intake/question/planner.py +0 -0
  741. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reasoning/intake/question/structured.py +0 -0
  742. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reasoning/intake/question/structured_candidate.py +0 -0
  743. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reasoning/intake/readiness/__init__.py +0 -0
  744. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reasoning/intake/readiness/core.py +0 -0
  745. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reasoning/intake/readiness/scoring.py +0 -0
  746. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reasoning/intake/shared.py +0 -0
  747. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reasoning/intake/understanding_state.py +0 -0
  748. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reasoning/intake/visible_response.py +0 -0
  749. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reasoning/intake/visible_summary.py +0 -0
  750. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reconciliation/__init__.py +0 -0
  751. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reconciliation/artifact_projection.py +0 -0
  752. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reconciliation/context_revision.py +0 -0
  753. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reconciliation/contracts.py +0 -0
  754. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reconciliation/events.py +0 -0
  755. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reconciliation/executor.py +0 -0
  756. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reconciliation/gates.py +0 -0
  757. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reconciliation/impact.py +0 -0
  758. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reconciliation/operation.py +0 -0
  759. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reconciliation/orchestrator.py +0 -0
  760. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/reconciliation/planner.py +0 -0
  761. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/session/__init__.py +0 -0
  762. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/session/checkpoint_manager.py +0 -0
  763. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/session/intake_session_codec.py +0 -0
  764. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/session/intake_session_postgres.py +0 -0
  765. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/session/intake_session_redis.py +0 -0
  766. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/session/intake_session_store.py +0 -0
  767. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/session/models.py +0 -0
  768. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/source_ingestion/__init__.py +0 -0
  769. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/source_ingestion/artifacts.py +0 -0
  770. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/source_ingestion/chunk_storage.py +0 -0
  771. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/source_ingestion/knowledge_storage.py +0 -0
  772. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/source_ingestion/profile.py +0 -0
  773. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/source_ingestion/runtime.py +0 -0
  774. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/source_ingestion/storage.py +0 -0
  775. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/turn_pipeline/__init__.py +0 -0
  776. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/turn_pipeline/contracts.py +0 -0
  777. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/runtime/turn_pipeline/delta_extraction.py +0 -0
  778. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/session_archive_context.py +0 -0
  779. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/session_archive_graph.py +0 -0
  780. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/session_archive_metrics.py +0 -0
  781. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/session_archive_summary.py +0 -0
  782. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/session_creation.py +0 -0
  783. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/session_exchange_persistence.py +0 -0
  784. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/session_lifecycle_policy.py +0 -0
  785. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/session_list_store.py +0 -0
  786. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/session_message_policy.py +0 -0
  787. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/session_message_records.py +0 -0
  788. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/session_record_assembly.py +0 -0
  789. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/session_record_policy.py +0 -0
  790. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/session_replay.py +0 -0
  791. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/update/__init__.py +0 -0
  792. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/update/compatibility.py +0 -0
  793. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/update/planner.py +0 -0
  794. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/update/registry.py +0 -0
  795. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/update/versioning.py +0 -0
  796. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel/user_store.py +0 -0
  797. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel.egg-info/dependency_links.txt +0 -0
  798. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel.egg-info/requires.txt +0 -0
  799. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/src/flare_kernel.egg-info/top_level.txt +0 -0
  800. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_action_payload.py +0 -0
  801. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_action_prompt_drafts.py +0 -0
  802. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_action_readiness.py +0 -0
  803. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_active_artifact_context_runtime.py +0 -0
  804. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_active_artifact_registry_resolver.py +0 -0
  805. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_active_artifact_workplan_acceptance_matrix.py +0 -0
  806. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_agent_runtime_slice_acceptance.py +0 -0
  807. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_agent_skill_runtime_trace_authority.py +0 -0
  808. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_ai_provider_governance_docs.py +0 -0
  809. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_analysis_artifact_context_projection.py +0 -0
  810. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_analysis_artifact_overwrite_guard.py +0 -0
  811. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_analysis_canvas_payload.py +0 -0
  812. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_analysis_canvas_slot_fallbacks.py +0 -0
  813. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_analysis_context_patch.py +0 -0
  814. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_analysis_e2e.py +0 -0
  815. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_analysis_entry_decision.py +0 -0
  816. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_analysis_prompt_artifact_context.py +0 -0
  817. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_analysis_route_projection.py +0 -0
  818. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_analysis_route_runtime.py +0 -0
  819. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_analysis_template_projection.py +0 -0
  820. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_arch01_admission_node.py +0 -0
  821. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_arch01_fake_domain_decision_matrix.py +0 -0
  822. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_arch01_fake_domain_node_output_matrix.py +0 -0
  823. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_arch01_normalized_policy_consumption.py +0 -0
  824. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_artifact_admission.py +0 -0
  825. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_artifact_cross_mode_regression_matrix.py +0 -0
  826. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_artifact_document_contract.py +0 -0
  827. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_artifact_edit_action_content.py +0 -0
  828. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_artifact_edit_context_patch.py +0 -0
  829. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_artifact_edit_preflight_runtime.py +0 -0
  830. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_artifact_edit_runtime.py +0 -0
  831. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_artifact_edit_view_capabilities.py +0 -0
  832. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_artifact_hud_runtime.py +0 -0
  833. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_artifact_regeneration_bridge.py +0 -0
  834. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_artifact_template_prompt.py +0 -0
  835. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_artifact_template_runtime.py +0 -0
  836. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_artifact_upkeep_orchestrator.py +0 -0
  837. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_artifact_upkeep_policy_planner.py +0 -0
  838. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_artifact_upkeep_projector.py +0 -0
  839. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_artifact_upkeep_projector_structure.py +0 -0
  840. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_artifact_upkeep_requirement_package_updates.py +0 -0
  841. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_auth_bearer_guard.py +0 -0
  842. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_auth_exchange.py +0 -0
  843. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_auth_scope_guard.py +0 -0
  844. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_background_run_coordinator.py +0 -0
  845. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_background_stream_execution.py +0 -0
  846. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_basics.py +0 -0
  847. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_boundary_intent_semantic_composer.py +0 -0
  848. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_budget_patch_real_phrasing.py +0 -0
  849. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_builder_split_modules.py +0 -0
  850. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_business_hardcode_guard.py +0 -0
  851. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_canonical_composer_chooser_authority.py +0 -0
  852. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_canonical_composer_ui_projection.py +0 -0
  853. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_canonical_mode_projection.py +0 -0
  854. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_canonical_state_context_analysis.py +0 -0
  855. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_canonical_state_context_inputs.py +0 -0
  856. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_canonical_state_context_session.py +0 -0
  857. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_canonical_state_flow.py +0 -0
  858. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_canonical_state_payload.py +0 -0
  859. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_canonical_state_projection.py +0 -0
  860. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_canvas_output_admission.py +0 -0
  861. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_canvas_sourcing_contract_meta.py +0 -0
  862. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_canvas_version_history_runtime.py +0 -0
  863. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_capability_active_work_item.py +0 -0
  864. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_capability_availability_projection.py +0 -0
  865. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_capability_boundary.py +0 -0
  866. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_capability_completion_admission.py +0 -0
  867. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_capability_confirmation_resolution.py +0 -0
  868. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_capability_dispatch_runtime.py +0 -0
  869. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_capability_result_normalization.py +0 -0
  870. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_chat_api_alias.py +0 -0
  871. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_chat_stream_attach.py +0 -0
  872. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_code_generation_provider_matrix.py +0 -0
  873. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_code_proposal_contract.py +0 -0
  874. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_command_resolution_analysis_mode.py +0 -0
  875. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_compat_aliases.py +0 -0
  876. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_completion_degraded_source_fallback.py +0 -0
  877. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_completion_output_quality_projection.py +0 -0
  878. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_completion_response_builder.py +0 -0
  879. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_completion_selection.py +0 -0
  880. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_completion_selection_clarification_domain_pack.py +0 -0
  881. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_completion_selection_intent_routing.py +0 -0
  882. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_context_activity_projection.py +0 -0
  883. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_context_authority_projection.py +0 -0
  884. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_context_delta_artifact_sync_acceptance.py +0 -0
  885. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_context_live_chain.py +0 -0
  886. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_context_operation_executor.py +0 -0
  887. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_context_usage_model_limit.py +0 -0
  888. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_context_write_contract.py +0 -0
  889. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_dashscope_streaming_provider.py +0 -0
  890. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_decision_engine.py +0 -0
  891. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_dependency_status.py +0 -0
  892. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_domain_pack_loader.py +0 -0
  893. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_domain_pack_structured_reasoning_guidance.py +0 -0
  894. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_domain_trigger_signals.py +0 -0
  895. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_endpoint_context.py +0 -0
  896. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_entry_recommendation_projection.py +0 -0
  897. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_execution_profile_contract.py +0 -0
  898. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_fast_gate.py +0 -0
  899. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_fast_gate_context_isolation.py +0 -0
  900. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_fast_gate_policy.py +0 -0
  901. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_flare_v1_patch_contract.py +0 -0
  902. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_generic_domain_pack_options.py +0 -0
  903. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_guided_completion.py +0 -0
  904. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_image_understanding_dashscope.py +0 -0
  905. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_infrastructure_helpers.py +0 -0
  906. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_infrastructure_knowledge.py +0 -0
  907. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_action_copy.py +0 -0
  908. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_amount_quantity.py +0 -0
  909. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_answer.py +0 -0
  910. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_artifact_candidate_display_values.py +0 -0
  911. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_artifact_semantic_map.py +0 -0
  912. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_artifact_semantic_map_candidate_values.py +0 -0
  913. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_authority.py +0 -0
  914. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_authority_checkpoint.py +0 -0
  915. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_authority_hydration.py +0 -0
  916. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_authority_session.py +0 -0
  917. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_canonicalization.py +0 -0
  918. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_chooser_reply_policy.py +0 -0
  919. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_clarification.py +0 -0
  920. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_commit_context_patch.py +0 -0
  921. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_composer_chooser_policy.py +0 -0
  922. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_decision_rules.py +0 -0
  923. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_delivery_time.py +0 -0
  924. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_document_seed.py +0 -0
  925. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_domain_context_options.py +0 -0
  926. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_entry_policy.py +0 -0
  927. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_extraction.py +0 -0
  928. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_extraction_control_messages.py +0 -0
  929. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_extraction_extractors.py +0 -0
  930. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_extraction_merge.py +0 -0
  931. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_extraction_quantity_prefixes.py +0 -0
  932. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_extraction_use_case_patterns.py +0 -0
  933. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_field_hydration_context.py +0 -0
  934. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_field_projection.py +0 -0
  935. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_field_projection_entity.py +0 -0
  936. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_field_projection_payload.py +0 -0
  937. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_field_projection_source.py +0 -0
  938. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_field_scope.py +0 -0
  939. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_field_state.py +0 -0
  940. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_field_state_gap_scoring.py +0 -0
  941. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_field_state_projection.py +0 -0
  942. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_guided_confirmed_updates.py +0 -0
  943. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_guided_flags.py +0 -0
  944. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_guided_followup.py +0 -0
  945. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_guided_followup_work_item.py +0 -0
  946. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_guided_open_fields.py +0 -0
  947. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_guided_status.py +0 -0
  948. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_guided_summary.py +0 -0
  949. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_inputs.py +0 -0
  950. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_markdown_normalization.py +0 -0
  951. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_model_question_policy.py +0 -0
  952. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_money_currency_policy.py +0 -0
  953. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_node_state.py +0 -0
  954. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_numeric.py +0 -0
  955. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_payload_updates.py +0 -0
  956. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_question_extraction.py +0 -0
  957. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_question_interruption_policy.py +0 -0
  958. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_question_projection.py +0 -0
  959. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_readiness.py +0 -0
  960. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_reasoning_priority.py +0 -0
  961. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_session_store.py +0 -0
  962. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_sourcing_handoff_gate.py +0 -0
  963. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_state_persistence.py +0 -0
  964. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_status.py +0 -0
  965. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_status_guided_session.py +0 -0
  966. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_status_projection.py +0 -0
  967. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_status_schema.py +0 -0
  968. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_status_stage.py +0 -0
  969. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_summary_artifact_framework.py +0 -0
  970. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_summary_next_actions_context.py +0 -0
  971. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_visible_response.py +0 -0
  972. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intake_workflow_checkpoint.py +0 -0
  973. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intent_classifier_utils.py +0 -0
  974. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intent_escalation_classifier.py +0 -0
  975. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intent_escalation_override.py +0 -0
  976. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intent_escalation_pipeline.py +0 -0
  977. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intent_escalation_signal.py +0 -0
  978. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intent_fast_general_qa.py +0 -0
  979. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intent_resolution.py +0 -0
  980. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intent_retrieval.py +0 -0
  981. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intent_routing.py +0 -0
  982. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_intent_type_compat_aliases.py +0 -0
  983. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_kernel_alias_delegation.py +0 -0
  984. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_kernel_endpoint_clarification_copy.py +0 -0
  985. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_kernel_endpoint_handlers.py +0 -0
  986. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_kernel_endpoint_handlers_sourcing.py +0 -0
  987. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_kernel_facade_context_io.py +0 -0
  988. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_kernel_facade_direct_admission_mode.py +0 -0
  989. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_kernel_facade_early_boundary.py +0 -0
  990. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_kernel_facade_fast_boundary_runtime.py +0 -0
  991. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_kernel_facade_flow_enrichment.py +0 -0
  992. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_kernel_facade_helpers.py +0 -0
  993. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_kernel_facade_sidecar_prompt_payload.py +0 -0
  994. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_kernel_facade_turn_context.py +0 -0
  995. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_kernel_intent_query_flow.py +0 -0
  996. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_kernel_mode_flow.py +0 -0
  997. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_kernel_route_execution_wrappers.py +0 -0
  998. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_kernel_route_normalized_result.py +0 -0
  999. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_kernel_session_intent_flow.py +0 -0
  1000. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_kernel_stream_timing.py +0 -0
  1001. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_langgraph_executor_adapter.py +0 -0
  1002. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_langgraph_executor_boundary_docs.py +0 -0
  1003. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_list_events.py +0 -0
  1004. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_llm_apipro_provider.py +0 -0
  1005. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_llm_credential_pool.py +0 -0
  1006. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_llm_credential_pool_runtime.py +0 -0
  1007. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_llm_node_result_coverage_matrix.py +0 -0
  1008. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_llm_node_taxonomy_contract.py +0 -0
  1009. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_llm_provider.py +0 -0
  1010. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_llm_provider_error_normalization.py +0 -0
  1011. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_llm_provider_failover.py +0 -0
  1012. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_llm_provider_fallback_policy.py +0 -0
  1013. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_llm_provider_health_file.py +0 -0
  1014. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_llm_provider_health_probe.py +0 -0
  1015. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_llm_provider_health_snapshot.py +0 -0
  1016. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_llm_provider_live.py +0 -0
  1017. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_llm_provider_native_streaming.py +0 -0
  1018. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_llm_provider_quota.py +0 -0
  1019. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_llm_provider_streaming.py +0 -0
  1020. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_llm_replay_provider.py +0 -0
  1021. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_llm_structured_reasoning_replay_fixtures.py +0 -0
  1022. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_main_chain_sidecar_options.py +0 -0
  1023. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_main_chain_sidecar_question_split.py +0 -0
  1024. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_main_chain_sidecar_queue.py +0 -0
  1025. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_mode_orchestration_state_bridge.py +0 -0
  1026. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_mode_reasoning.py +0 -0
  1027. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_mode_resolution.py +0 -0
  1028. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_mode_switch.py +0 -0
  1029. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_model_router.py +0 -0
  1030. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_module_prompt_registry.py +0 -0
  1031. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_new_flow_guard.py +0 -0
  1032. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_node_result_contract.py +0 -0
  1033. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_node_result_normalization.py +0 -0
  1034. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_ocr_provider_contract.py +0 -0
  1035. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_ocr_structured_extraction_contract.py +0 -0
  1036. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_operation_target_resolver.py +0 -0
  1037. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_orc15_guided_completion.py +0 -0
  1038. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_orc15_turn_act_classification.py +0 -0
  1039. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_orc16_main_chain_hardcode_boundary.py +0 -0
  1040. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_orchestration_checkpoint_state.py +0 -0
  1041. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_orchestration_followup_state.py +0 -0
  1042. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_orchestration_status_context.py +0 -0
  1043. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_orchestration_status_context_helpers.py +0 -0
  1044. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_orchestration_status_decision.py +0 -0
  1045. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_orchestration_status_projection.py +0 -0
  1046. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_orchestration_status_result.py +0 -0
  1047. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_orchestration_status_runtime_state.py +0 -0
  1048. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_orchestration_status_state_context.py +0 -0
  1049. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_orchestration_status_state_decision.py +0 -0
  1050. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_orchestration_status_state_entry.py +0 -0
  1051. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_orchestration_status_state_followup.py +0 -0
  1052. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_orchestration_status_state_intent.py +0 -0
  1053. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_orchestration_status_state_node.py +0 -0
  1054. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_orchestration_status_state_payload.py +0 -0
  1055. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_orchestration_status_state_unpack.py +0 -0
  1056. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_orchestration_trace.py +0 -0
  1057. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_orchestration_trace_projection.py +0 -0
  1058. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_orchestration_trace_steps.py +0 -0
  1059. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_patch_contract.py +0 -0
  1060. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_patch_fast_path_policy.py +0 -0
  1061. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_patch_preview_events.py +0 -0
  1062. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_patch_preview_runtime.py +0 -0
  1063. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_patch_question_node.py +0 -0
  1064. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_payload_enrichment.py +0 -0
  1065. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_pln03_question_chooser.py +0 -0
  1066. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_pln11_question_option_extraction.py +0 -0
  1067. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_post_completion_persistence_payloads.py +0 -0
  1068. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_post_completion_visible_text.py +0 -0
  1069. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_post_generation_canvas_admission.py +0 -0
  1070. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_post_generation_completion.py +0 -0
  1071. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_post_generation_runtime.py +0 -0
  1072. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_pre_response_plan_runtime.py +0 -0
  1073. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_project_api.py +0 -0
  1074. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_project_memory_promotion.py +0 -0
  1075. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_project_memory_promotion_decision.py +0 -0
  1076. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_project_memory_runtime.py +0 -0
  1077. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_project_memory_semantic_index.py +0 -0
  1078. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_project_memory_store.py +0 -0
  1079. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_project_memory_versions.py +0 -0
  1080. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_projection_patches.py +0 -0
  1081. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_prompt_template_main_chain_flow.py +0 -0
  1082. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_prompting_analysis_instruction.py +0 -0
  1083. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_prompting_requirement_intake.py +0 -0
  1084. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_prompting_sidecar_question.py +0 -0
  1085. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_prompting_user_template_instruction.py +0 -0
  1086. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_provider_audit.py +0 -0
  1087. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_provider_audit_export.py +0 -0
  1088. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_reasoning_context_patch.py +0 -0
  1089. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_reasoning_loop.py +0 -0
  1090. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_reconciliation_analysis_patch_projection.py +0 -0
  1091. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_reconciliation_artifact_structure_projection.py +0 -0
  1092. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_reconciliation_context_revision.py +0 -0
  1093. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_reconciliation_orchestrator.py +0 -0
  1094. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_reconciliation_requirement_canvas_projection.py +0 -0
  1095. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_release_isolation_gate.py +0 -0
  1096. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_replay_snapshot.py +0 -0
  1097. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_replay_snapshot_validation.py +0 -0
  1098. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_request_identity.py +0 -0
  1099. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_request_intent_resolution.py +0 -0
  1100. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_requirement_intake_branch_chooser.py +0 -0
  1101. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_requirement_intake_canvas_progress.py +0 -0
  1102. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_requirement_intake_canvas_state.py +0 -0
  1103. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_requirement_intake_canvas_visibility.py +0 -0
  1104. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_requirement_intake_continuation.py +0 -0
  1105. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_requirement_intake_flow.py +0 -0
  1106. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_requirement_intake_model_question_plan.py +0 -0
  1107. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_requirement_intake_node_result_question_plan.py +0 -0
  1108. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_requirement_intake_question_queue.py +0 -0
  1109. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_requirement_intake_structured_package.py +0 -0
  1110. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_requirement_intake_summary_route.py +0 -0
  1111. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_requirement_refresh_prompting.py +0 -0
  1112. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_response_intent_full_output_regression.py +0 -0
  1113. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_response_intent_resolution.py +0 -0
  1114. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_response_strategy_prompting_compact.py +0 -0
  1115. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_response_strategy_runtime.py +0 -0
  1116. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_retrieval_aliases.py +0 -0
  1117. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_retrieval_field_queries.py +0 -0
  1118. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_retrieval_projection.py +0 -0
  1119. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_retrieval_query_builder.py +0 -0
  1120. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_retrieval_search.py +0 -0
  1121. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_run_api.py +0 -0
  1122. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_run_contract_metadata.py +0 -0
  1123. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_run_replay_api_contract.py +0 -0
  1124. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_run_settlement.py +0 -0
  1125. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_run_sql_repository.py +0 -0
  1126. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_run_store.py +0 -0
  1127. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_run_store_event_conflict.py +0 -0
  1128. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_runtime_decision_llm_response_regression.py +0 -0
  1129. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_runtime_prompt_projection.py +0 -0
  1130. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_session_archive_summary.py +0 -0
  1131. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_session_context_persistence.py +0 -0
  1132. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_session_domain_binding.py +0 -0
  1133. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_session_intent.py +0 -0
  1134. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_session_intent_fields.py +0 -0
  1135. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_session_intent_small_talk.py +0 -0
  1136. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_session_lifecycle_api.py +0 -0
  1137. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_session_replay_api.py +0 -0
  1138. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_session_run_projection.py +0 -0
  1139. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_session_sql_columns.py +0 -0
  1140. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_session_sql_migration.py +0 -0
  1141. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_session_workflow_projection_persistence.py +0 -0
  1142. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_sidecar_option_generation.py +0 -0
  1143. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_sidecar_reply_policy.py +0 -0
  1144. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_source_ingestion_profile.py +0 -0
  1145. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_source_ingestion_runtime.py +0 -0
  1146. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_source_ingestion_ssot_acceptance.py +0 -0
  1147. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_source_library.py +0 -0
  1148. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_source_library_dedupe.py +0 -0
  1149. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_source_library_persistence_scope.py +0 -0
  1150. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_source_text_extractor.py +0 -0
  1151. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_source_xlsx_contract_fixture.py +0 -0
  1152. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_sourcing_action_copy.py +0 -0
  1153. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_sourcing_additive_search.py +0 -0
  1154. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_sourcing_candidate_explainability.py +0 -0
  1155. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_sourcing_context_reuse.py +0 -0
  1156. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_sourcing_e2e.py +0 -0
  1157. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_sourcing_instance_profile_adapter.py +0 -0
  1158. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_sourcing_parameter_draft.py +0 -0
  1159. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_sourcing_preview_context.py +0 -0
  1160. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_sourcing_preview_copy.py +0 -0
  1161. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_sourcing_provider.py +0 -0
  1162. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_sourcing_provider_adapters.py +0 -0
  1163. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_sourcing_provider_config_loader.py +0 -0
  1164. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_sourcing_provider_health.py +0 -0
  1165. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_sourcing_runtime_additive_search.py +0 -0
  1166. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_sourcing_search_response_labels.py +0 -0
  1167. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_sourcing_search_runtime.py +0 -0
  1168. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_sourcing_source_priority.py +0 -0
  1169. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_stream_collect_completion.py +0 -0
  1170. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_streaming_artifact_upkeep_completion.py +0 -0
  1171. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_streaming_draft_artifact_start.py +0 -0
  1172. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_streaming_draft_budget_reconciliation_completion.py +0 -0
  1173. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_streaming_draft_completion.py +0 -0
  1174. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_streaming_draft_finalize.py +0 -0
  1175. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_streaming_draft_intake_canvas_sync.py +0 -0
  1176. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_streaming_draft_phase.py +0 -0
  1177. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_streaming_draft_post_completion.py +0 -0
  1178. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_streaming_draft_prologue.py +0 -0
  1179. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_streaming_draft_reconciliation_completion.py +0 -0
  1180. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_streaming_draft_session_exchange.py +0 -0
  1181. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_streaming_draft_visible_text_boundaries.py +0 -0
  1182. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_streaming_event_emitter.py +0 -0
  1183. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_streaming_intake_phase.py +0 -0
  1184. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_streaming_mode_event_payload.py +0 -0
  1185. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_streaming_mode_events.py +0 -0
  1186. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_streaming_patch_fast_path_phase.py +0 -0
  1187. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_streaming_reasoning_context_patch.py +0 -0
  1188. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_streaming_response_bootstrap.py +0 -0
  1189. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_streaming_response_phases.py +0 -0
  1190. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_streaming_response_runtime.py +0 -0
  1191. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_streaming_response_transport.py +0 -0
  1192. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_streaming_retrieval_phase.py +0 -0
  1193. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_streaming_runtime_steps.py +0 -0
  1194. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_streaming_sidecar_reply_policy.py +0 -0
  1195. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_streaming_structured_reasoning_gate.py +0 -0
  1196. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_streaming_structured_reasoning_projection.py +0 -0
  1197. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_streaming_text_cadence.py +0 -0
  1198. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_streaming_turn_workplan_fast_path_phase.py +0 -0
  1199. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_structured_prompt_context.py +0 -0
  1200. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_structured_reasoning.py +0 -0
  1201. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_structured_reasoning_gate.py +0 -0
  1202. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_text_safety.py +0 -0
  1203. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_track_prompt_context.py +0 -0
  1204. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_track_runtime.py +0 -0
  1205. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_turn_admission.py +0 -0
  1206. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_turn_admission_stale_workflow.py +0 -0
  1207. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_turn_continuity_admission.py +0 -0
  1208. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_turn_decision_completion_policy.py +0 -0
  1209. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_turn_delta_extraction.py +0 -0
  1210. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_turn_disposition_admission.py +0 -0
  1211. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_turn_disposition_chooser_ready.py +0 -0
  1212. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_turn_mode_preference.py +0 -0
  1213. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_turn_operation_planner.py +0 -0
  1214. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_turn_operation_projection.py +0 -0
  1215. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_turn_pipeline_artifact_upkeep_contracts.py +0 -0
  1216. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_turn_workplan_contracts.py +0 -0
  1217. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_turn_workplan_gate_decision.py +0 -0
  1218. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_update_plane.py +0 -0
  1219. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_v1_mainline_regressions.py +0 -0
  1220. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_workflow_guidance_runtime.py +0 -0
  1221. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_workflow_run_events.py +0 -0
  1222. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_workflow_tracker_projection.py +0 -0
  1223. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_workplan_runtime.py +0 -0
  1224. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_xiaocai_active_artifact_contextual_gate.py +0 -0
  1225. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_xiaocai_active_artifact_sync_gate.py +0 -0
  1226. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_xiaocai_analysis_report_intent_first.py +0 -0
  1227. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_xiaocai_analysis_template_detail_projection.py +0 -0
  1228. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_xiaocai_artifact_followup_gate.py +0 -0
  1229. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_xiaocai_attachment_context_gate.py +0 -0
  1230. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_xiaocai_boundary_guidance.py +0 -0
  1231. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_xiaocai_boundary_intent_gate.py +0 -0
  1232. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_xiaocai_boundary_intent_gate_semantic.py +0 -0
  1233. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_xiaocai_boundary_score_gate.py +0 -0
  1234. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_xiaocai_capability_admission.py +0 -0
  1235. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_xiaocai_category_resolution.py +0 -0
  1236. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_xiaocai_domain_pack.py +0 -0
  1237. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_xiaocai_intake_normalization_admission.py +0 -0
  1238. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_xiaocai_negative_boundary_gate.py +0 -0
  1239. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_xiaocai_output_template_quality.py +0 -0
  1240. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_xiaocai_post_generation_requirement_summary.py +0 -0
  1241. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_xiaocai_pre_workspace_required_gate.py +0 -0
  1242. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_xiaocai_reconciliation_confirmation_policy.py +0 -0
  1243. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_xiaocai_requirement_analysis.py +0 -0
  1244. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_xiaocai_requirement_artifact_template_projection.py +0 -0
  1245. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_xiaocai_requirement_markdown_recovery.py +0 -0
  1246. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_xiaocai_requirement_mode_canvas.py +0 -0
  1247. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_xiaocai_semantic_admission_gate.py +0 -0
  1248. {flare_kernel-1.0.7 → flare_kernel-1.0.8}/tests/test_xiaocai_sidecar_dynamic_options.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: flare-kernel
3
- Version: 1.0.7
3
+ Version: 1.0.8
4
4
  Summary: FLARE kernel runtime package
5
5
  License: Proprietary
6
6
  Classifier: Development Status :: 3 - Alpha
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "flare-kernel"
7
- version = "1.0.7"
7
+ version = "1.0.8"
8
8
  description = "FLARE kernel runtime package"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.11"
@@ -96,8 +96,18 @@ class SessionMessageRecord(BaseModel):
96
96
  created_at: str
97
97
 
98
98
 
99
+ class SessionMessageWindow(BaseModel):
100
+ """Pagination metadata for a loaded message window."""
101
+
102
+ mode: Literal["full", "latest", "before"] = "full"
103
+ limit: int | None = None
104
+ has_older: bool = False
105
+ next_before: str = ""
106
+
107
+
99
108
  class SessionMessageListResponse(BaseModel):
100
109
  messages: list[SessionMessageRecord] = Field(default_factory=list)
110
+ window: SessionMessageWindow = Field(default_factory=SessionMessageWindow)
101
111
 
102
112
 
103
113
  class SessionReplayTurn(BaseModel):
@@ -11,11 +11,9 @@ from fastapi import APIRouter, Depends, Query
11
11
 
12
12
  from flare_kernel.contracts import (
13
13
  AuthContext,
14
- SessionAppendExchangeRequest,
15
14
  SessionCreateRequest,
16
15
  SessionLifecycleRequest,
17
16
  SessionListResponse,
18
- SessionMessageListResponse,
19
17
  SessionRecord,
20
18
  SessionReplayResponse,
21
19
  SessionUpdateRequest,
@@ -27,18 +25,19 @@ from flare_kernel.router.api.auth_guard import (
27
25
  require_route_scope,
28
26
  resolve_route_auth_context,
29
27
  )
30
- from flare_kernel.router.api.errors import ApiError
31
- from flare_kernel.router.api.session_artifact_edit import resolve_artifact_edit_append_fields
28
+ from flare_kernel.router.api.session_access import (
29
+ invalid_lifecycle_error,
30
+ require_session_or_404,
31
+ require_session_scope,
32
+ )
32
33
  from flare_kernel.router.api.session_list_events import publish_session_list_invalidation
34
+ from flare_kernel.router.api.session_messages import router as session_messages_router
33
35
  from flare_kernel.router.api.session_run_projection import project_session_run_metadata
34
36
  from flare_kernel.session_replay import build_session_replay
35
37
  from flare_kernel.session_store import (
36
38
  apply_lifecycle_action,
37
- append_exchange,
38
39
  create_session,
39
40
  ensure_session,
40
- get_session,
41
- list_messages,
42
41
  update_session,
43
42
  )
44
43
  from flare_kernel.session_list_store import list_session_list_items
@@ -46,56 +45,6 @@ from flare_kernel.session_list_store import list_session_list_items
46
45
  router = APIRouter(tags=["sessions"])
47
46
 
48
47
 
49
- def _require_session_or_404(session_id: str) -> dict:
50
- record = get_session(session_id=session_id)
51
- if record is not None:
52
- return record
53
- raise ApiError(
54
- code="RESOURCE_NOT_FOUND",
55
- http_status=404,
56
- message="session not found",
57
- description="target session_id does not exist",
58
- context_fields=["session_id"],
59
- retryable=False,
60
- details={"session_id": session_id},
61
- )
62
-
63
-
64
- def _require_session_scope(
65
- auth_context: AuthContext | None,
66
- record: dict,
67
- required_scopes: list[str],
68
- ) -> None:
69
- require_route_scope(
70
- auth_context,
71
- required_scopes=required_scopes,
72
- project_id=str(record.get("project_id") or ""),
73
- session_id=str(record.get("session_id") or ""),
74
- user_id=str(record.get("user_id") or ""),
75
- )
76
-
77
-
78
- def _invalid_lifecycle_error(exc: ValueError, fields: list[str]) -> ApiError:
79
- """Map lifecycle policy validation failures to the API error contract.
80
-
81
- Args:
82
- exc: Policy validation exception raised by session lifecycle helpers.
83
- fields: Request fields responsible for the validation failure.
84
-
85
- Returns:
86
- ApiError with the shared structured error payload fields.
87
- """
88
-
89
- return ApiError(
90
- code="INVALID_SESSION_LIFECYCLE",
91
- http_status=422,
92
- message="invalid session lifecycle",
93
- description=str(exc),
94
- context_fields=fields,
95
- retryable=False,
96
- )
97
-
98
-
99
48
  @router.get("/sessions", response_model=SessionListResponse)
100
49
  @router.get("/chat/sessions", response_model=SessionListResponse)
101
50
  async def list_chat_sessions(
@@ -140,7 +89,7 @@ async def list_chat_sessions(
140
89
  include_context=include_context,
141
90
  )
142
91
  except ValueError as exc:
143
- raise _invalid_lifecycle_error(exc, ["status"]) from exc
92
+ raise invalid_lifecycle_error(exc, ["status"]) from exc
144
93
  return SessionListResponse(sessions=[SessionRecord.model_validate(project_session_run_metadata(row)) for row in rows])
145
94
 
146
95
 
@@ -175,8 +124,8 @@ async def get_chat_session(
175
124
  session_id: str,
176
125
  auth_context: AuthContext | None = Depends(resolve_route_auth_context),
177
126
  ) -> SessionRecord:
178
- record = _require_session_or_404(session_id)
179
- _require_session_scope(auth_context, record, ["sessions:read"])
127
+ record = require_session_or_404(session_id)
128
+ require_session_scope(auth_context, record, ["sessions:read"])
180
129
  return SessionRecord.model_validate(project_session_run_metadata(record))
181
130
 
182
131
 
@@ -197,8 +146,8 @@ async def patch_chat_session(
197
146
  Updated session record.
198
147
  """
199
148
 
200
- record = _require_session_or_404(session_id)
201
- _require_session_scope(auth_context, record, ["sessions:write"])
149
+ record = require_session_or_404(session_id)
150
+ require_session_scope(auth_context, record, ["sessions:write"])
202
151
  try:
203
152
  row = update_session(
204
153
  session_id=session_id,
@@ -209,23 +158,12 @@ async def patch_chat_session(
209
158
  title_source=req.title_source,
210
159
  )
211
160
  except ValueError as exc:
212
- raise _invalid_lifecycle_error(exc, ["status"]) from exc
213
- next_row = row or _require_session_or_404(session_id)
161
+ raise invalid_lifecycle_error(exc, ["status"]) from exc
162
+ next_row = row or require_session_or_404(session_id)
214
163
  publish_session_list_invalidation("updated")
215
164
  return SessionRecord.model_validate(next_row)
216
165
 
217
166
 
218
- @router.get("/sessions/{session_id}/messages", response_model=SessionMessageListResponse)
219
- @router.get("/chat/sessions/{session_id}/messages", response_model=SessionMessageListResponse)
220
- async def list_chat_session_messages(
221
- session_id: str,
222
- auth_context: AuthContext | None = Depends(resolve_route_auth_context),
223
- ) -> SessionMessageListResponse:
224
- record = _require_session_or_404(session_id)
225
- _require_session_scope(auth_context, record, ["sessions:read"])
226
- return SessionMessageListResponse(messages=list_messages(session_id=session_id))
227
-
228
-
229
167
  @router.get("/sessions/{session_id}/replay", response_model=SessionReplayResponse)
230
168
  @router.get("/chat/sessions/{session_id}/replay", response_model=SessionReplayResponse)
231
169
  async def get_chat_session_replay(
@@ -243,10 +181,10 @@ async def get_chat_session_replay(
243
181
 
244
182
  replay = build_session_replay(session_id=session_id)
245
183
  if replay is None:
246
- record = _require_session_or_404(session_id)
184
+ record = require_session_or_404(session_id)
247
185
  else:
248
186
  record = dict(replay.get("session") or {})
249
- _require_session_scope(auth_context, record, ["sessions:read"])
187
+ require_session_scope(auth_context, record, ["sessions:read"])
250
188
  return SessionReplayResponse.model_validate(replay)
251
189
 
252
190
 
@@ -267,69 +205,17 @@ async def apply_chat_session_lifecycle(
267
205
  Updated session record after the lifecycle transition.
268
206
  """
269
207
 
270
- record = _require_session_or_404(session_id)
271
- _require_session_scope(auth_context, record, ["sessions:write"])
208
+ record = require_session_or_404(session_id)
209
+ require_session_scope(auth_context, record, ["sessions:write"])
272
210
  try:
273
211
  row = apply_lifecycle_action(session_id=session_id, action=req.action)
274
212
  except ValueError as exc:
275
- raise _invalid_lifecycle_error(exc, ["action"]) from exc
276
- next_row = row or _require_session_or_404(session_id)
213
+ raise invalid_lifecycle_error(exc, ["action"]) from exc
214
+ next_row = row or require_session_or_404(session_id)
277
215
  publish_session_list_invalidation(str(req.action or "").strip() or "lifecycle")
278
216
  return SessionRecord.model_validate(next_row)
279
217
 
280
218
 
281
- @router.post("/sessions/{session_id}/messages", response_model=SessionRecord)
282
- @router.post("/chat/sessions/{session_id}/messages", response_model=SessionRecord)
283
- async def append_chat_session_exchange(
284
- session_id: str,
285
- req: SessionAppendExchangeRequest,
286
- auth_context: AuthContext | None = Depends(resolve_route_auth_context),
287
- ) -> SessionRecord:
288
- record = _require_session_or_404(session_id)
289
- _require_session_scope(auth_context, record, ["sessions:write"])
290
- append_fields = resolve_artifact_edit_append_fields(
291
- artifact_edit_request=req.artifact_edit_request,
292
- default_mode_key=str(record.get("function_type") or ""),
293
- canvas_state=req.canvas_state,
294
- analysis_payload=req.analysis_payload,
295
- context_patch=req.context_patch,
296
- execution_trace=req.execution_trace,
297
- plan_payload=req.plan_payload,
298
- )
299
- row = append_exchange(
300
- session_id=session_id,
301
- run_id=req.run_id,
302
- user_message=req.user_message,
303
- assistant_message=req.assistant_message,
304
- replace_assistant_message_id=req.replace_assistant_message_id,
305
- attachments=req.attachments,
306
- context_refs=req.context_refs,
307
- knowledge_refs=req.knowledge_refs,
308
- agent_status=req.agent_status,
309
- thinking_trace=req.thinking_trace,
310
- execution_trace=append_fields["execution_trace"],
311
- knowledge_search=req.knowledge_search,
312
- sourcing_candidates=req.sourcing_candidates,
313
- knowledge_citation=req.knowledge_citation,
314
- canvas_state=append_fields["canvas_state"],
315
- analysis_payload=append_fields["analysis_payload"],
316
- context_usage=req.context_usage,
317
- provider_trace=req.provider_trace,
318
- context_activity=req.context_activity,
319
- context_authority=req.context_authority,
320
- workflow_projection=req.workflow_projection,
321
- plan_payload=append_fields["plan_payload"],
322
- reasoning_result=req.reasoning_result,
323
- document_result=req.document_result,
324
- track_result=req.track_result,
325
- context_patch=append_fields["context_patch"],
326
- context_snapshot=req.context_snapshot,
327
- )
328
- next_row = row or _require_session_or_404(session_id)
329
- publish_session_list_invalidation("message_appended")
330
- return SessionRecord.model_validate(next_row)
331
-
332
-
333
219
  @router.post("/sessions/ensure", response_model=SessionRecord)
334
220
  @router.post("/chat/sessions/ensure", response_model=SessionRecord)
335
221
  async def ensure_chat_session(
@@ -356,3 +242,6 @@ async def ensure_chat_session(
356
242
  )
357
243
  publish_session_list_invalidation("ensured")
358
244
  return SessionRecord.model_validate(row)
245
+
246
+
247
+ router.include_router(session_messages_router)
@@ -0,0 +1,48 @@
1
+ """Session route access helpers."""
2
+
3
+ from __future__ import annotations
4
+
5
+ from flare_kernel.contracts import AuthContext
6
+ from flare_kernel.router.api.auth_guard import require_route_scope
7
+ from flare_kernel.router.api.errors import ApiError
8
+ from flare_kernel.session_store import get_session
9
+
10
+
11
+ def require_session_or_404(session_id: str) -> dict:
12
+ record = get_session(session_id=session_id)
13
+ if record is not None:
14
+ return record
15
+ raise ApiError(
16
+ code="RESOURCE_NOT_FOUND",
17
+ http_status=404,
18
+ message="session not found",
19
+ description="target session_id does not exist",
20
+ context_fields=["session_id"],
21
+ retryable=False,
22
+ details={"session_id": session_id},
23
+ )
24
+
25
+
26
+ def require_session_scope(
27
+ auth_context: AuthContext | None,
28
+ record: dict,
29
+ required_scopes: list[str],
30
+ ) -> None:
31
+ require_route_scope(
32
+ auth_context,
33
+ required_scopes=required_scopes,
34
+ project_id=str(record.get("project_id") or ""),
35
+ session_id=str(record.get("session_id") or ""),
36
+ user_id=str(record.get("user_id") or ""),
37
+ )
38
+
39
+
40
+ def invalid_lifecycle_error(exc: ValueError, fields: list[str]) -> ApiError:
41
+ return ApiError(
42
+ code="INVALID_SESSION_LIFECYCLE",
43
+ http_status=422,
44
+ message="invalid session lifecycle",
45
+ description=str(exc),
46
+ context_fields=fields,
47
+ retryable=False,
48
+ )
@@ -0,0 +1,101 @@
1
+ """Session message API routes."""
2
+
3
+ from __future__ import annotations
4
+
5
+ from fastapi import APIRouter, Depends, Query
6
+
7
+ from flare_kernel.contracts import AuthContext, SessionAppendExchangeRequest, SessionMessageListResponse, SessionRecord
8
+ from flare_kernel.router.api.auth_guard import resolve_route_auth_context
9
+ from flare_kernel.router.api.errors import ApiError
10
+ from flare_kernel.router.api.session_access import require_session_or_404, require_session_scope
11
+ from flare_kernel.router.api.session_artifact_edit import resolve_artifact_edit_append_fields
12
+ from flare_kernel.router.api.session_list_events import publish_session_list_invalidation
13
+ from flare_kernel.session_message_window_store import list_message_window
14
+ from flare_kernel.session_store import append_exchange
15
+
16
+ router = APIRouter(tags=["sessions"])
17
+
18
+
19
+ def _invalid_message_cursor_error(exc: ValueError) -> ApiError:
20
+ return ApiError(
21
+ code="INVALID_MESSAGE_CURSOR",
22
+ http_status=422,
23
+ message="invalid message cursor",
24
+ description=str(exc),
25
+ context_fields=["before", "cursor"],
26
+ retryable=False,
27
+ )
28
+
29
+
30
+ @router.get("/sessions/{session_id}/messages", response_model=SessionMessageListResponse)
31
+ @router.get("/chat/sessions/{session_id}/messages", response_model=SessionMessageListResponse)
32
+ async def list_chat_session_messages(
33
+ session_id: str,
34
+ limit: int = Query(default=0, ge=0, le=200),
35
+ before: str = Query(default=""),
36
+ cursor: str = Query(default=""),
37
+ auth_context: AuthContext | None = Depends(resolve_route_auth_context),
38
+ ) -> SessionMessageListResponse:
39
+ record = require_session_or_404(session_id)
40
+ require_session_scope(auth_context, record, ["sessions:read"])
41
+ try:
42
+ payload = list_message_window(
43
+ session_id=session_id,
44
+ limit=limit,
45
+ before=str(before or cursor or ""),
46
+ )
47
+ except ValueError as exc:
48
+ raise _invalid_message_cursor_error(exc) from exc
49
+ return SessionMessageListResponse.model_validate(payload)
50
+
51
+
52
+ @router.post("/sessions/{session_id}/messages", response_model=SessionRecord)
53
+ @router.post("/chat/sessions/{session_id}/messages", response_model=SessionRecord)
54
+ async def append_chat_session_exchange(
55
+ session_id: str,
56
+ req: SessionAppendExchangeRequest,
57
+ auth_context: AuthContext | None = Depends(resolve_route_auth_context),
58
+ ) -> SessionRecord:
59
+ record = require_session_or_404(session_id)
60
+ require_session_scope(auth_context, record, ["sessions:write"])
61
+ append_fields = resolve_artifact_edit_append_fields(
62
+ artifact_edit_request=req.artifact_edit_request,
63
+ default_mode_key=str(record.get("function_type") or ""),
64
+ canvas_state=req.canvas_state,
65
+ analysis_payload=req.analysis_payload,
66
+ context_patch=req.context_patch,
67
+ execution_trace=req.execution_trace,
68
+ plan_payload=req.plan_payload,
69
+ )
70
+ row = append_exchange(
71
+ session_id=session_id,
72
+ run_id=req.run_id,
73
+ user_message=req.user_message,
74
+ assistant_message=req.assistant_message,
75
+ replace_assistant_message_id=req.replace_assistant_message_id,
76
+ attachments=req.attachments,
77
+ context_refs=req.context_refs,
78
+ knowledge_refs=req.knowledge_refs,
79
+ agent_status=req.agent_status,
80
+ thinking_trace=req.thinking_trace,
81
+ execution_trace=append_fields["execution_trace"],
82
+ knowledge_search=req.knowledge_search,
83
+ sourcing_candidates=req.sourcing_candidates,
84
+ knowledge_citation=req.knowledge_citation,
85
+ canvas_state=append_fields["canvas_state"],
86
+ analysis_payload=append_fields["analysis_payload"],
87
+ context_usage=req.context_usage,
88
+ provider_trace=req.provider_trace,
89
+ context_activity=req.context_activity,
90
+ context_authority=req.context_authority,
91
+ workflow_projection=req.workflow_projection,
92
+ plan_payload=append_fields["plan_payload"],
93
+ reasoning_result=req.reasoning_result,
94
+ document_result=req.document_result,
95
+ track_result=req.track_result,
96
+ context_patch=append_fields["context_patch"],
97
+ context_snapshot=req.context_snapshot,
98
+ )
99
+ next_row = row or require_session_or_404(session_id)
100
+ publish_session_list_invalidation("message_appended")
101
+ return SessionRecord.model_validate(next_row)
@@ -5,6 +5,7 @@ from __future__ import annotations
5
5
  from typing import Any
6
6
 
7
7
  from flare_kernel.router.canonical.workflow_projection_policy import build_workflow_projection_policy
8
+ from flare_kernel.router.canonical.workflow_run_projection import build_workflow_run_projection
8
9
 
9
10
 
10
11
  def _mapping(value: Any) -> dict[str, Any]:
@@ -249,11 +250,15 @@ def build_workflow_projection(
249
250
  patch_status=status,
250
251
  )
251
252
  turn_disposition = _turn_disposition(orchestration_status, runtime)
253
+ run_projection = build_workflow_run_projection(runtime)
252
254
  return {
253
255
  "mode": _text(source.get("mode_key")),
254
256
  "phase": _phase(source),
255
257
  "run_id": _runtime_run_id(runtime),
256
- "run_events": _runtime_run_events(runtime),
258
+ "run_state": run_projection["run_state"],
259
+ "current_step": run_projection["current_step"],
260
+ "run_steps": run_projection["run_steps"],
261
+ "run_events": run_projection["run_events"] or _runtime_run_events(runtime),
257
262
  "readiness": policy["readiness"],
258
263
  "turn_disposition": _text(turn_disposition.get("turn_disposition")),
259
264
  "artifact_write_allowed": turn_disposition.get("artifact_write_allowed") is True,
@@ -0,0 +1,166 @@
1
+ """Canonical workflow Run status projection from backend RunEvents."""
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Any
6
+
7
+ _TERMINAL_EVENT_STATUS = {
8
+ "complete": "completed",
9
+ "error": "failed",
10
+ "run.completed": "completed",
11
+ "run.failed": "failed",
12
+ "run.cancelled": "cancelled",
13
+ }
14
+
15
+ _STEP_EVENT_STATUS = {
16
+ "workstep.started": "running",
17
+ "workstep.progress": "running",
18
+ "capability.called": "running",
19
+ "capability.result_normalized": "completed",
20
+ "workstep.completed": "completed",
21
+ "workstep.blocked": "blocked",
22
+ "workstep.failed": "failed",
23
+ "human_confirmation.requested": "waiting_for_user",
24
+ }
25
+
26
+ _ACTIVE_RUN_STATES = frozenset({"queued", "running", "waiting_for_user"})
27
+
28
+
29
+ def _mapping(value: Any) -> dict[str, Any]:
30
+ return value if isinstance(value, dict) else {}
31
+
32
+
33
+ def _sequence(value: Any) -> list[Any]:
34
+ return value if isinstance(value, list) else []
35
+
36
+
37
+ def _text(value: Any) -> str:
38
+ return str(value or "").strip()
39
+
40
+
41
+ def _number(value: Any, fallback: int = 0) -> int:
42
+ try:
43
+ return int(value or fallback)
44
+ except (TypeError, ValueError):
45
+ return fallback
46
+
47
+
48
+ def _normalized_events(runtime_snapshot: dict[str, Any]) -> list[dict[str, Any]]:
49
+ events = []
50
+ for index, item in enumerate(_sequence(runtime_snapshot.get("run_events")), start=1):
51
+ event = _mapping(item)
52
+ payload = _mapping(event.get("payload"))
53
+ event_name = _text(event.get("event_name") or event.get("eventName") or payload.get("event_name"))
54
+ if not event_name:
55
+ continue
56
+ events.append(
57
+ {
58
+ **dict(event),
59
+ "event_name": event_name,
60
+ "payload": dict(payload),
61
+ "sequence": _number(event.get("sequence") or payload.get("run_event_sequence"), index),
62
+ }
63
+ )
64
+ return sorted(events, key=lambda event: _number(event.get("sequence")))
65
+
66
+
67
+ def _event_step_id(event: dict[str, Any]) -> str:
68
+ payload = _mapping(event.get("payload"))
69
+ return _text(payload.get("step_id") or payload.get("stepId"))
70
+
71
+
72
+ def _step_status(event: dict[str, Any]) -> str:
73
+ payload = _mapping(event.get("payload"))
74
+ payload_status = _text(payload.get("step_status") or payload.get("status"))
75
+ event_name = _text(event.get("event_name"))
76
+ if payload_status in {"blocked", "failed", "completed", "cancelled", "waiting_for_user"}:
77
+ return payload_status
78
+ return _STEP_EVENT_STATUS.get(event_name, "")
79
+
80
+
81
+ def _capability_id(event: dict[str, Any], step: dict[str, Any]) -> str:
82
+ payload = _mapping(event.get("payload"))
83
+ return _text(payload.get("capability_id") or payload.get("owner_capability") or step.get("capability_id"))
84
+
85
+
86
+ def _merge_step_event(step: dict[str, Any], event: dict[str, Any]) -> dict[str, Any]:
87
+ payload = _mapping(event.get("payload"))
88
+ return {
89
+ **step,
90
+ "step_id": _event_step_id(event) or _text(step.get("step_id")),
91
+ "status": _step_status(event) or _text(step.get("status")),
92
+ "capability_id": _capability_id(event, step),
93
+ "owner_capability": _text(payload.get("owner_capability") or step.get("owner_capability")),
94
+ "reason": _text(payload.get("capability_reason") or payload.get("reason") or step.get("reason")),
95
+ "missing_inputs": [_text(item) for item in _sequence(payload.get("missing_inputs")) if _text(item)],
96
+ "latest_event_name": _text(event.get("event_name")),
97
+ "sequence": _number(event.get("sequence")),
98
+ }
99
+
100
+
101
+ def _run_steps(events: list[dict[str, Any]]) -> list[dict[str, Any]]:
102
+ steps_by_id: dict[str, dict[str, Any]] = {}
103
+ for event in events:
104
+ step_id = _event_step_id(event)
105
+ if not step_id or not _step_status(event):
106
+ continue
107
+ steps_by_id[step_id] = _merge_step_event(steps_by_id.get(step_id, {}), event)
108
+ return sorted(steps_by_id.values(), key=lambda step: _number(step.get("sequence")))
109
+
110
+
111
+ def _terminal_event_state(events: list[dict[str, Any]]) -> str:
112
+ for event in reversed(events):
113
+ status = _TERMINAL_EVENT_STATUS.get(_text(event.get("event_name")), "")
114
+ if status:
115
+ return status
116
+ return ""
117
+
118
+
119
+ def _payload_run_state(events: list[dict[str, Any]]) -> str:
120
+ for event in reversed(events):
121
+ payload = _mapping(event.get("payload"))
122
+ state = _text(payload.get("run_state"))
123
+ if state:
124
+ return state
125
+ return ""
126
+
127
+
128
+ def _run_state(runtime_snapshot: dict[str, Any], events: list[dict[str, Any]]) -> str:
129
+ terminal = _terminal_event_state(events)
130
+ if terminal:
131
+ return terminal
132
+ run = _mapping(runtime_snapshot.get("run"))
133
+ run_state = _text(run.get("state") or run.get("run_state"))
134
+ if run_state:
135
+ return run_state
136
+ payload_state = _payload_run_state(events)
137
+ if payload_state:
138
+ return payload_state
139
+ return "running" if events else ""
140
+
141
+
142
+ def _current_step(steps: list[dict[str, Any]], run_state: str) -> dict[str, Any]:
143
+ active = [step for step in steps if _text(step.get("status")) in _ACTIVE_RUN_STATES]
144
+ if active:
145
+ return dict(active[-1])
146
+ if run_state in _ACTIVE_RUN_STATES and steps:
147
+ return dict(steps[-1])
148
+ return dict(steps[-1]) if steps else {}
149
+
150
+
151
+ def build_workflow_run_projection(runtime_snapshot: dict[str, Any] | None) -> dict[str, Any]:
152
+ """Return backend-owned current Run status plus append-only events."""
153
+
154
+ runtime = _mapping(runtime_snapshot)
155
+ events = _normalized_events(runtime)
156
+ steps = _run_steps(events)
157
+ state = _run_state(runtime, events)
158
+ return {
159
+ "run_state": state,
160
+ "current_step": _current_step(steps, state),
161
+ "run_steps": steps,
162
+ "run_events": events,
163
+ }
164
+
165
+
166
+ __all__ = ["build_workflow_run_projection"]
@@ -18,6 +18,15 @@ class SessionRepository(Protocol):
18
18
 
19
19
  def list_session_messages(self, session_id: str) -> list[dict[str, Any]]: ...
20
20
 
21
+ def list_session_messages_descending(
22
+ self,
23
+ session_id: str,
24
+ *,
25
+ before_created_at: str = "",
26
+ before_message_id: str = "",
27
+ limit: int = 50,
28
+ ) -> list[dict[str, Any]]: ...
29
+
21
30
  def append_session_messages(self, session_id: str, messages: list[dict[str, Any]]) -> list[dict[str, Any]]: ...
22
31
 
23
32
  def replace_session_message(self, session_id: str, message_id: str, message: dict[str, Any]) -> list[dict[str, Any]]: ...
@@ -49,6 +49,32 @@ class InMemorySessionRepository(SessionRepository):
49
49
  with self._lock:
50
50
  return [dict(item) for item in self._messages.get(resolved, [])]
51
51
 
52
+ def list_session_messages_descending(
53
+ self,
54
+ session_id: str,
55
+ *,
56
+ before_created_at: str = "",
57
+ before_message_id: str = "",
58
+ limit: int = 50,
59
+ ) -> list[dict[str, Any]]:
60
+ resolved = str(session_id or "").strip()
61
+ bounded_limit = max(0, int(limit or 0))
62
+ if not resolved or bounded_limit <= 0:
63
+ return []
64
+ cursor = (str(before_created_at or "").strip(), str(before_message_id or "").strip())
65
+ with self._lock:
66
+ messages = sorted(
67
+ [dict(item) for item in self._messages.get(resolved, [])],
68
+ key=lambda item: (str(item.get("created_at") or ""), str(item.get("message_id") or "")),
69
+ reverse=True,
70
+ )
71
+ if all(cursor):
72
+ messages = [
73
+ item for item in messages
74
+ if (str(item.get("created_at") or ""), str(item.get("message_id") or "")) < cursor
75
+ ]
76
+ return messages[:bounded_limit]
77
+
52
78
  def append_session_messages(self, session_id: str, messages: list[dict[str, Any]]) -> list[dict[str, Any]]:
53
79
  resolved = str(session_id or "").strip()
54
80
  if not resolved: