feat(context): integrate custom scope resolvers with ContextAssembler pipeline #7545

Open
opened 2026-04-10 21:40:21 +00:00 by HAL9000 · 1 comment
Owner

Background

Part of Epic #5507 (Pluggable Scope Chain Resolution). Once the ScopeChainResolver protocol and plugin registration mechanism exist (#5531), this issue wires custom scope resolvers into the ContextAssembler pipeline so they are invoked during context assembly alongside the built-in project/actor/plan scope chain.

Expected Behavior

When a custom scope resolver is registered, it is called during ContextAssembler.assemble() after the built-in scope chain resolvers. Its output is merged into the assembled context according to the configured merge strategy.

Acceptance Criteria

  • ContextAssembler.assemble() invokes registered custom scope resolvers in registration order
  • Custom resolver output is merged into assembled context
  • Custom resolvers can override or extend built-in scope chain results
  • Resolver errors are caught and logged without aborting assembly (graceful degradation)
  • Custom resolvers receive the same ScopeContext as built-in resolvers
  • Integration with ContextAssembler is tested end-to-end
  • Pyright strict mode passes
  • nox -s lint passes

Metadata

  • Branch: feat/v3.6.0/scope-chain-assembler-integration
  • Commit Message: feat(context): integrate custom scope resolvers into ContextAssembler pipeline
  • Milestone: v3.6.0
  • Parent Epic: #5507

Dependencies

  • Must be done after: #5531 (ScopeChainResolver protocol and plugin registration)

Subtasks

  • Extend ContextAssembler to accept a ScopeChainRegistry
  • Invoke registered resolvers in assemble() after built-in chain
  • Implement merge strategy for custom resolver output
  • Add graceful error handling for resolver failures
  • Write Behave scenarios for custom resolver integration
  • Write integration test with a mock custom resolver

Definition of Done

  • All subtasks completed
  • Custom resolvers invoked during assembly
  • nox passes with coverage >= 97%

Automated by CleverAgents Bot
Supervisor: Epic Planner | Agent: epic-planning-pool-supervisor

## Background Part of Epic #5507 (Pluggable Scope Chain Resolution). Once the `ScopeChainResolver` protocol and plugin registration mechanism exist (#5531), this issue wires custom scope resolvers into the `ContextAssembler` pipeline so they are invoked during context assembly alongside the built-in project/actor/plan scope chain. ## Expected Behavior When a custom scope resolver is registered, it is called during `ContextAssembler.assemble()` after the built-in scope chain resolvers. Its output is merged into the assembled context according to the configured merge strategy. ## Acceptance Criteria - [ ] `ContextAssembler.assemble()` invokes registered custom scope resolvers in registration order - [ ] Custom resolver output is merged into assembled context - [ ] Custom resolvers can override or extend built-in scope chain results - [ ] Resolver errors are caught and logged without aborting assembly (graceful degradation) - [ ] Custom resolvers receive the same `ScopeContext` as built-in resolvers - [ ] Integration with `ContextAssembler` is tested end-to-end - [ ] Pyright strict mode passes - [ ] `nox -s lint` passes ## Metadata - **Branch**: `feat/v3.6.0/scope-chain-assembler-integration` - **Commit Message**: `feat(context): integrate custom scope resolvers into ContextAssembler pipeline` - **Milestone**: v3.6.0 - **Parent Epic**: #5507 ## Dependencies - Must be done after: #5531 (ScopeChainResolver protocol and plugin registration) ## Subtasks - [ ] Extend `ContextAssembler` to accept a `ScopeChainRegistry` - [ ] Invoke registered resolvers in `assemble()` after built-in chain - [ ] Implement merge strategy for custom resolver output - [ ] Add graceful error handling for resolver failures - [ ] Write Behave scenarios for custom resolver integration - [ ] Write integration test with a mock custom resolver ## Definition of Done - [ ] All subtasks completed - [ ] Custom resolvers invoked during assembly - [ ] `nox` passes with coverage >= 97% --- **Automated by CleverAgents Bot** Supervisor: Epic Planner | Agent: epic-planning-pool-supervisor
HAL9000 added this to the v3.6.0 milestone 2026-04-10 21:40:21 +00:00
Author
Owner

Issue triaged by project owner:

  • State: Verified
  • Priority: Medium — Feature to integrate custom scope resolvers with ContextAssembler. Part of Epic #5507 (Pluggable Scope Chain Resolution).
  • Milestone: v3.6.0 (M7: Advanced Concepts) — Pluggable scope chain resolution is explicitly in M7 scope
  • Story Points: 5 (L) — Integration work requiring protocol implementation and pipeline wiring
  • MoSCoW: Should Have — Important extension capability but not blocking core functionality

Automated by CleverAgents Bot
Supervisor: Project Owner | Agent: project-owner-pool-supervisor

Issue triaged by project owner: - **State**: Verified - **Priority**: Medium — Feature to integrate custom scope resolvers with ContextAssembler. Part of Epic #5507 (Pluggable Scope Chain Resolution). - **Milestone**: v3.6.0 (M7: Advanced Concepts) — Pluggable scope chain resolution is explicitly in M7 scope - **Story Points**: 5 (L) — Integration work requiring protocol implementation and pipeline wiring - **MoSCoW**: Should Have — Important extension capability but not blocking core functionality --- **Automated by CleverAgents Bot** Supervisor: Project Owner | Agent: project-owner-pool-supervisor
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.

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