millrace-plus 0.22.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. millrace_plus/__init__.py +5 -0
  2. millrace_plus/py.typed +1 -0
  3. millrace_plus/skills/millrace-entrypoint-authoring/SKILL.md +151 -0
  4. millrace_plus/skills/millrace-entrypoint-authoring/agents/openai.yaml +4 -0
  5. millrace_plus/skills/millrace-entrypoint-authoring/references/artifact-handoff-patterns.md +76 -0
  6. millrace_plus/skills/millrace-entrypoint-authoring/references/core-entrypoint-skill-pattern.md +159 -0
  7. millrace_plus/skills/millrace-entrypoint-authoring/references/dispatch-and-evidence-boundaries.md +86 -0
  8. millrace_plus/skills/millrace-entrypoint-authoring/references/entrypoint-prompt-pattern.md +87 -0
  9. millrace_plus/skills/millrace-entrypoint-authoring/references/entrypoint-review-checklist.md +77 -0
  10. millrace_plus/skills/millrace-entrypoint-authoring/references/terminal-markers-and-runtime-authority.md +66 -0
  11. millrace_plus/skills/millrace-entrypoint-authoring/references/worked-examples.md +127 -0
  12. millrace_plus/skills/millrace-instruction-manual/SKILL.md +148 -0
  13. millrace_plus/skills/millrace-instruction-manual/agents/openai.yaml +4 -0
  14. millrace_plus/skills/millrace-instruction-manual/references/cli-operations.md +233 -0
  15. millrace_plus/skills/millrace-instruction-manual/references/current-capabilities.md +157 -0
  16. millrace_plus/skills/millrace-instruction-manual/references/install-and-deploy.md +98 -0
  17. millrace_plus/skills/millrace-loop-configuration/SKILL.md +120 -0
  18. millrace_plus/skills/millrace-loop-configuration/agents/openai.yaml +4 -0
  19. millrace_plus/skills/millrace-loop-configuration/references/decision-tree-design.md +123 -0
  20. millrace_plus/skills/millrace-loop-configuration/references/planes-and-compilation.md +77 -0
  21. millrace_plus/skills/millrace-loop-configuration/references/worked-examples.md +118 -0
  22. millrace_plus/skills/millrace-loop-configuration/references/workflow-author-contract.md +182 -0
  23. millrace_plus-0.22.0.dist-info/METADATA +334 -0
  24. millrace_plus-0.22.0.dist-info/RECORD +89 -0
  25. millrace_plus-0.22.0.dist-info/WHEEL +4 -0
  26. millrace_plus-0.22.0.dist-info/licenses/LICENSE +201 -0
  27. millrace_workflow_package/assets/workflows/execution.lad/entrypoints/lad_builder.md +52 -0
  28. millrace_workflow_package/assets/workflows/execution.lad/entrypoints/lad_checker.md +53 -0
  29. millrace_workflow_package/assets/workflows/execution.lad/entrypoints/lad_consultant.md +53 -0
  30. millrace_workflow_package/assets/workflows/execution.lad/entrypoints/lad_doublechecker.md +52 -0
  31. millrace_workflow_package/assets/workflows/execution.lad/entrypoints/lad_fixer.md +51 -0
  32. millrace_workflow_package/assets/workflows/execution.lad/entrypoints/lad_troubleshooter.md +54 -0
  33. millrace_workflow_package/assets/workflows/execution.lad/entrypoints/lad_updater.md +51 -0
  34. millrace_workflow_package/assets/workflows/execution.lad/skills/builder-core.md +89 -0
  35. millrace_workflow_package/assets/workflows/execution.lad/skills/checker-core.md +89 -0
  36. millrace_workflow_package/assets/workflows/execution.lad/skills/consultant-core.md +89 -0
  37. millrace_workflow_package/assets/workflows/execution.lad/skills/doublechecker-core.md +82 -0
  38. millrace_workflow_package/assets/workflows/execution.lad/skills/fixer-core.md +82 -0
  39. millrace_workflow_package/assets/workflows/execution.lad/skills/troubleshooter-core.md +82 -0
  40. millrace_workflow_package/assets/workflows/execution.lad/skills/updater-core.md +82 -0
  41. millrace_workflow_package/assets/workflows/execution.lad_integrator/entrypoints/lad_integrator.md +52 -0
  42. millrace_workflow_package/assets/workflows/execution.lad_integrator/skills/integrator-core.md +89 -0
  43. millrace_workflow_package/assets/workflows/lad.full/entrypoints/analyst.md +43 -0
  44. millrace_workflow_package/assets/workflows/lad.full/entrypoints/curator.md +43 -0
  45. millrace_workflow_package/assets/workflows/lad.full/entrypoints/librarian.md +51 -0
  46. millrace_workflow_package/assets/workflows/lad.full/entrypoints/professor.md +44 -0
  47. millrace_workflow_package/assets/workflows/lad.full/skills/analyst-core.md +124 -0
  48. millrace_workflow_package/assets/workflows/lad.full/skills/curator-core.md +134 -0
  49. millrace_workflow_package/assets/workflows/lad.full/skills/librarian-core.md +153 -0
  50. millrace_workflow_package/assets/workflows/lad.full/skills/professor-core.md +135 -0
  51. millrace_workflow_package/assets/workflows/planning.lad/entrypoints/lad_arbiter.md +57 -0
  52. millrace_workflow_package/assets/workflows/planning.lad/entrypoints/lad_auditor.md +53 -0
  53. millrace_workflow_package/assets/workflows/planning.lad/entrypoints/lad_manager.md +60 -0
  54. millrace_workflow_package/assets/workflows/planning.lad/entrypoints/lad_mechanic.md +55 -0
  55. millrace_workflow_package/assets/workflows/planning.lad/entrypoints/lad_planner.md +57 -0
  56. millrace_workflow_package/assets/workflows/planning.lad/entrypoints/recon.md +60 -0
  57. millrace_workflow_package/assets/workflows/planning.lad/skills/arbiter-core.md +106 -0
  58. millrace_workflow_package/assets/workflows/planning.lad/skills/auditor-core.md +106 -0
  59. millrace_workflow_package/assets/workflows/planning.lad/skills/manager-core.md +132 -0
  60. millrace_workflow_package/assets/workflows/planning.lad/skills/mechanic-core.md +106 -0
  61. millrace_workflow_package/assets/workflows/planning.lad/skills/planner-core.md +170 -0
  62. millrace_workflow_package/assets/workflows/planning.lad/skills/recon-core.md +112 -0
  63. millrace_workflow_package/assets/workflows/simple_loop/entrypoints/manager.md +56 -0
  64. millrace_workflow_package/assets/workflows/simple_loop/entrypoints/reviewer.md +53 -0
  65. millrace_workflow_package/assets/workflows/simple_loop/entrypoints/troubleshooter.md +49 -0
  66. millrace_workflow_package/assets/workflows/simple_loop/entrypoints/worker.md +55 -0
  67. millrace_workflow_package/assets/workflows/simple_loop/skills/manager-core.md +99 -0
  68. millrace_workflow_package/assets/workflows/simple_loop/skills/reviewer-core.md +96 -0
  69. millrace_workflow_package/assets/workflows/simple_loop/skills/troubleshooter-core.md +77 -0
  70. millrace_workflow_package/assets/workflows/simple_loop/skills/worker-core.md +95 -0
  71. millrace_workflow_package/assets/workflows/vendor_selection/entrypoints/award_decider.md +49 -0
  72. millrace_workflow_package/assets/workflows/vendor_selection/entrypoints/candidate_packager.md +43 -0
  73. millrace_workflow_package/assets/workflows/vendor_selection/entrypoints/catalog_sourcer.md +44 -0
  74. millrace_workflow_package/assets/workflows/vendor_selection/entrypoints/conflict_checker.md +43 -0
  75. millrace_workflow_package/assets/workflows/vendor_selection/entrypoints/decision_packager.md +43 -0
  76. millrace_workflow_package/assets/workflows/vendor_selection/entrypoints/policy_screener.md +45 -0
  77. millrace_workflow_package/assets/workflows/vendor_selection/entrypoints/request_intake.md +42 -0
  78. millrace_workflow_package/assets/workflows/vendor_selection/entrypoints/requirement_freezer.md +43 -0
  79. millrace_workflow_package/assets/workflows/vendor_selection/entrypoints/rubric_evaluator.md +43 -0
  80. millrace_workflow_package/assets/workflows/vendor_selection/skills/award_decider-core.md +303 -0
  81. millrace_workflow_package/assets/workflows/vendor_selection/skills/candidate_packager-core.md +160 -0
  82. millrace_workflow_package/assets/workflows/vendor_selection/skills/catalog_sourcer-core.md +212 -0
  83. millrace_workflow_package/assets/workflows/vendor_selection/skills/conflict_checker-core.md +104 -0
  84. millrace_workflow_package/assets/workflows/vendor_selection/skills/decision_packager-core.md +100 -0
  85. millrace_workflow_package/assets/workflows/vendor_selection/skills/policy_screener-core.md +130 -0
  86. millrace_workflow_package/assets/workflows/vendor_selection/skills/request_intake-core.md +115 -0
  87. millrace_workflow_package/assets/workflows/vendor_selection/skills/requirement_freezer-core.md +133 -0
  88. millrace_workflow_package/assets/workflows/vendor_selection/skills/rubric_evaluator-core.md +122 -0
  89. millrace_workflow_package/manifest.json +19977 -0
@@ -0,0 +1,5 @@
1
+ """Public package metadata for millrace-plus."""
2
+
3
+ __version__ = "0.22.0"
4
+
5
+ __all__ = ("__version__",)
millrace_plus/py.typed ADDED
@@ -0,0 +1 @@
1
+
@@ -0,0 +1,151 @@
1
+ ---
2
+ name: millrace-entrypoint-authoring
3
+ description: Public Millrace entrypoint and stage-core skill authoring guide. Use when an agent needs to write, edit, or review Millrace stage entrypoint prompts, core entrypoint skills, terminal marker instructions, structured artifact schemas, handoff formats, validation checklists, or prompt/skill package assets for a compiler-validated workflow.
4
+ ---
5
+
6
+ # Millrace Entrypoint Authoring
7
+
8
+ ## Core Rule
9
+
10
+ Entrypoints are prompt files. A stage runner receives an instruction like:
11
+
12
+ ```text
13
+ Open [relative/path/to/entrypoint.md] and follow instructions.
14
+ ```
15
+
16
+ The entrypoint prompt tells the stage agent how to act. It does not create
17
+ runtime authority. Runtime legality still comes from selected compiled
18
+ workflow/package data.
19
+
20
+ Do not put API keys, OAuth tokens, local credential paths, provider secrets, or
21
+ adapter config secrets in workflow packages, prompt assets, skill files, or
22
+ evidence reports. Adapter config is local operator config, not package
23
+ authority.
24
+
25
+ ## Do Not Overclaim
26
+
27
+ - Do not state a command exists unless it appears in current CLI help or CLI
28
+ tests.
29
+ - Do not state a config field exists unless it appears in accepted contracts or
30
+ package/workflow schemas.
31
+ - Do not infer runtime behavior from prompt text, filenames, folders, display
32
+ labels, CLI aliases, or runner prose.
33
+ - Do not treat examples as generic proof, planes as mandatory, LAD names as
34
+ kernel vocabulary, or skill prose as runtime authority.
35
+
36
+ ## Required Two-Layer Pattern
37
+
38
+ Use two assets by default for every non-trivial stage:
39
+
40
+ 1. Entrypoint prompt:
41
+ - role and scope;
42
+ - stage ownership: shaping, implementation, review/check,
43
+ reconciliation, wait packaging, operator-decision packaging, or another
44
+ selected workflow-defined role;
45
+ - dispatch input reading;
46
+ - payload-as-data rule for non-implementation stages;
47
+ - readable assets and writable artifacts;
48
+ - execution process;
49
+ - required evidence;
50
+ - terminal marker protocol;
51
+ - stop conditions.
52
+ 2. Core stage skill:
53
+ - exact selected artifact schemas copied from workflow/package authority;
54
+ - handoff formats that use only selected schema fields or runner evidence
55
+ channels;
56
+ - valid and invalid examples;
57
+ - validation checklist;
58
+ - completion criteria.
59
+
60
+ A prompt-only exception is allowed only for a deliberately trivial stage whose
61
+ artifact and handoff contract are fully declared elsewhere. Do not copy old
62
+ prompt structure just because an earlier workflow used it. Keep the stage
63
+ behavior, then re-author the asset split around structured handoff.
64
+
65
+ ## Entrypoint Prompt Contents
66
+
67
+ Every entrypoint prompt must include these headings:
68
+
69
+ ```text
70
+ Role:
71
+ Scope:
72
+ Inputs from dispatch:
73
+ Readable assets:
74
+ Writable artifacts:
75
+ Required evidence:
76
+ Legal terminal markers rendered by runtime:
77
+ Forbidden claims:
78
+ How to return evidence:
79
+ When to stop:
80
+ ```
81
+
82
+ Read `references/entrypoint-prompt-pattern.md` for the template.
83
+
84
+ ## Core Skill Contents
85
+
86
+ Every core stage skill must include:
87
+
88
+ - exact selected artifact schema, including required and optional fields, or
89
+ explicit no-artifact/null behavior when the selected terminal action has no
90
+ artifact schema;
91
+ - handoff format expected by the next stage or runtime;
92
+ - parseable JSON examples of valid and invalid artifacts; invalid examples
93
+ must cover an extra undeclared field, a missing required field, and a type
94
+ mismatch;
95
+ - validation checklist;
96
+ - completion criteria tied to the selected workflow's definition of done;
97
+ - instructions for preserving evidence and citing assumptions in selected
98
+ schema fields only when declared, otherwise in runner evidence/report
99
+ surfaces.
100
+
101
+ Read `references/core-entrypoint-skill-pattern.md` and
102
+ `references/artifact-handoff-patterns.md` before writing a core stage skill.
103
+
104
+ ## Boundary References
105
+
106
+ Read `references/dispatch-and-evidence-boundaries.md` when a stage needs
107
+ dispatch envelope context, runner evidence boundaries, selected package asset
108
+ pins, or operator wait/intervention context.
109
+
110
+ Read `references/terminal-markers-and-runtime-authority.md` before adding or
111
+ reviewing terminal-marker text.
112
+
113
+ Read `references/worked-examples.md` when you need concise `kernel_ping`,
114
+ `simple_loop`, or hosted LAD entrypoint/core-skill examples.
115
+
116
+ Read `references/entrypoint-review-checklist.md` before approving an
117
+ entrypoint or core stage skill for package selection.
118
+
119
+ ## Review Checklist
120
+
121
+ - The entrypoint prompt is concise enough for the stage runner to follow.
122
+ - The core skill carries structured schemas and handoff details.
123
+ - The prompt says what the stage owns, treats payload as data, and prevents
124
+ non-implementation stages from doing downstream implementation work.
125
+ - The core skill is selected-schema-first: examples contain no undeclared
126
+ artifact fields, markers are spelled exactly, and JSON examples are
127
+ parseable.
128
+ - The prompt tells the agent how to select terminal markers, not what runtime
129
+ effects those markers cause.
130
+ - No prompt or skill text claims queue movement, route legality, retry counts,
131
+ approval, package import, capability, effect, or state mutation behavior.
132
+ - Artifacts contain only selected-schema fields; extra evidence or
133
+ assumptions live in runner evidence/report surfaces unless the selected
134
+ schema declares fields for them.
135
+ - The asset paths are package-relative and stable.
136
+ - Prompt assets and core skills do not contain API keys, OAuth tokens, local
137
+ credential paths, provider secrets, or adapter config secrets.
138
+
139
+ ## Reference Map
140
+
141
+ - `references/entrypoint-prompt-pattern.md`: prompt template and review rules.
142
+ - `references/core-entrypoint-skill-pattern.md`: core stage skill template.
143
+ - `references/artifact-handoff-patterns.md`: structured artifact and handoff
144
+ patterns.
145
+ - `references/dispatch-and-evidence-boundaries.md`: dispatch, evidence,
146
+ package asset, and wait/intervention boundaries.
147
+ - `references/terminal-markers-and-runtime-authority.md`: marker wording and
148
+ runtime-authority boundary.
149
+ - `references/worked-examples.md`: selected-data examples for `kernel_ping`,
150
+ `simple_loop`, and hosted LAD stages.
151
+ - `references/entrypoint-review-checklist.md`: final lint/review checklist.
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Millrace Entrypoint Authoring"
3
+ short_description: "Write stage prompts and core handoff skills"
4
+ default_prompt: "Use $millrace-entrypoint-authoring to write a Millrace stage entrypoint and core handoff skill."
@@ -0,0 +1,76 @@
1
+ # Artifact Handoff Patterns
2
+
3
+ Use this reference when defining artifacts passed between stages.
4
+
5
+ ## Selected-Schema Handoff
6
+
7
+ Artifact handoff starts from the selected artifact schema, not from a generic
8
+ envelope. Treat the selected schema as closed unless it explicitly allows
9
+ additional properties.
10
+
11
+ Use only fields declared by the selected schema. Generic fields for identity,
12
+ status, evidence, assumptions, or downstream context are valid artifact fields
13
+ only when the selected schema declares them. If the selected schema does not
14
+ declare them, preserve that information in the runner evidence/report channel
15
+ or in another selected schema field that actually exists.
16
+
17
+ Avoid prose-only handoffs when a downstream stage must verify completion, but
18
+ do not invent artifact fields to make the handoff feel complete.
19
+
20
+ ```json
21
+ {
22
+ "<selected_field>": "<value>",
23
+ "<selected_field>": true
24
+ }
25
+ ```
26
+
27
+ ## Completion Definition Pattern
28
+
29
+ This is authoring guidance. Put it in package docs or runner evidence unless
30
+ the selected artifact schema declares fields for it.
31
+
32
+ ```json
33
+ {
34
+ "done_when": [
35
+ "<observable requirement>",
36
+ "<test or validation evidence>",
37
+ "<selected artifact field that proves it>"
38
+ ],
39
+ "not_done_when": [
40
+ "<known gap>",
41
+ "<missing evidence>",
42
+ "<unsafe assumption>"
43
+ ]
44
+ }
45
+ ```
46
+
47
+ ## Gap Or Review Packet Pattern
48
+
49
+ Use this only when the selected schema declares these fields or equivalent
50
+ fields.
51
+
52
+ ```json
53
+ {
54
+ "gap_id": "<id>",
55
+ "required_change": "<change>",
56
+ "blocking_reason": "<reason>",
57
+ "requested_next_action": "<action>"
58
+ }
59
+ ```
60
+
61
+ ## Incident Pattern
62
+
63
+ Use this only when the selected schema declares these fields or equivalent
64
+ fields.
65
+
66
+ ```json
67
+ {
68
+ "incident_id": "<id>",
69
+ "failure_mode": "<mode>",
70
+ "operator_relevance": "<why it matters>",
71
+ "recommended_terminal_marker": "<marker copied exactly>"
72
+ }
73
+ ```
74
+
75
+ The artifact may recommend a marker for the agent to return, but runtime
76
+ behavior still depends on selected workflow data.
@@ -0,0 +1,159 @@
1
+ # Core Entrypoint Skill Pattern
2
+
3
+ Use this reference when writing the core stage skill paired with an entrypoint
4
+ prompt.
5
+
6
+ ## Purpose
7
+
8
+ The core stage skill carries the structured handoff contract. It should be
9
+ precise enough that a stage agent can produce a valid artifact and the next
10
+ stage can verify it without guessing.
11
+
12
+ ## Template
13
+
14
+ ````markdown
15
+ ---
16
+ name: <workflow-stage-core-skill>
17
+ description: Use when executing the <stage> stage for <workflow>.
18
+ ---
19
+
20
+ # <Stage> Core Skill
21
+
22
+ ## Artifact Schema
23
+
24
+ Selected schema first:
25
+
26
+ - Copy the artifact schema from selected workflow/package authority.
27
+ - Treat the selected schema as closed unless it explicitly allows additional
28
+ properties.
29
+ - Do not add generic handoff fields. Fields such as IDs, status, evidence, or
30
+ assumptions are artifact fields only when the selected schema declares them.
31
+ - If the selected terminal action has no artifact schema, state that this
32
+ stage returns the exact selected marker with no artifact or `null` artifact,
33
+ using the runner-required shape.
34
+
35
+ Accepted artifact fields for this selected stage:
36
+
37
+ | Field | Required | Type | Meaning |
38
+ | --- | --- | --- | --- |
39
+ | `<selected_field>` | yes/no | `<json type>` | `<meaning from schema>`. |
40
+ | `<selected_field>` | yes/no | `<json type>` | `<meaning from schema>`. |
41
+
42
+ Additional artifact fields: none, unless the selected schema says otherwise.
43
+ Evidence and assumptions that do not fit selected fields belong in the runner
44
+ evidence/report channel.
45
+
46
+ ## Handoff Format
47
+
48
+ Return:
49
+
50
+ 1. The exact selected terminal marker spelling from dispatch/selected workflow
51
+ data.
52
+ 2. A JSON artifact object matching the selected schema exactly, or no
53
+ artifact/`null` when the selected terminal action has no artifact schema.
54
+ 3. Runner evidence/report text for checks, assumptions, or gaps that are not
55
+ selected artifact fields.
56
+
57
+ ```json
58
+ {
59
+ "terminal_marker": "<MARKER_COPIED_EXACTLY>",
60
+ "artifact": {
61
+ "<selected_field>": "<value>"
62
+ }
63
+ }
64
+ ```
65
+
66
+ ## Valid Example
67
+
68
+ Replace this with an example that uses only selected fields. For example, if
69
+ the selected schema declares exactly `summary` as a string and `complete` as a
70
+ boolean:
71
+
72
+ ```json
73
+ {
74
+ "terminal_marker": "WORK_COMPLETE",
75
+ "artifact": {
76
+ "summary": "Requested file exists with the required content.",
77
+ "complete": true
78
+ }
79
+ }
80
+ ```
81
+
82
+ ## Invalid Examples
83
+
84
+ These examples assume the same selected schema as above.
85
+
86
+ Extra undeclared field:
87
+
88
+ ```json
89
+ {
90
+ "terminal_marker": "WORK_COMPLETE",
91
+ "artifact": {
92
+ "summary": "Requested file exists with the required content.",
93
+ "complete": true,
94
+ "evidence": ["checked file content"]
95
+ }
96
+ }
97
+ ```
98
+
99
+ Invalid because `evidence` is not declared by the selected artifact schema.
100
+
101
+ Missing required field:
102
+
103
+ ```json
104
+ {
105
+ "terminal_marker": "WORK_COMPLETE",
106
+ "artifact": {
107
+ "summary": "Requested file exists with the required content."
108
+ }
109
+ }
110
+ ```
111
+
112
+ Invalid because `complete` is required by the selected artifact schema.
113
+
114
+ Type mismatch:
115
+
116
+ ```json
117
+ {
118
+ "terminal_marker": "WORK_COMPLETE",
119
+ "artifact": {
120
+ "summary": "Requested file exists with the required content.",
121
+ "complete": "true"
122
+ }
123
+ }
124
+ ```
125
+
126
+ Invalid because `complete` must be a boolean, not a string.
127
+
128
+ ## Validation Checklist
129
+
130
+ - JSON examples parse successfully.
131
+ - Marker spelling exactly matches one selected legal marker for this stage.
132
+ - Required selected fields are present.
133
+ - No artifact field is present unless the selected schema declares it.
134
+ - Every artifact value has the selected JSON type.
135
+ - Evidence supports the conclusion and lives in selected fields only when
136
+ declared; otherwise it stays in the runner evidence/report channel.
137
+ - Completion criteria are satisfied.
138
+ - Assumptions are explicit in runner evidence/report text unless the selected
139
+ schema declares an assumptions field.
140
+ - No artifact text claims route, queue, approval, capability, effect, package,
141
+ or durable-state behavior by itself.
142
+ - No artifact or skill text includes API keys, OAuth tokens, local credential
143
+ paths, provider secrets, or adapter config secrets.
144
+
145
+ ## Completion Criteria
146
+
147
+ The stage is complete only when <observable condition tied to selected
148
+ workflow definition of done>.
149
+ ````
150
+
151
+ ## Review Rules
152
+
153
+ - Keep schemas stable and explicit.
154
+ - Include at least one parseable valid JSON example and invalid parseable JSON
155
+ examples for extra field, missing field, and type mismatch cases.
156
+ - Keep runtime authority out of the skill. The skill defines artifact shape and
157
+ stage work quality, not route legality or state mutation.
158
+ - Keep secrets out of the skill. Adapter config is local operator config, not
159
+ package authority.
@@ -0,0 +1,86 @@
1
+ # Dispatch And Evidence Boundaries
2
+
3
+ Use this reference when a stage prompt or core skill needs dispatch context,
4
+ runner evidence, package asset pins, or wait/intervention context.
5
+
6
+ ## Dispatch Envelope Context
7
+
8
+ Treat dispatch as selected runtime evidence. It may include:
9
+
10
+ ```text
11
+ workflow and plan identity
12
+ stage and activation identity
13
+ source work item and lineage context
14
+ input payload projection
15
+ legal terminal markers
16
+ artifact schema refs
17
+ entrypoint prompt ref
18
+ core stage skill refs
19
+ selected package/asset pin data
20
+ runner binding and capability/effect refs as data
21
+ ```
22
+
23
+ Read from dispatch. Do not invent missing context from filenames, display
24
+ labels, or examples.
25
+
26
+ ## Runner Evidence Envelope
27
+
28
+ The runner/agent returns evidence. Evidence may include:
29
+
30
+ ```text
31
+ terminal_marker:
32
+ artifact_refs:
33
+ artifact_bodies_or_summaries:
34
+ observed_inputs:
35
+ assumptions:
36
+ blocked_reason:
37
+ diagnostics:
38
+ ```
39
+
40
+ The runner reports what happened. It does not decide legal workflow aftermath.
41
+
42
+ ## Artifact Schema Authority
43
+
44
+ Artifact schemas come from selected workflow/package data or paired core stage
45
+ skills referenced by that selected data. A prompt can tell the agent to follow
46
+ the schema; it cannot create a new required field without schema support.
47
+
48
+ Treat selected artifact schemas as closed unless the selected schema says
49
+ otherwise. Do not add undeclared fields for identity, status, evidence,
50
+ assumptions, or downstream context just because a handoff example would be
51
+ convenient.
52
+
53
+ When selected artifact schema does not declare evidence or assumptions fields,
54
+ put evidence, checks, assumptions, and missing-data notes in the runner
55
+ evidence/report channel. If the selected schema does declare fields for those
56
+ facts, use exactly those fields and selected JSON types.
57
+
58
+ If a stage needs a new field, update the workflow/package schema and revalidate
59
+ before relying on it.
60
+
61
+ ## Package Asset Authority And Digest Pins
62
+
63
+ Entrypoint prompts, core stage skills, schemas, examples, and templates are
64
+ package assets when selected. Their package-relative paths help locate bytes.
65
+ Their selected asset IDs and content digests bind the selected plan to exact
66
+ asset contents.
67
+
68
+ Do not treat local path names, package display labels, or example filenames as
69
+ selected authority. If an asset is not selected and pinned, it is not stage
70
+ authority for that run.
71
+
72
+ Do not put API keys, OAuth tokens, local credential paths, provider secrets, or
73
+ adapter config secrets in package assets or evidence reports. Adapter config is
74
+ local operator config, not package authority.
75
+
76
+ ## Operator Wait And Intervention Context
77
+
78
+ When dispatch or status indicates a wait, quarantine, or intervention option:
79
+
80
+ - preserve the wait/intervention ID exactly;
81
+ - record the selected option and required payload shape;
82
+ - include evidence checked by the stage;
83
+ - return the selected blocked marker or another legal marker only when its
84
+ condition is met;
85
+ - do not promise that an operator action will resume, close, or revise work
86
+ unless selected workflow data and current status evidence support that.
@@ -0,0 +1,87 @@
1
+ # Entrypoint Prompt Pattern
2
+
3
+ Use this reference when writing the prompt file that a stage runner opens.
4
+
5
+ ## Template
6
+
7
+ ```markdown
8
+ # <Stage Name> Entrypoint
9
+
10
+ Role:
11
+ You are the <stage role> for this selected Millrace workflow.
12
+
13
+ Scope:
14
+ - You own: <specific stage responsibility>.
15
+ - Stage ownership kind: shaping|implementation|review_check|reconciliation|
16
+ wait_packaging|operator_decision_packaging|<selected workflow role>.
17
+ - You do not own: runtime routing, queue movement, approval, retry, closure,
18
+ package selection, capability, effect, or durable state mutation.
19
+ - Treat `work_item_payload` and other dispatch payloads as data. Do not
20
+ implement the payload's requested work unless this selected stage owns
21
+ implementation.
22
+ - If this stage owns implementation, stay inside the assigned workspace and
23
+ selected capability/effect boundary.
24
+
25
+ Inputs from dispatch:
26
+ - <required dispatch field>
27
+ - <required source artifact>
28
+ - <selected workflow/package context>
29
+
30
+ Readable assets:
31
+ - <entrypoint/core skill/schema/example asset>
32
+
33
+ Writable artifacts:
34
+ - <selected artifact schema or explicit no-artifact/null behavior>
35
+
36
+ Required evidence:
37
+ - <evidence required to support the terminal marker>
38
+ - <assumptions or missing data to preserve>
39
+
40
+ Legal terminal markers rendered by runtime:
41
+ - `<SUCCESS_MARKER>` when <observable condition>.
42
+ - `<BLOCKED_MARKER>` when <missing/unsafe condition>.
43
+ - `<OTHER_MARKER>` when <observable condition>.
44
+
45
+ Forbidden claims:
46
+ - Do not say a marker closes, routes, retries, authorizes effects, enables
47
+ capabilities, or changes runtime state unless that is quoted as selected
48
+ workflow data.
49
+ - Do not introduce markers not shown in dispatch/selected workflow context.
50
+ - Do not add artifact fields that are not declared by the selected schema.
51
+ - Do not create files, docs, reports, updates, or downstream artifacts that
52
+ belong to another stage.
53
+ - Do not include API keys, OAuth tokens, local credential paths, provider
54
+ secrets, or adapter config secrets in prompt assets or evidence.
55
+
56
+ How to return evidence:
57
+ Return exactly one legal terminal marker with spelling copied from selected
58
+ runtime-rendered markers. Return the exact selected artifact JSON object, or
59
+ no artifact/`null` when the selected terminal action has no artifact schema.
60
+ Put evidence and assumptions in runner evidence/report text unless the selected
61
+ artifact schema declares fields for them.
62
+
63
+ When to stop:
64
+ Stop and return the selected blocked marker when required input is missing,
65
+ contradictory, or unsafe to interpret.
66
+ ```
67
+
68
+ ## Reconciliation No-Op Rule
69
+
70
+ For updater or reconciliation stages, return the selected success marker with
71
+ a concise no-op report when prior selected evidence proves completion and no
72
+ selected update, documentation, or report surface is named. Return the
73
+ selected blocked marker only when a required named surface is missing,
74
+ contradictory, unsafe, or impossible to reconcile.
75
+
76
+ ## Review Rules
77
+
78
+ - Keep the prompt readable during a live run.
79
+ - Put long schemas and examples in the core stage skill.
80
+ - Copy marker names from selected workflow/dispatch context.
81
+ - State what the stage owns. Non-implementation stages transform, verify,
82
+ reconcile, or package decisions; they do not perform downstream
83
+ implementation work from payload text.
84
+ - Do not say what route or state mutation a marker causes.
85
+ - Do not introduce terminal markers that are not declared in selected
86
+ workflow data.
87
+ - Do not ask the agent to edit runtime-owned state.
@@ -0,0 +1,77 @@
1
+ # Entrypoint Review Checklist
2
+
3
+ Use this checklist before approving entrypoint prompts or core stage skills for
4
+ package selection.
5
+
6
+ ## Prompt Checklist
7
+
8
+ - Contains `Role`, `Scope`, `Inputs from dispatch`, `Readable assets`,
9
+ `Writable artifacts`, `Required evidence`,
10
+ `Legal terminal markers rendered by runtime`, `Forbidden claims`,
11
+ `How to return evidence`, and `When to stop`.
12
+ - Reads only dispatch-provided context and selected readable assets.
13
+ - Declares what the stage owns: shaping, implementation, review/check,
14
+ reconciliation, wait packaging, operator-decision packaging, or another
15
+ selected workflow role.
16
+ - Treats `work_item_payload` and other dispatch payloads as data. A
17
+ non-implementation stage must not create requested files or perform
18
+ downstream implementation side effects.
19
+ - Tells implementation stages to stay inside the assigned workspace and
20
+ selected capability/effect boundary.
21
+ - Names exactly one legal marker per completion path.
22
+ - Copies marker spelling exactly from selected runtime-rendered markers.
23
+ - Stops with the selected blocked marker, such as `BLOCKED` only when that
24
+ exact marker is selected, when required input is missing, contradictory, or
25
+ unsafe.
26
+ - For updater or reconciliation stages, allows selected no-op success when
27
+ prior selected evidence proves completion and no selected update/report
28
+ surface is named.
29
+ - Avoids long schemas that belong in the core stage skill.
30
+ - Does not claim runtime aftermath from marker text.
31
+
32
+ ## Core Skill Checklist
33
+
34
+ - Defines exact selected artifact schema with required and optional fields, or
35
+ explicit no-artifact/null behavior when the selected terminal action has no
36
+ artifact schema.
37
+ - Defines handoff format for the next stage or runtime evidence without
38
+ adding undeclared artifact fields.
39
+ - Includes at least one parseable valid JSON example and parseable invalid
40
+ JSON examples for extra undeclared field, missing field, and type mismatch
41
+ cases.
42
+ - Includes validation checklist and completion criteria.
43
+ - Preserves evidence and assumptions in selected schema fields only when those
44
+ fields exist; otherwise uses runner evidence/report text.
45
+ - Does not add fields unsupported by accepted workflow/package schemas.
46
+ - Checks every example against the selected schema and exact marker list.
47
+
48
+ ## Package Asset Checklist
49
+
50
+ - Asset path is package-relative and stable.
51
+ - Asset kind matches its role: `entrypoint_prompt`, `stage_skill`, `schema`,
52
+ `example`, or another accepted kind.
53
+ - Selected asset ID and content digest are declared.
54
+ - Optional examples are labeled as examples, not selected behavior.
55
+ - Prompt/core skill pair names align with the selected stage.
56
+ - Package assets do not contain API keys, OAuth tokens, local credential paths,
57
+ provider secrets, or adapter config secrets.
58
+ - JSON examples parse before they are accepted as examples.
59
+
60
+ ## Authority Lint
61
+
62
+ Flag and revise text that says a prompt, skill, example, filename, display
63
+ label, or marker by itself:
64
+
65
+ - routes work;
66
+ - moves queues;
67
+ - changes durable state;
68
+ - enables capabilities;
69
+ - authorizes effects;
70
+ - selects packages;
71
+ - closes or retries work;
72
+ - creates hidden terminal actions.
73
+ - embeds adapter config secrets or other local credentials.
74
+
75
+ The safe replacement is: "Return `<MARKER>` when <observable condition> and
76
+ include <evidence>." Let selected workflow data define the aftermath.
77
+ Adapter config is local operator config, not package authority.