How nwave-ai/nwave-experimental works
nWave’s DES runtime guides an assistant through delivering a request in explicit steps, with the assistant deciding when to continue. The documented path establishes a goal and design, defines an executable public oracle, implements and reviews the change, examines behavior without reading implementation, then integrates it. The graph also shows host hooks and the task-invocation boundary as supporting capabilities. Workflow ordering comes from the README; source excerpts were partial, so internal wiring beyond those documented relationships is omitted.
Main entry points: craft.py Define goal · design.py Establish design · oracle.py Define oracle · invoke_role.py Implement change
Components 16
Request delivery
- Define goal
lib/python/des/cli/craft.py - Establish design
lib/python/des/cli/design.py - Define oracle
lib/python/des/cli/oracle.py - Implement change
lib/python/des/cli/invoke_role.py - Review change
lib/python/des/cli/verify.py - Observe behavior
lib/python/des/cli/verify_red_green.py - Integrate result
lib/python/des/cli/integrate.py
User interfaces
- Start delivery
lib/python/des/cli/po.py - Request state
lib/python/des/cli/state.py
Execution boundary
- Step progression
lib/python/des/application/delivery_steps.py - Continuation logic
lib/python/des/application/delivery_continuation.py - Task adapters
lib/python/des/adapters/driven/task_invocation/configured_task_adapter.py - Git operations
lib/python/des/adapters/driven/git/git_mutate.py
Host integration
- Host hooks
lib/python/des/adapters/drivers/hooks/hook_router.py - Session notice
lib/python/des/adapters/drivers/hooks/session_start_notice_handler.py
Other components
- Assistant
Connections 13
- Assistant → Start delivery: starts request
- Assistant → Request state: checks status
- Start delivery → Define goal: begins delivery
- Define goal → Establish design: next step
- Establish design → Define oracle: next step
- Define oracle → Implement change: next step
- Implement change → Review change: next step
- Review change → Observe behavior: next step
- Observe behavior → Integrate result: next step
- Assistant → Step progression: chooses next
- Step progression → Continuation logic: advances state
- Host hooks → Session notice: routes session
- Assistant → Host hooks: host events