generated from coulomb/repo-seed
Complete memory graph and document value workplans
This commit is contained in:
@@ -78,6 +78,38 @@ Initial deterministic functions:
|
||||
| `md.codeblock` | Create a fenced code block. |
|
||||
| `data.get` | Read a value from processing context variables. |
|
||||
|
||||
## Typed Values
|
||||
|
||||
Document functions now expose typed result values in addition to their legacy
|
||||
raw `output` field. Each `DocumentFunctionRun` includes a `value` object with a
|
||||
stable `kind`, metadata, and optional provenance.
|
||||
|
||||
Supported value kinds:
|
||||
|
||||
| Kind | Markdown mapping |
|
||||
| --- | --- |
|
||||
| `string` | Inline or block text. |
|
||||
| `number` | Decimal text. |
|
||||
| `boolean` | `true` or `false`. |
|
||||
| `none` | Empty text. |
|
||||
| `markdown` | Markdown content passed through directly. |
|
||||
| `list` | Comma-separated inline text or newline-separated block text. |
|
||||
| `dictionary` | Stable JSON object text. |
|
||||
| `record` | Stable JSON object text. |
|
||||
| `table` | Deterministic Markdown table. |
|
||||
| `reference` | Label/title/value text, with provenance required. |
|
||||
| `content_unit` | Label/title/value text, with provenance required. |
|
||||
| `unknown` | Diagnostic fallback for mismatched output values. |
|
||||
| `dynamic` | Reserved for explicitly dynamic values. |
|
||||
|
||||
Function descriptors declare `output_type`; execution validates the returned
|
||||
value against that declaration. Mismatches produce
|
||||
`function.output_type_mismatch`, while reference-like values without provenance
|
||||
produce `function.provenance_missing`.
|
||||
|
||||
The raw `output` field remains for compatibility. New callers should prefer
|
||||
`value` for typed API use and use the mapper when Markdown output is needed.
|
||||
|
||||
## CLI
|
||||
|
||||
List functions:
|
||||
@@ -132,18 +164,44 @@ capabilities before execution. External policy services may provide decisions
|
||||
through adapters later, but deterministic function execution has no external
|
||||
service dependency.
|
||||
|
||||
## Syntax Boundary
|
||||
|
||||
The supported syntax remains intentionally conservative:
|
||||
|
||||
- inline calls with `{{mkt:...}}`
|
||||
- fenced calls with `mkt-function`
|
||||
- positional and named arguments parsed with shell-like quoting
|
||||
- pipeline chaining with quoted pipe characters preserved
|
||||
- `${name}` context variable lookup
|
||||
- bounded pipeline depth to avoid accidental runaway expressions
|
||||
|
||||
Deferred syntax:
|
||||
|
||||
- nested function expressions
|
||||
- document-local function definitions
|
||||
- conditionals, loops, lambdas, or general scripting
|
||||
- Quarkdown syntax compatibility in the core parser
|
||||
|
||||
## Natural Extensions
|
||||
|
||||
The deterministic layer deliberately stops before becoming a full publishing
|
||||
language. Future extension work is captured in
|
||||
`MKTT-WP-0015: Render And Document Function Extensions`.
|
||||
language. The original broad render/function follow-up has been split into
|
||||
native workplans:
|
||||
|
||||
That workplan should consider:
|
||||
- `MKTT-WP-0015`: typed document-function value contracts.
|
||||
- `MKTT-WP-0020`: render/export adapter contracts.
|
||||
- `MKTT-WP-0021`: render reference and asset manifest contracts.
|
||||
- `MQD-WP-0001`: concrete Quarkdown adapter implementation in
|
||||
`markitect-quarkdown`.
|
||||
- `MKTF-WP-0003`: read-side source attachment metadata compatibility in
|
||||
`markitect-filter`.
|
||||
|
||||
Those workplans should consider:
|
||||
|
||||
- typed document values and value-to-Markdown mapping
|
||||
- richer multiline and nested function syntax
|
||||
- document-local reusable functions
|
||||
- render/export adapters, including optional Quarkdown source export
|
||||
- constrained parser compatibility improvements, while deferring nested
|
||||
function expressions and document-local reusable functions
|
||||
- render/export adapter contracts, including optional Quarkdown source export
|
||||
- render-aware numbering, references, tables, figures, equations, and code
|
||||
blocks
|
||||
- static asset and media manifests with checksums
|
||||
|
||||
Reference in New Issue
Block a user