Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 11 additions & 15 deletions scripts/core-boundaries/rules/source/forbidden-rules.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -2900,17 +2900,17 @@ export const forbiddenContentRules = [
{
regex: /\bGetToolSpecLoadObservation\b/,
message:
'execution engine must not own collapsed-tool unlock observation details; use product_runtime unlock state owner',
'execution engine must not own deferred-tool loaded-spec observation details; use product_runtime loaded-spec state owner',
},
{
regex: /\bcollect_loaded_collapsed_tool_names\b/,
regex: /\bcollect_loaded_deferred_tool_specs\b/,
message:
'execution engine must not call generic collapsed-tool collector directly; use product_runtime unlock state owner',
'execution engine must not call generic deferred-tool collector directly; use product_runtime loaded-spec state owner',
},
{
regex: /\bfn\s+collect_unlocked_collapsed_tools\b/,
regex: /\bfn\s+collect_loaded_deferred_tool_specs\b/,
message:
'execution engine must not own collapsed-tool unlock collection; use product_runtime unlock state owner',
'execution engine must not own deferred-tool loaded-spec collection; use product_runtime loaded-spec state owner',
},
],
},
Expand Down Expand Up @@ -4229,7 +4229,7 @@ export const forbiddenContentUnderRules = [
{
path: 'src/crates/execution/tool-contracts/src',
reason:
'agent-tools may own pure tool manifest contracts, but not product manifest runtime or GetToolSpec execution without an approved provider migration',
'agent-tools may own pure tool manifest and deferred-tool state contracts, but not product manifest runtime or concrete GetToolSpec execution',
patterns: [
{
regex: /\bGetToolSpecTool\b/,
Expand All @@ -4239,10 +4239,6 @@ export const forbiddenContentUnderRules = [
regex: /\bmanifest_resolver\b/,
message: 'tool manifest resolution stays in core product tool runtime',
},
{
regex: /\bunlocked_collapsed_tools\b/,
message: 'collapsed-tool unlock state stays in core ToolUseContext/runtime',
},
{
regex: /\bToolUseContext\b/,
message: 'ToolUseContext stays in core until a portable context port is reviewed',
Expand All @@ -4267,12 +4263,12 @@ export const forbiddenContentUnderRules = [
message: 'tool manifest resolution stays in core product tool runtime',
},
{
regex: /\bunlocked_collapsed_tools\b/,
message: 'collapsed-tool unlock state stays in core ToolUseContext/runtime',
regex: /\bloaded_deferred_tool_specs\b/,
message: 'deferred-tool loaded-spec state stays in core ToolUseContext/runtime',
},
{
regex: /\bToolExposure\b/,
message: 'expanded/collapsed exposure policy stays in core until provider migration',
message: 'direct/deferred exposure policy stays in core until provider migration',
},
],
},
Expand Down Expand Up @@ -4301,8 +4297,8 @@ export const forbiddenContentUnderRules = [
message: 'runtime-restriction admission must stay behind validate_tool_execution_admission',
},
{
regex: /\bvalidate_collapsed_tool_usage\s*\(/,
message: 'collapsed-tool admission must stay behind validate_tool_execution_admission',
regex: /\bvalidate_deferred_tool_usage\s*\(/,
message: 'deferred-tool admission must stay behind validate_tool_execution_admission',
},
],
},
Expand Down
94 changes: 45 additions & 49 deletions scripts/core-boundaries/rules/source/required-rules.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -5312,10 +5312,6 @@ export const requiredContentRules = [
regex: /\bpub fn build_tool_manifest_policy_tools\b/,
message: 'missing registry snapshot to manifest policy input helper',
},
{
regex: /\bpub fn build_collapsed_tool_stub_definition\b/,
message: 'missing collapsed-tool prompt stub contract',
},
{
regex: /\bpub enum PromptVisibleToolManifestItem\b/,
message: 'missing prompt-visible manifest item contract',
Expand Down Expand Up @@ -5373,16 +5369,16 @@ export const requiredContentRules = [
message: 'missing pure GetToolSpec prompt description contract',
},
{
regex: /\bpub struct GetToolSpecCollapsedToolSummary\b/,
message: 'missing pure GetToolSpec collapsed catalog summary',
regex: /\bpub struct GetToolSpecDeferredToolSummary\b/,
message: 'missing pure GetToolSpec deferred catalog summary',
},
{
regex: /\bpub struct GetToolSpecDetail\b/,
message: 'missing pure GetToolSpec detail contract',
},
{
regex: /\bpub fn summarize_get_tool_spec_collapsed_tools\b/,
message: 'missing pure GetToolSpec collapsed summary helper',
regex: /\bpub fn summarize_get_tool_spec_deferred_tools\b/,
message: 'missing pure GetToolSpec deferred summary helper',
},
{
regex: /\bpub async fn resolve_get_tool_spec_detail\b/,
Expand Down Expand Up @@ -5461,12 +5457,12 @@ export const requiredContentRules = [
message: 'missing pure GetToolSpec load observation contract',
},
{
regex: /\bpub fn collect_loaded_collapsed_tool_names\b/,
message: 'missing pure collapsed-tool load collection contract',
regex: /\bpub fn collect_loaded_deferred_tool_specs\b/,
message: 'missing pure deferred-tool load collection contract',
},
{
regex: /\bpub enum CollapsedToolUsageError\b/,
message: 'missing collapsed-tool execution gate error contract',
regex: /\bpub enum DeferredToolUsageError\b/,
message: 'missing deferred-tool execution gate error contract',
},
{
regex: /\bpub enum ToolExecutionAccessError\b/,
Expand All @@ -5477,8 +5473,8 @@ export const requiredContentRules = [
message: 'missing tool execution allowed-list gate policy',
},
{
regex: /\bpub fn validate_collapsed_tool_usage\b/,
message: 'missing collapsed-tool execution gate policy',
regex: /\bpub fn validate_deferred_tool_usage\b/,
message: 'missing deferred-tool execution gate policy',
},
{
regex: /\bpub fn is_tool_path_allowed_by_resolved_roots\b/,
Expand Down Expand Up @@ -5553,12 +5549,12 @@ export const requiredContentRules = [
message: 'missing generic static-provider plan-to-registry assembly helper',
},
{
regex: /\bpub fn is_tool_collapsed\b/,
message: 'missing generic collapsed-tool registry query',
regex: /\bpub fn is_tool_deferred\b/,
message: 'missing generic deferred-tool registry query',
},
{
regex: /\bpub fn get_collapsed_tool_names\b/,
message: 'missing generic collapsed-tool registry catalog query',
regex: /\bpub fn get_deferred_tool_names\b/,
message: 'missing generic deferred-tool registry catalog query',
},
{
regex: /\bpub async fn resolve_readonly_enabled_tools\b/,
Expand Down Expand Up @@ -7086,20 +7082,20 @@ export const requiredContentRules = [
message: 'missing product tool runtime owner delegation',
},
{
regex: /\bget_collapsed_tool_names\b/,
message: 'missing collapsed-tool catalog owner',
regex: /\bget_deferred_tool_names\b/,
message: 'missing deferred-tool catalog owner',
},
{
regex: /\bresolve_product_readonly_enabled_tools\b/,
message: 'missing product tool catalog readonly facade delegation',
},
{
regex: /\bproduct_tool_runtime_owner_preserves_registry_contract\b/,
message: 'missing collapsed-tool manifest migration baseline',
message: 'missing deferred-tool manifest migration baseline',
},
{
regex: /\binner\.is_tool_collapsed\b/,
message: 'missing collapsed exposure lookup delegation',
regex: /\binner\.is_tool_deferred\b/,
message: 'missing deferred exposure lookup delegation',
},
],
},
Expand Down Expand Up @@ -7254,8 +7250,8 @@ export const requiredContentRules = [
message: 'missing product GetToolSpec Tool-result vector facade',
},
{
regex: /\bunlocked_collapsed_tools\b/,
message: 'missing product runtime collapsed-tool unlock state source',
regex: /\bloaded_deferred_tool_specs\b/,
message: 'missing product runtime deferred-tool loaded-spec state source',
},
{
regex: /\bproduct_catalog_provider_default_get_tool_spec_catalog_matches_registry\b/,
Expand Down Expand Up @@ -7496,8 +7492,8 @@ export const requiredContentRules = [
message: 'missing core product manifest facade delegation',
},
{
regex: /\bcollapsed_tool_names\b/,
message: 'missing collapsed-tool name tracking',
regex: /\bdeferred_tool_names\b/,
message: 'missing deferred-tool name tracking',
},
{
regex: /\bmanifest_resolver_facade_preserves_product_owner_output\b/,
Expand All @@ -7523,8 +7519,8 @@ export const requiredContentRules = [
message: 'missing core GetToolSpec execution error mapping boundary',
},
{
regex: /\bbuild_collapsed_tools_context_section\b/,
message: 'missing core collapsed-tool request-context section renderer',
regex: /\bbuild_deferred_tools_context_section\b/,
message: 'missing core deferred-tool request-context section renderer',
},
{
regex: /\bproduct_get_tool_spec_runtime\b/,
Expand Down Expand Up @@ -7593,8 +7589,8 @@ export const requiredContentRules = [
message: 'missing cancellation token runtime-only facts guard',
},
{
regex: /\bunlocked_collapsed_tools\b/,
message: 'missing collapsed-tool unlock state',
regex: /\bloaded_deferred_tool_specs\b/,
message: 'missing deferred-tool loaded-spec state',
},
{
regex: /\bimpl ToolUseContext\b/,
Expand Down Expand Up @@ -7697,15 +7693,15 @@ export const requiredContentRules = [
{
path: 'src/crates/assembly/core/src/agentic/tools/pipeline/tool_pipeline.rs',
reason:
'core must continue carrying collapsed-tool unlock state while delegating provider-neutral execution gate policy to agent-tools',
'core must continue carrying deferred-tool loaded-spec state while delegating provider-neutral execution gate policy to agent-tools',
patterns: [
{
regex: /\bvalidate_tool_execution_admission\b/,
message: 'missing provider-neutral tool execution admission gate delegation',
},
{
regex: /\bunlocked_collapsed_tools\b/,
message: 'missing collapsed-tool unlock state propagation',
regex: /\bloaded_deferred_tool_specs\b/,
message: 'missing deferred-tool loaded-spec state propagation',
},
{
regex: /\bpipeline_preserves_core_owned_tool_context_without_portable_runtime_leak\b/,
Expand Down Expand Up @@ -7740,19 +7736,19 @@ export const requiredContentRules = [
{
path: 'src/crates/assembly/core/src/agentic/execution/execution_engine.rs',
reason:
'core execution must pass collapsed-tool unlock state through product runtime owner and keep DeepResearch post-turn hooks',
'core execution must pass deferred-tool loaded-spec state through product runtime owner and keep DeepResearch post-turn hooks',
patterns: [
{
regex: /\bcollect_product_unlocked_collapsed_tools\b/,
message: 'missing product runtime collapsed-tool unlock state handoff',
regex: /\bcollect_product_loaded_deferred_tool_specs\b/,
message: 'missing product runtime deferred-tool loaded-spec state handoff',
},
{
regex: /\bunlocked_collapsed_tools\b/,
message: 'missing collapsed-tool unlock propagation into round context',
regex: /\bloaded_deferred_tool_specs\b/,
message: 'missing deferred-tool loaded-spec propagation into round context',
},
{
regex: /\bcollapsed_tool_names\b/,
message: 'missing manifest collapsed-tool handoff',
regex: /\bdeferred_tool_names\b/,
message: 'missing manifest deferred-tool handoff',
},
{
regex: /\bGetToolSpec\b/,
Expand All @@ -7769,25 +7765,25 @@ export const requiredContentRules = [
],
},
{
path: 'src/crates/assembly/core/src/agentic/tools/product_runtime/unlock_state.rs',
path: 'src/crates/assembly/core/src/agentic/tools/product_runtime/loaded_spec_state.rs',
reason:
'product runtime owns collapsed-tool unlock observation adaptation while preserving generic agent-tools policy',
'product runtime owns deferred-tool loaded-spec observation adaptation while preserving generic agent-tools policy',
patterns: [
{
regex: /\bcollect_product_unlocked_collapsed_tools\b/,
message: 'missing product runtime collapsed-tool unlock collector',
regex: /\bcollect_product_loaded_deferred_tool_specs\b/,
message: 'missing product runtime deferred-tool loaded-spec collector',
},
{
regex: /\bGetToolSpecLoadObservation\b/,
message: 'missing GetToolSpec load observation adapter',
},
{
regex: /\bcollect_loaded_collapsed_tool_names\b/,
message: 'missing generic collapsed-tool load collector delegation',
regex: /\bcollect_loaded_deferred_tool_specs\b/,
message: 'missing generic deferred-tool load collector delegation',
},
{
regex: /\bproduct_unlock_state_dedupes_and_filters_runtime_unlocks\b/,
message: 'missing collapsed-tool unlock filtering regression',
regex: /\bproduct_loaded_spec_state_dedupes_and_filters_results\b/,
message: 'missing deferred-tool loaded-spec filtering regression',
},
],
},
Expand Down
Loading
Loading