Currently, the preprocessor assumes a single directive per message.
Open question:
How should the system handle inputs that appear to contain multiple directives?
Examples:
- "clear premise; reset policies"
- "use docker and prohibit peanuts"
- multi-line:
clear premise
reset policies
Options:
- Return
<NO_DIRECTIVE> (current behavior)
- Return
clarify via host UX (e.g., "Please send one directive at a time.") while preprocessor output remains <NO_DIRECTIVE>
- Attempt to execute multiple directives (likely out of scope)
Key constraints:
- precision-first (false positives are worse than false negatives)
- whole-message matching (no partial extraction)
- deterministic behavior
- no semantic guessing
Considerations:
- usability: users may naturally batch commands
- risk: detecting multiple directives reliably without false positives
- interaction with multi-line input
- whether detection should be heuristic-only or also handled by LLM
Open questions:
- what qualifies as a "clean" multi-directive input?
- should multi-line inputs be treated differently?
- should this logic live in heuristic or LLM layer?
Non-goal:
- no changes to core engine grammar/semantics in this issue
Decision deferred for now.
Currently, the preprocessor assumes a single directive per message.
Open question:
How should the system handle inputs that appear to contain multiple directives?
Examples:
clear premise
reset policies
Options:
<NO_DIRECTIVE>(current behavior)clarifyvia host UX (e.g., "Please send one directive at a time.") while preprocessor output remains<NO_DIRECTIVE>Key constraints:
Considerations:
Open questions:
Non-goal:
Decision deferred for now.