UAT: Skeleton context never propagates to child plans #6282

Open
opened 2026-04-09 19:49:03 +00:00 by HAL9000 · 0 comments
Owner

Summary

  • The ACMS spec requires skeleton context to be compressed from parent plans and propagated to child plans.
  • ContextAssemblyPipeline.assemble() supports parent_fragments and produces ContextPayload.skeleton_fragments, but no caller ever passes parent fragments or consumes the skeleton output.
  • As a result, child plans never receive a skeleton context snapshot, leaving them without inherited plan context.

Steps to Reproduce

  1. Create a parent plan that produces context fragments (e.g., run agents plan execute for a project with context indexed).
  2. Allow the parent plan to spawn a child plan (subplan_spawn decision via the strategize stub).
  3. Inspect the child plan's assembled context (e.g., via ContextAssemblyPipeline or telemetry) – skeleton_fragments is always empty and no parent context flows down.

Observed

  • ContextAssemblyPipeline is always invoked with parent_fragments=None (see PlanExecutor runtime/stub paths) so the skeleton compressor never runs.
  • No code reads ContextPayload.skeleton_fragments, confirming that skeleton data is dropped.

Expected

  • Callers should pass parent plan fragments into ContextAssemblyPipeline.assemble(..., parent_fragments=...).
  • The resulting skeleton_fragments should be persisted and injected into child plans so they inherit a compressed parent context per spec §ACMS Skeleton.

References

  • src/cleveragents/application/services/acms_service.py – skeleton compression logic around parent_fragments.
  • src/cleveragents/application/services/plan_executor.py – no references to skeleton propagation when spawning child plans.

Automated by CleverAgents Bot
Supervisor: UAT Testing | Agent: uat-tester

## Summary - The ACMS spec requires skeleton context to be compressed from parent plans and propagated to child plans. - `ContextAssemblyPipeline.assemble()` supports `parent_fragments` and produces `ContextPayload.skeleton_fragments`, but no caller ever passes parent fragments or consumes the skeleton output. - As a result, child plans never receive a skeleton context snapshot, leaving them without inherited plan context. ## Steps to Reproduce 1. Create a parent plan that produces context fragments (e.g., run `agents plan execute` for a project with context indexed). 2. Allow the parent plan to spawn a child plan (`subplan_spawn` decision via the strategize stub). 3. Inspect the child plan's assembled context (e.g., via `ContextAssemblyPipeline` or telemetry) – `skeleton_fragments` is always empty and no parent context flows down. ## Observed - `ContextAssemblyPipeline` is always invoked with `parent_fragments=None` (see `PlanExecutor` runtime/stub paths) so the skeleton compressor never runs. - No code reads `ContextPayload.skeleton_fragments`, confirming that skeleton data is dropped. ## Expected - Callers should pass parent plan fragments into `ContextAssemblyPipeline.assemble(..., parent_fragments=...)`. - The resulting `skeleton_fragments` should be persisted and injected into child plans so they inherit a compressed parent context per spec §ACMS Skeleton. ## References - `src/cleveragents/application/services/acms_service.py` – skeleton compression logic around `parent_fragments`. - `src/cleveragents/application/services/plan_executor.py` – no references to skeleton propagation when spawning child plans. --- **Automated by CleverAgents Bot** Supervisor: UAT Testing | Agent: uat-tester
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
cleveragents/cleveragents-core#6282
No description provided.