Concepts#
What Is A Problem?#
A problem is a typed research task definition with a stable identifier, metadata, and optional evaluation behavior. Problems can be descriptive (prompt packets) or executable (candidate generation and scoring).
Problem Families#
Family |
Use when |
|---|---|
Text |
Prompt-driven ideation or human-subjects tasks |
Decision |
Options, criteria, and explicit evaluation rules are central |
Optimization |
Objective/constraint benchmarking is required |
Grammar |
Sequential constructive action and state transitions are central |
MCP |
The task must interact with external tool backends |
Text problems support lightweight and human-readable study tasks. Decision problems are useful when alternatives and criteria are explicit. Optimization problems support algorithmic benchmarking. Grammar problems support process-level analysis of constructive behavior. MCP-backed problems bridge packaged task contracts to external runtime systems.
Computable Problems#
ComputableProblem extends the base Problem contract with executable
operations such as evaluate and solve. These methods provide comparable
interfaces across families while preserving domain-specific logic.
Evaluators and Solution Objects#
Evaluators normalize performance outputs into explicit metrics. Solution objects capture candidate structure so generated outputs and scores can be audited or replayed.
Metadata and Citations#
Problem metadata is treated as first-class data, including taxonomy and citation records. This supports transparent reporting and reproducibility.
Feature Flags and Capability Discovery#
Some families require optional dependencies. Feature flags and package extras make capability availability explicit at runtime.