[Phase 2.1] Wire worker_factory to provision_worker intents #43

Closed
opened 2026-03-16 19:36:52 +00:00 by Mark · 1 comment
Owner

Goal

Complete the worker provisioning loop by wiring worker_factory to respond to provision_worker intents.

Current State

  • Infrastructure built: schema, ledger, bones, router
  • worker_factory capability exists but doesn't listen for mesh intents
  • provisioning_orchestrator emits intents but no capability claims them

Implementation

Create/update capability at capabilities/_muscle/provision_worker_v1/:

run.py execute()

def execute_provision_worker(intent, profile, ledger, worker_id):
    # 1. Validate with reliability bone
    guard_result = call_bone("provision_reliability_guard_v1", ...)
    if guard_result["decision"] != "allow_execute":
        return {"status": "rejected", "reason": guard_result["reason_code"]}
    
    # 2. Extract target node from intent constraints
    node_pointer = select_node_pointer(intent["payload"])
    
    # 3. Call worker_factory to spawn
    spawn_result = execute_worker_factory(
        intent={"payload": {...}},  # factory format
        profile=profile,
        ledger=ledger,
        worker_id=worker_id,
    )
    
    # 4. Create worker_instance record
    ledger.create_worker_instance(
        instance_id=...,
        worker_id=spawn_result["worker_id"],
        node_pointer=node_pointer,
        capability_id=intent["payload"]["target_capability"],
        intent_id=intent["id"],
    )
    
    # 5. Return result
    return {"status": "success", "instance_id": ...}

template.yaml

  • capability class: muscle
  • skills: provision_worker
  • bond_required: 25
  • spawn constraints

Acceptance

  • provision_worker intent can be claimed by this capability
  • Spawned worker appears in worker_instances table
  • Worker is eligible for routing
  • Full loop tested: boundary.found → provision_worker → factory → ledger → router
## Goal Complete the worker provisioning loop by wiring `worker_factory` to respond to `provision_worker` intents. ## Current State - Infrastructure built: schema, ledger, bones, router - `worker_factory` capability exists but doesn't listen for mesh intents - `provisioning_orchestrator` emits intents but no capability claims them ## Implementation Create/update capability at `capabilities/_muscle/provision_worker_v1/`: ### run.py execute() ```python def execute_provision_worker(intent, profile, ledger, worker_id): # 1. Validate with reliability bone guard_result = call_bone("provision_reliability_guard_v1", ...) if guard_result["decision"] != "allow_execute": return {"status": "rejected", "reason": guard_result["reason_code"]} # 2. Extract target node from intent constraints node_pointer = select_node_pointer(intent["payload"]) # 3. Call worker_factory to spawn spawn_result = execute_worker_factory( intent={"payload": {...}}, # factory format profile=profile, ledger=ledger, worker_id=worker_id, ) # 4. Create worker_instance record ledger.create_worker_instance( instance_id=..., worker_id=spawn_result["worker_id"], node_pointer=node_pointer, capability_id=intent["payload"]["target_capability"], intent_id=intent["id"], ) # 5. Return result return {"status": "success", "instance_id": ...} ``` ### template.yaml - capability class: muscle - skills: provision_worker - bond_required: 25 - spawn constraints ## Acceptance - [ ] `provision_worker` intent can be claimed by this capability - [ ] Spawned worker appears in `worker_instances` table - [ ] Worker is eligible for routing - [ ] Full loop tested: boundary.found → provision_worker → factory → ledger → router ## Related - Uses infrastructure from #38, #39, #40, #41
Author
Owner

Updated Design (Placement by Capability)

Capability decides placement according to intent requirements:

Intent Requirements

type: provision_worker
payload:
  target_capability: "writer_v2"
  count: 1
  constraints:
    trust_tier: "high"           # Must run on high-trust nodes
    max_latency_ms: 5000         # Must complete within 5s
    eligible_regions: ["us-east", "us-west"]  # Geographic preference
  # NO specific node mentioned - capability decides

Capability Logic

def execute_provision_worker(intent, profile, ledger, worker_id):
    requirements = intent["payload"]["constraints"]
    
    # 1. Query mesh for eligible nodes
    eligible_nodes = mesh.find_nodes(
        trust_tier=requirements.get("trust_tier"),
        has_capability=intent["payload"]["target_capability"],
        load_threshold=0.8,
    )
    
    # 2. Score by requirements
    best_node = select_best_node(eligible_nodes, requirements)
    
    # 3. Spawn on chosen node
    spawn_worker_on_node(best_node, ...)
    
    # 4. Record placement decision
    return {
        "status": "success",
        "instance_id": ...,
        "placed_on": best_node.node_pointer,  # Audit trail
    }

Key Points

  • Intent expresses what and constraints, not where
  • Capability makes placement decision per mesh policy
  • Same capability can evolve better placement strategies
  • Audit trail shows why placement chosen
## Updated Design (Placement by Capability) Capability decides placement according to intent requirements: ### Intent Requirements ```yaml type: provision_worker payload: target_capability: "writer_v2" count: 1 constraints: trust_tier: "high" # Must run on high-trust nodes max_latency_ms: 5000 # Must complete within 5s eligible_regions: ["us-east", "us-west"] # Geographic preference # NO specific node mentioned - capability decides ``` ### Capability Logic ```python def execute_provision_worker(intent, profile, ledger, worker_id): requirements = intent["payload"]["constraints"] # 1. Query mesh for eligible nodes eligible_nodes = mesh.find_nodes( trust_tier=requirements.get("trust_tier"), has_capability=intent["payload"]["target_capability"], load_threshold=0.8, ) # 2. Score by requirements best_node = select_best_node(eligible_nodes, requirements) # 3. Spawn on chosen node spawn_worker_on_node(best_node, ...) # 4. Record placement decision return { "status": "success", "instance_id": ..., "placed_on": best_node.node_pointer, # Audit trail } ``` ### Key Points - Intent expresses **what and constraints**, not **where** - Capability makes placement decision per mesh policy - Same capability can evolve better placement strategies - Audit trail shows why placement chosen
Mark 2026-05-28 00:23:45 +00:00
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
Mark/mesh-seed#43
No description provided.