Summary
This issue covers two closely related foundations for the #750 redesign:
- locking in the target dependency semantics with a dedicated regression matrix
- redesigning the parser execution model so parser-local state is separated from shared execution context
These two belong together because the execution-context redesign should be driven by explicitly agreed semantics, not by the incidental shape of the current implementation.
Scope
This issue should cover:
- adding a regression matrix for dependency behavior across top-level parsing and shared-buffer constructs
- locking in expected behavior for
derive() and deriveFrom() in parse and suggest paths
- covering wrapper combinations such as
optional(), withDefault(), and map()
- covering external resolution paths such as
bindConfig(), bindEnv(), and prompt()
- redesigning
ParserContext so it can distinguish parser-local frame data from shared execution context
- updating the
Parser contract so complete() and shouldDeferCompletion() can receive execution context directly
Non-goals
This issue should not yet:
- introduce the new dependency runtime
- migrate
object(), tuple(), concat(), or merge()
- remove the old dependency-state protocol
Completion criteria
This issue is complete when:
- the target dependency semantics are covered by a dedicated regression matrix
- the new execution-context direction is encoded in internal types/interfaces
- the parser contract is updated so later runtime work can build on it
Parent issue
Part of #750
Summary
This issue covers two closely related foundations for the
#750redesign:These two belong together because the execution-context redesign should be driven by explicitly agreed semantics, not by the incidental shape of the current implementation.
Scope
This issue should cover:
derive()andderiveFrom()in parse and suggest pathsoptional(),withDefault(), andmap()bindConfig(),bindEnv(), andprompt()ParserContextso it can distinguish parser-local frame data from shared execution contextParsercontract socomplete()andshouldDeferCompletion()can receive execution context directlyNon-goals
This issue should not yet:
object(),tuple(),concat(), ormerge()Completion criteria
This issue is complete when:
Parent issue
Part of #750