Skip to content

Strict config validation rejects legitimate fields (comment, skills) #23385

@thebrickbot

Description

@thebrickbot

Bug Description

After commit d1e9490f9 ("enforce strict config validation"), all Zod config schemas use .strict() which rejects unknown keys. Two legitimate fields were missed and are now being rejected:

1. comment on bindings

  • Schema: src/config/zod-schema.agents.tsBindingsSchema missing comment: z.string().optional()
  • Type: src/config/types.agents.tsAgentBinding missing comment?: string

2. skills on agent entries

  • Schema: src/config/zod-schema.agent-runtime.tsAgentEntrySchema missing skills: z.array(z.string()).optional()
  • Type: src/config/types.agents.tsAgentConfig missing skills?: string[]
  • Note: skills was already supported on channel-level configs but not on per-agent config

Impact

Agents with these fields in their config fail to start with validation errors.

Fix

Four files need changes:

  • src/config/zod-schema.agent-runtime.ts — add skills
  • src/config/zod-schema.agents.ts — add comment
  • src/config/types.agents.ts — add both to types

Suggested Prevention

  • Audit existing configs when adding strict validation
  • Add integration tests that validate real-world config examples
  • Consider a "warn on unknown keys" mode before hard rejection

Version

Affects: 2026.2.19+ (after strict validation was enforced)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions