Feature: Actor compiler reads LSP bindings from NodeDefinition.lsp_binding typed field
  As a CleverAgents developer
  I want the actor compiler to read LSP bindings from the typed lsp_binding field
  So that per-node LSP bindings are not silently dropped when specified via lsp_binding: YAML key

  Background:
    Given the actor compiler is available

  @tdd_issue @tdd_issue_1432
  Scenario: Node with lsp_binding typed field populates CompilationMetadata.lsp_bindings
    Given a GRAPH actor config with a node using the lsp_binding typed field
    When I compile the actor config
    Then the compilation should succeed
    And the compilation metadata should have 1 LSP binding
    And the LSP binding should reference server "local/pyright"

  @tdd_issue @tdd_issue_1432
  Scenario: Node without lsp_binding field produces empty lsp_bindings in metadata
    Given a GRAPH actor config with a single node
    When I compile the actor config
    Then the compilation should succeed
    And the compilation metadata should have 0 LSP bindings
