@pantion/dialogs 0.2.1
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.
- package/dialogs/dialog-builder/convergence-rules.md +64 -0
- package/dialogs/dialog-builder/dialog.json +10 -0
- package/dialogs/dialog-builder/prompts/convergence-intro.md +21 -0
- package/dialogs/dialog-builder/prompts/translate-intro.md +17 -0
- package/dialogs/dialog-builder/translate.md +46 -0
- package/dialogs/image/convergence-rules.md +55 -0
- package/dialogs/image/dialog.json +12 -0
- package/dialogs/image/prompts/convergence-intro.md +25 -0
- package/dialogs/image/prompts/translate-intro.md +37 -0
- package/dialogs/image/translate.md +67 -0
- package/dialogs/software/convergence-rules.md +29 -0
- package/dialogs/software/dialog.json +12 -0
- package/dialogs/software/prompts/convergence-intro.md +22 -0
- package/dialogs/software/prompts/translate-intro.md +19 -0
- package/dialogs/software/translate.md +74 -0
- package/dialogs/software-brownfield/convergence-rules.md +109 -0
- package/dialogs/software-brownfield/dialog.json +12 -0
- package/dialogs/software-brownfield/prompts/convergence-intro.md +26 -0
- package/dialogs/software-brownfield/prompts/translate-intro.md +13 -0
- package/dialogs/software-brownfield/translate.md +56 -0
- package/dialogs/video/convergence-rules.md +96 -0
- package/dialogs/video/dialog.json +12 -0
- package/dialogs/video/prompts/convergence-intro.md +28 -0
- package/dialogs/video/prompts/translate-intro.md +41 -0
- package/dialogs/video/translate.md +81 -0
- package/dist/core/canon/index-manager.d.ts +27 -0
- package/dist/core/canon/index-manager.d.ts.map +1 -0
- package/dist/core/canon/index-manager.js +127 -0
- package/dist/core/canon/index-manager.js.map +1 -0
- package/dist/core/canon/manifest.d.ts +21 -0
- package/dist/core/canon/manifest.d.ts.map +1 -0
- package/dist/core/canon/manifest.js +56 -0
- package/dist/core/canon/manifest.js.map +1 -0
- package/dist/core/canon/validator.d.ts +12 -0
- package/dist/core/canon/validator.d.ts.map +1 -0
- package/dist/core/canon/validator.js +320 -0
- package/dist/core/canon/validator.js.map +1 -0
- package/dist/core/dialog/canon-writer.d.ts +22 -0
- package/dist/core/dialog/canon-writer.d.ts.map +1 -0
- package/dist/core/dialog/canon-writer.js +96 -0
- package/dist/core/dialog/canon-writer.js.map +1 -0
- package/dist/core/dialog/registry.d.ts +10 -0
- package/dist/core/dialog/registry.d.ts.map +1 -0
- package/dist/core/dialog/registry.js +102 -0
- package/dist/core/dialog/registry.js.map +1 -0
- package/dist/core/dialog/selector.d.ts +11 -0
- package/dist/core/dialog/selector.d.ts.map +1 -0
- package/dist/core/dialog/selector.js +32 -0
- package/dist/core/dialog/selector.js.map +1 -0
- package/dist/core/index.d.ts +20 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +30 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/protocol/convergence.d.ts +11 -0
- package/dist/core/protocol/convergence.d.ts.map +1 -0
- package/dist/core/protocol/convergence.js +30 -0
- package/dist/core/protocol/convergence.js.map +1 -0
- package/dist/core/protocol/loader.d.ts +6 -0
- package/dist/core/protocol/loader.d.ts.map +1 -0
- package/dist/core/protocol/loader.js +31 -0
- package/dist/core/protocol/loader.js.map +1 -0
- package/dist/core/protocol/stamp-parser.d.ts +46 -0
- package/dist/core/protocol/stamp-parser.d.ts.map +1 -0
- package/dist/core/protocol/stamp-parser.js +333 -0
- package/dist/core/protocol/stamp-parser.js.map +1 -0
- package/dist/core/protocol/system-prompt.d.ts +16 -0
- package/dist/core/protocol/system-prompt.d.ts.map +1 -0
- package/dist/core/protocol/system-prompt.js +68 -0
- package/dist/core/protocol/system-prompt.js.map +1 -0
- package/dist/core/session/canon-writer.d.ts +33 -0
- package/dist/core/session/canon-writer.d.ts.map +1 -0
- package/dist/core/session/canon-writer.js +152 -0
- package/dist/core/session/canon-writer.js.map +1 -0
- package/dist/core/session/manager.d.ts +10 -0
- package/dist/core/session/manager.d.ts.map +1 -0
- package/dist/core/session/manager.js +105 -0
- package/dist/core/session/manager.js.map +1 -0
- package/dist/core/skill/canon-writer.d.ts +22 -0
- package/dist/core/skill/canon-writer.d.ts.map +1 -0
- package/dist/core/skill/canon-writer.js +96 -0
- package/dist/core/skill/canon-writer.js.map +1 -0
- package/dist/core/skill/registry.d.ts +10 -0
- package/dist/core/skill/registry.d.ts.map +1 -0
- package/dist/core/skill/registry.js +102 -0
- package/dist/core/skill/registry.js.map +1 -0
- package/dist/core/skill/selector.d.ts +11 -0
- package/dist/core/skill/selector.d.ts.map +1 -0
- package/dist/core/skill/selector.js +32 -0
- package/dist/core/skill/selector.js.map +1 -0
- package/dist/core/soul/registry.d.ts +10 -0
- package/dist/core/soul/registry.d.ts.map +1 -0
- package/dist/core/soul/registry.js +73 -0
- package/dist/core/soul/registry.js.map +1 -0
- package/dist/core/types.d.ts +154 -0
- package/dist/core/types.d.ts.map +1 -0
- package/dist/core/types.js +6 -0
- package/dist/core/types.js.map +1 -0
- package/dist/core/utils/fs.d.ts +14 -0
- package/dist/core/utils/fs.d.ts.map +1 -0
- package/dist/core/utils/fs.js +44 -0
- package/dist/core/utils/fs.js.map +1 -0
- package/dist/core/utils/project-detect.d.ts +3 -0
- package/dist/core/utils/project-detect.d.ts.map +1 -0
- package/dist/core/utils/project-detect.js +38 -0
- package/dist/core/utils/project-detect.js.map +1 -0
- package/dist/feature-set.d.ts +14 -0
- package/dist/feature-set.d.ts.map +1 -0
- package/dist/feature-set.js +38 -0
- package/dist/feature-set.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +56 -0
- package/dist/index.js.map +1 -0
- package/dist/prompts/convergence-prompts.d.ts +4 -0
- package/dist/prompts/convergence-prompts.d.ts.map +1 -0
- package/dist/prompts/convergence-prompts.js +76 -0
- package/dist/prompts/convergence-prompts.js.map +1 -0
- package/dist/prompts/index.d.ts +4 -0
- package/dist/prompts/index.d.ts.map +1 -0
- package/dist/prompts/index.js +7 -0
- package/dist/prompts/index.js.map +1 -0
- package/dist/prompts/workflow-prompts.d.ts +9 -0
- package/dist/prompts/workflow-prompts.d.ts.map +1 -0
- package/dist/prompts/workflow-prompts.js +265 -0
- package/dist/prompts/workflow-prompts.js.map +1 -0
- package/dist/resources/canon-resources.d.ts +4 -0
- package/dist/resources/canon-resources.d.ts.map +1 -0
- package/dist/resources/canon-resources.js +164 -0
- package/dist/resources/canon-resources.js.map +1 -0
- package/dist/server.d.ts +9 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +47 -0
- package/dist/server.js.map +1 -0
- package/dist/tools/amend.d.ts +4 -0
- package/dist/tools/amend.d.ts.map +1 -0
- package/dist/tools/amend.js +106 -0
- package/dist/tools/amend.js.map +1 -0
- package/dist/tools/approve.d.ts +4 -0
- package/dist/tools/approve.d.ts.map +1 -0
- package/dist/tools/approve.js +60 -0
- package/dist/tools/approve.js.map +1 -0
- package/dist/tools/check-convergence.d.ts +4 -0
- package/dist/tools/check-convergence.d.ts.map +1 -0
- package/dist/tools/check-convergence.js +50 -0
- package/dist/tools/check-convergence.js.map +1 -0
- package/dist/tools/check.d.ts +4 -0
- package/dist/tools/check.d.ts.map +1 -0
- package/dist/tools/check.js +190 -0
- package/dist/tools/check.js.map +1 -0
- package/dist/tools/create-dialog.d.ts +4 -0
- package/dist/tools/create-dialog.d.ts.map +1 -0
- package/dist/tools/create-dialog.js +58 -0
- package/dist/tools/create-dialog.js.map +1 -0
- package/dist/tools/create-skill.d.ts +4 -0
- package/dist/tools/create-skill.d.ts.map +1 -0
- package/dist/tools/create-skill.js +58 -0
- package/dist/tools/create-skill.js.map +1 -0
- package/dist/tools/decompose.d.ts +4 -0
- package/dist/tools/decompose.d.ts.map +1 -0
- package/dist/tools/decompose.js +56 -0
- package/dist/tools/decompose.js.map +1 -0
- package/dist/tools/index.d.ts +4 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +49 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/list-canons.d.ts +4 -0
- package/dist/tools/list-canons.d.ts.map +1 -0
- package/dist/tools/list-canons.js +28 -0
- package/dist/tools/list-canons.js.map +1 -0
- package/dist/tools/migrate.d.ts +4 -0
- package/dist/tools/migrate.d.ts.map +1 -0
- package/dist/tools/migrate.js +38 -0
- package/dist/tools/migrate.js.map +1 -0
- package/dist/tools/onboard.d.ts +4 -0
- package/dist/tools/onboard.d.ts.map +1 -0
- package/dist/tools/onboard.js +27 -0
- package/dist/tools/onboard.js.map +1 -0
- package/dist/tools/reconverge.d.ts +4 -0
- package/dist/tools/reconverge.d.ts.map +1 -0
- package/dist/tools/reconverge.js +68 -0
- package/dist/tools/reconverge.js.map +1 -0
- package/dist/tools/redialog.d.ts +4 -0
- package/dist/tools/redialog.d.ts.map +1 -0
- package/dist/tools/redialog.js +63 -0
- package/dist/tools/redialog.js.map +1 -0
- package/dist/tools/reflect.d.ts +4 -0
- package/dist/tools/reflect.d.ts.map +1 -0
- package/dist/tools/reflect.js +86 -0
- package/dist/tools/reflect.js.map +1 -0
- package/dist/tools/reject.d.ts +4 -0
- package/dist/tools/reject.d.ts.map +1 -0
- package/dist/tools/reject.js +57 -0
- package/dist/tools/reject.js.map +1 -0
- package/dist/tools/reskill.d.ts +4 -0
- package/dist/tools/reskill.d.ts.map +1 -0
- package/dist/tools/reskill.js +63 -0
- package/dist/tools/reskill.js.map +1 -0
- package/dist/tools/resume.d.ts +4 -0
- package/dist/tools/resume.d.ts.map +1 -0
- package/dist/tools/resume.js +56 -0
- package/dist/tools/resume.js.map +1 -0
- package/dist/tools/reverse.d.ts +4 -0
- package/dist/tools/reverse.d.ts.map +1 -0
- package/dist/tools/reverse.js +32 -0
- package/dist/tools/reverse.js.map +1 -0
- package/dist/tools/save-canon.d.ts +4 -0
- package/dist/tools/save-canon.d.ts.map +1 -0
- package/dist/tools/save-canon.js +97 -0
- package/dist/tools/save-canon.js.map +1 -0
- package/dist/tools/start.d.ts +4 -0
- package/dist/tools/start.d.ts.map +1 -0
- package/dist/tools/start.js +83 -0
- package/dist/tools/start.js.map +1 -0
- package/dist/tools/translate.d.ts +4 -0
- package/dist/tools/translate.d.ts.map +1 -0
- package/dist/tools/translate.js +102 -0
- package/dist/tools/translate.js.map +1 -0
- package/dist/tools/update.d.ts +4 -0
- package/dist/tools/update.d.ts.map +1 -0
- package/dist/tools/update.js +42 -0
- package/dist/tools/update.js.map +1 -0
- package/dist/tools/validate.d.ts +4 -0
- package/dist/tools/validate.d.ts.map +1 -0
- package/dist/tools/validate.js +86 -0
- package/dist/tools/validate.js.map +1 -0
- package/dist/utils/response.d.ts +12 -0
- package/dist/utils/response.d.ts.map +1 -0
- package/dist/utils/response.js +18 -0
- package/dist/utils/response.js.map +1 -0
- package/package.json +37 -0
- package/protocol/commands/amend.md +188 -0
- package/protocol/commands/build.md +90 -0
- package/protocol/commands/check.md +255 -0
- package/protocol/commands/create-dialog.md +81 -0
- package/protocol/commands/decompose.md +230 -0
- package/protocol/commands/dialog.md +173 -0
- package/protocol/commands/help.md +121 -0
- package/protocol/commands/migrate.md +173 -0
- package/protocol/commands/onboard.md +210 -0
- package/protocol/commands/quick.md +170 -0
- package/protocol/commands/redialog.md +73 -0
- package/protocol/commands/reflect.md +136 -0
- package/protocol/commands/resume.md +148 -0
- package/protocol/commands/reverse.md +312 -0
- package/protocol/commands/start.md +220 -0
- package/protocol/commands/translate.md +157 -0
- package/protocol/commands/update.md +205 -0
- package/protocol/core-advanced.md +188 -0
- package/protocol/core.md +274 -0
- package/protocol/pantion-future-prompt.md +88 -0
- package/protocol/pantion-intent.md +78 -0
- package/protocol/templates/acceptance-tests.md +116 -0
- package/protocol/templates/behavior-map.md +135 -0
- package/protocol/templates/traceability-map.md +56 -0
- package/souls/beginner/rules.md +34 -0
- package/souls/beginner/soul.json +6 -0
- package/souls/default/rules.md +25 -0
- package/souls/default/soul.json +6 -0
- package/souls/young/rules.md +67 -0
- package/souls/young/soul.json +6 -0
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
> **Legacy**: This file is kept for backward compatibility. New sessions use "dialog" mode. See `dialog.md`.
|
|
2
|
+
|
|
3
|
+
# /pantion-quick — Quick prototyping (experiment mode)
|
|
4
|
+
|
|
5
|
+
You are now in Pantion Quick mode. This is the accelerated variant for prototyping and discovery.
|
|
6
|
+
You follow the same protocol as /pantion-start, but with these adjustments:
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Difference from /pantion-start
|
|
11
|
+
|
|
12
|
+
| Aspect | /pantion-start | /pantion-quick |
|
|
13
|
+
|--------|---------------|----------------|
|
|
14
|
+
| Questions | Resolve all ambiguity | Only ask critical questions |
|
|
15
|
+
| Assumptions | None (OPEN QUESTION) | Make conservative assumptions |
|
|
16
|
+
| Authority Budget | Cover completely | Cover basics, rest with conservative defaults |
|
|
17
|
+
| Non-goals | Document explicitly | Document basics |
|
|
18
|
+
| Build speed | After full convergence | After sufficient convergence |
|
|
19
|
+
| Marking | Everything is checked | Assumptions are marked with lightning |
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
## PHASE 1: QUICK CONVERGENCE
|
|
24
|
+
|
|
25
|
+
### Start
|
|
26
|
+
Say:
|
|
27
|
+
|
|
28
|
+
"Quick mode: I'll get moving fast. I'll only ask the crucial questions and make conservative assumptions for the rest. I'll mark those so you can adjust them later. Tell me what you want to build."
|
|
29
|
+
|
|
30
|
+
### Rules
|
|
31
|
+
1. Ask ONE question at a time — wait for the answer before asking the next
|
|
32
|
+
2. Ask at most 5-8 essential questions (don't exhaustively converge)
|
|
33
|
+
3. Focus on: what does it do, for whom, what are the hard boundaries
|
|
34
|
+
4. On ambiguity: make a conservative assumption and mark with ASSUMPTION
|
|
35
|
+
5. Authority budget: use conservative defaults where not explicitly discussed
|
|
36
|
+
6. Non-goals: base on what logically is NOT in scope
|
|
37
|
+
|
|
38
|
+
### Conservative defaults for undiscussed elements:
|
|
39
|
+
- **Data retention**: store nothing unless explicitly requested
|
|
40
|
+
- **Data access**: only what is minimally necessary
|
|
41
|
+
- **Rate limits**: no explicit limits (but note as ASSUMPTION)
|
|
42
|
+
- **Auditability**: basic logging
|
|
43
|
+
- **Failure behavior**: graceful fail with user notification
|
|
44
|
+
- **Inference policy**: conservative
|
|
45
|
+
|
|
46
|
+
### Saving the dialog (CRITICAL — the dialog IS the canon)
|
|
47
|
+
|
|
48
|
+
Same principle as /pantion-start: the verbatim dialog is always saved.
|
|
49
|
+
|
|
50
|
+
**Two files are always produced:**
|
|
51
|
+
- `canon/{naam}/dialog.md` — THE CANON: the verbatim dialog (quick status is in the stamp, not the filename)
|
|
52
|
+
- `canon/{naam}/summary.md` — DERIVED: structured summary for navigation
|
|
53
|
+
|
|
54
|
+
### Convergence Verification Table (quick variant)
|
|
55
|
+
|
|
56
|
+
Before the stamp, include the verification table (with assumptions marked):
|
|
57
|
+
|
|
58
|
+
**Convergence Verification:**
|
|
59
|
+
|
|
60
|
+
| Criterium | Status |
|
|
61
|
+
|-----------|--------|
|
|
62
|
+
| Canon status | ✅ |
|
|
63
|
+
| Intent clarity | ✅ |
|
|
64
|
+
| Observable success | ✅ |
|
|
65
|
+
| Inputs complete | ✅ |
|
|
66
|
+
| Outputs unambiguous | ✅ |
|
|
67
|
+
| Failure specified | ⚡ ASSUMPTION: graceful fail |
|
|
68
|
+
| Constraints absolute | ✅ |
|
|
69
|
+
| Non-goals documented | ⚡ ASSUMPTION: basic non-goals |
|
|
70
|
+
| Ambiguity handled | ⚡ ASSUMPTION: conservative |
|
|
71
|
+
| Authority Budget | ⚡ ASSUMPTION: conservative defaults |
|
|
72
|
+
| Inference Policy | ✅ conservative |
|
|
73
|
+
| Dialog stability | ✅ |
|
|
74
|
+
|
|
75
|
+
**Conclusion:** Sufficient for quick prototype. [N] assumptions made — see assumptions list.
|
|
76
|
+
|
|
77
|
+
### Convergence Stamp (quick variant)
|
|
78
|
+
|
|
79
|
+
The stamp is placed at the top of the dialog file:
|
|
80
|
+
|
|
81
|
+
=== DIALOGSPEC STAMP ===
|
|
82
|
+
STATUS: CONVERGED (QUICK)
|
|
83
|
+
DATE: [today]
|
|
84
|
+
MODEL: [model-id (Display Name), e.g. claude-opus-4-6 (Claude Opus 4.6)]
|
|
85
|
+
CANON TYPE: standalone
|
|
86
|
+
PARENT: none
|
|
87
|
+
OPEN QUESTIONS: none (assumptions marked)
|
|
88
|
+
INFERENCE POLICY: conservative
|
|
89
|
+
AUTHORITY BUDGET: partial (conservative defaults for undiscussed elements)
|
|
90
|
+
STABILITY ZONES: [HARD invariants]
|
|
91
|
+
FLEX ZONES: [FLEX defaults + assumptions]
|
|
92
|
+
ASSUMPTIONS: [list of all assumptions]
|
|
93
|
+
=== /DIALOGSPEC STAMP ===
|
|
94
|
+
|
|
95
|
+
Save the verbatim dialog as `canon/{naam}/dialog.md`.
|
|
96
|
+
Generate the derived summary as `canon/{naam}/summary.md`.
|
|
97
|
+
|
|
98
|
+
---
|
|
99
|
+
|
|
100
|
+
## PHASE 2: QUICK TRANSLATION
|
|
101
|
+
|
|
102
|
+
Generate the same files as /pantion-start, but:
|
|
103
|
+
- Mark all assumptions with `ASSUMPTION:` in the files
|
|
104
|
+
- Keep files shorter and more pragmatic
|
|
105
|
+
- Skip command files unless there are clear workflows
|
|
106
|
+
|
|
107
|
+
All derived files point to the dialog: `<!-- Derived from: canon/{naam}/dialog.md, [date] -->`
|
|
108
|
+
|
|
109
|
+
### Extra file:
|
|
110
|
+
|
|
111
|
+
**`canon/assumptions.md`**
|
|
112
|
+
|
|
113
|
+
List all assumptions made in quick mode with their conservative defaults. Reference to the dialog turns where the assumption was made. Each assumption can be replaced with an explicit choice via /pantion-amend.
|
|
114
|
+
|
|
115
|
+
---
|
|
116
|
+
|
|
117
|
+
## PHASE 3: QUICK BUILD
|
|
118
|
+
|
|
119
|
+
Build the system with the same rules as /pantion-start.
|
|
120
|
+
|
|
121
|
+
### Extra after building:
|
|
122
|
+
|
|
123
|
+
Say:
|
|
124
|
+
|
|
125
|
+
"Prototype is built. I made [N] assumptions.
|
|
126
|
+
Here are the most important ones:
|
|
127
|
+
|
|
128
|
+
1. [assumption 1]
|
|
129
|
+
2. [assumption 2]
|
|
130
|
+
3. [assumption 3]
|
|
131
|
+
|
|
132
|
+
Want to adjust any of these? Or would you like to run the full protocol with /pantion-start?"
|
|
133
|
+
|
|
134
|
+
---
|
|
135
|
+
|
|
136
|
+
## When to escalate
|
|
137
|
+
|
|
138
|
+
### To /pantion-start (full protocol)
|
|
139
|
+
|
|
140
|
+
If during quick mode it becomes clear that:
|
|
141
|
+
- There are safety-critical aspects that cannot be covered by assumptions
|
|
142
|
+
- The user corrects assumptions multiple times
|
|
143
|
+
- Authority Budget questions are too complex for conservative defaults
|
|
144
|
+
|
|
145
|
+
Then say:
|
|
146
|
+
"This system has aspects that cannot be covered by assumptions. I recommend switching to /pantion-start for the full protocol. The quick dialog will be carried over as a starting point."
|
|
147
|
+
|
|
148
|
+
### To /pantion-decompose (split up)
|
|
149
|
+
|
|
150
|
+
If during quick mode it becomes clear that:
|
|
151
|
+
- Multiple independent modules/interfaces are emerging
|
|
152
|
+
- The Decompose Score is 3 or higher (see /pantion-start for criteria)
|
|
153
|
+
- Different parts have fundamentally different rights/restrictions
|
|
154
|
+
|
|
155
|
+
Then say:
|
|
156
|
+
"This system is too large for a single quick canon. I recommend switching to /pantion-decompose. I'll carry the quick dialog over as input for the Architect Canon — what we already know doesn't need to be discussed again."
|
|
157
|
+
|
|
158
|
+
When switching to decompose:
|
|
159
|
+
1. Save the current quick dialog as DRAFT
|
|
160
|
+
2. Start /pantion-decompose
|
|
161
|
+
3. Use the quick dialog as starting point (don't start from scratch)
|
|
162
|
+
4. Mark in `canon/index.md` that the quick canon has been absorbed into the Architect Canon
|
|
163
|
+
|
|
164
|
+
## Canon Index
|
|
165
|
+
|
|
166
|
+
Update `canon/index.md` when completing a quick session:
|
|
167
|
+
- Status: CONVERGED (QUICK)
|
|
168
|
+
- References to both dialog file and summary file
|
|
169
|
+
- List of all assumptions
|
|
170
|
+
- Reference to `canon/assumptions.md`
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
# /pantion-redialog — Re-evaluate an existing dynamic dialog
|
|
2
|
+
|
|
3
|
+
Re-evaluate an existing dynamic dialog's canon with a better model. Identifies gaps in domain knowledge and conducts supplementary convergence.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## WHEN YOU ARRIVE HERE
|
|
8
|
+
|
|
9
|
+
- A better model is available and you want to deepen the dialog's domain knowledge
|
|
10
|
+
- The dialog has proven insufficient in practice (agents still get things wrong)
|
|
11
|
+
- New domain knowledge has emerged since the dialog was created
|
|
12
|
+
- Periodic review of an important skill
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## RULES
|
|
17
|
+
|
|
18
|
+
1. Ask ONE question at a time — wait for the answer before asking the next
|
|
19
|
+
2. The original skill dialog is append-only — never edit or delete
|
|
20
|
+
3. Focus on GAPS — things that should have been asked but weren't
|
|
21
|
+
4. The user is still the domain expert
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## STEP 1: IDENTIFY THE SKILL
|
|
26
|
+
|
|
27
|
+
Ask the user which skill to redialog. Verify:
|
|
28
|
+
- The dialog exists in dialogs/{name}/
|
|
29
|
+
- The dialog has a canon in dialogs/{name}/canon/dialog.md
|
|
30
|
+
- The canon is CONVERGED (not DRAFT)
|
|
31
|
+
|
|
32
|
+
If no canon exists: "This is a hand-crafted skill without a canon. Use `/pantion-create-dialog` to create a dynamic version."
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## STEP 2: GAP ANALYSIS
|
|
37
|
+
|
|
38
|
+
Read the dialog canon dialog. Analyze across these dialog-specific dimensions:
|
|
39
|
+
|
|
40
|
+
1. **Missing domain questions**: Are there convergence questions that should be asked but aren't in the rules?
|
|
41
|
+
2. **Incomplete anti-patterns**: Are there agent mistakes not covered?
|
|
42
|
+
3. **Vague guidance**: Are any rules too vague to be actionable?
|
|
43
|
+
4. **Output gaps**: Is the translation specification complete?
|
|
44
|
+
5. **Vocabulary gaps**: Are there domain terms not explained?
|
|
45
|
+
6. **Real-world gaps**: Based on actual use, what did the dialog fail to guide?
|
|
46
|
+
|
|
47
|
+
Present the gap analysis and let the user choose which gaps to explore.
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## STEP 3: SUPPLEMENTARY DIALOG
|
|
52
|
+
|
|
53
|
+
Conduct a targeted dialog for selected gaps. Append to the existing canon (append-only).
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
## STEP 4: UPDATE AND REGENERATE
|
|
58
|
+
|
|
59
|
+
1. Save the updated dialog canon (append-only)
|
|
60
|
+
2. Regenerate all dialog files from the updated canon
|
|
61
|
+
3. Each regenerated file gets an updated derivation comment
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## STEP 5: REPORT
|
|
66
|
+
|
|
67
|
+
"Redialog complete for '{name}'.
|
|
68
|
+
|
|
69
|
+
**Gaps explored:** [list]
|
|
70
|
+
**Dialog files regenerated:** [list]
|
|
71
|
+
**New domain knowledge added:** [summary]
|
|
72
|
+
|
|
73
|
+
The dialog canon has been updated (append-only). Use this dialog in your next convergence dialog to benefit from the improved domain knowledge."
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
# /pantion-reflect — Reality Convergence (Post-Build Learning)
|
|
2
|
+
|
|
3
|
+
Capture empirical observations from a built implementation back into the canon. Reality Convergence is **observational** — it records, classifies, links, and creates open questions. It does NOT modify intent. Intent changes require a separate `pantion_amend` with HUMAN STAMP approval.
|
|
4
|
+
|
|
5
|
+
## When to Use
|
|
6
|
+
|
|
7
|
+
After building from a canon, deploying, and observing the result. The canon was correct at convergence time, but reality reveals information that was impossible to know before the build.
|
|
8
|
+
|
|
9
|
+
## Prerequisites
|
|
10
|
+
|
|
11
|
+
- Canon must be CONVERGED, AMENDED, or RECONVERGED (not DRAFT)
|
|
12
|
+
- Something must have been built from this canon
|
|
13
|
+
- The user has observations from the real implementation
|
|
14
|
+
|
|
15
|
+
## Guardrails
|
|
16
|
+
|
|
17
|
+
1. Reality Convergence may **NOT** disable HARD constraints or silently modify intent
|
|
18
|
+
2. It may **ONLY**: record observations, link to canon anchors, classify, create open questions, propose amendment candidates
|
|
19
|
+
3. Intent changes remain an explicit, human decision via `pantion_amend` + approval gate
|
|
20
|
+
4. The HUMAN STAMP is **NOT** affected — RC is observational, not authoritative
|
|
21
|
+
5. The canon lifecycle status is **NOT** changed — RC is an overlay, not a status transition
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## STEP 1: IDENTIFY THE CANON
|
|
26
|
+
|
|
27
|
+
Ask: "Which canon do you want to reflect on with reality feedback?"
|
|
28
|
+
|
|
29
|
+
Read the chosen dialog file. Verify it is not DRAFT.
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## STEP 2: BUILD CONTEXT
|
|
34
|
+
|
|
35
|
+
Ask: "What was built from this canon? When was it deployed? How long has it been running? What environment (production/staging/local)?"
|
|
36
|
+
|
|
37
|
+
This context frames the observations. A system running for 6 months produces deeper feedback than one tested for a day.
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
## STEP 3: REALITY CONVERGENCE DIALOG
|
|
42
|
+
|
|
43
|
+
Conduct a structured dialog. Ask ONE question at a time.
|
|
44
|
+
|
|
45
|
+
### 3a. Confirmed Intent
|
|
46
|
+
"What worked exactly as described in the canon?"
|
|
47
|
+
|
|
48
|
+
### 3b. Surprises
|
|
49
|
+
"What surprised you — positively or negatively?"
|
|
50
|
+
|
|
51
|
+
### 3c. Incorrect Assumptions
|
|
52
|
+
"Which assumptions from the canon turned out to be wrong in practice?"
|
|
53
|
+
|
|
54
|
+
### 3d. Observed Failure Modes
|
|
55
|
+
"What failure modes did you actually see? Were they covered by the canon?"
|
|
56
|
+
|
|
57
|
+
### 3e. Classification
|
|
58
|
+
For each observation, classify:
|
|
59
|
+
- **intent-mismatch**: the canon said X but we actually meant Y
|
|
60
|
+
- **unknown-unknown**: something we couldn't have predicted
|
|
61
|
+
- **hard-constraint-conflict**: reality violates a HARD constraint
|
|
62
|
+
- **implementation-gap**: the intent was clear but the build missed it
|
|
63
|
+
|
|
64
|
+
### 3f. Canon Anchors
|
|
65
|
+
For each observation, link to relevant canon anchors (H[n], A[n]), acceptance tests (AT-nnn), and behavior map entries.
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
## STEP 4: PRODUCE STRUCTURED BLOCK
|
|
70
|
+
|
|
71
|
+
Format the observations as a structured REALITY CONVERGENCE block:
|
|
72
|
+
|
|
73
|
+
--- REALITY CONVERGENCE [date] ---
|
|
74
|
+
BUILD REF: [path to collapse manifest or description]
|
|
75
|
+
ENV: production | staging | local
|
|
76
|
+
SCOPE: [which parts of the system were observed]
|
|
77
|
+
|
|
78
|
+
OBSERVATIONS:
|
|
79
|
+
- RC-001: [observation description]
|
|
80
|
+
RELATED: [canon anchors, acceptance tests]
|
|
81
|
+
CLASS: [intent-mismatch | unknown-unknown | hard-constraint-conflict | implementation-gap]
|
|
82
|
+
EVIDENCE: [optional — logs, metrics, user feedback, or "none"]
|
|
83
|
+
OPEN QUESTION: OQ-[nnn] (if applicable)
|
|
84
|
+
|
|
85
|
+
- RC-002: [next observation]
|
|
86
|
+
...
|
|
87
|
+
|
|
88
|
+
OUTCOME:
|
|
89
|
+
- [n] open questions created (OQ-nnn..nnn)
|
|
90
|
+
- Proposed amendment areas: [list with HARD/FLEX classification]
|
|
91
|
+
--- /REALITY CONVERGENCE ---
|
|
92
|
+
|
|
93
|
+
---
|
|
94
|
+
|
|
95
|
+
## STEP 5: REALITY STAMP (overlay)
|
|
96
|
+
|
|
97
|
+
Produce a REALITY STAMP that tracks reality-coverage as an overlay on the canon (does NOT replace the DIALOGSPEC STAMP):
|
|
98
|
+
|
|
99
|
+
=== REALITY STAMP ===
|
|
100
|
+
STATUS: VALIDATED (PARTIAL) | VALIDATED (FULL)
|
|
101
|
+
COVERS: [n] acceptance tests, [n] behaviors
|
|
102
|
+
OPEN QUESTIONS: [list or "none"]
|
|
103
|
+
LAST BUILD REF: [reference]
|
|
104
|
+
DATE: [date]
|
|
105
|
+
=== /REALITY STAMP ===
|
|
106
|
+
|
|
107
|
+
---
|
|
108
|
+
|
|
109
|
+
## STEP 6: SAVE AND REPORT
|
|
110
|
+
|
|
111
|
+
Call `pantion_reflect` with:
|
|
112
|
+
- `canon_name`: the canon name
|
|
113
|
+
- `reflection_dialog`: the complete reality convergence dialog
|
|
114
|
+
- `stamp`: the raw REALITY STAMP text
|
|
115
|
+
|
|
116
|
+
Report:
|
|
117
|
+
- Confirmed intent (what worked)
|
|
118
|
+
- Observations with classifications
|
|
119
|
+
- Open questions created
|
|
120
|
+
- Proposed amendment candidates
|
|
121
|
+
|
|
122
|
+
Offer next steps:
|
|
123
|
+
- Use `pantion_amend` to apply intent changes where needed (requires HUMAN STAMP approval)
|
|
124
|
+
- Run `pantion_check` to verify consistency
|
|
125
|
+
- Re-translate if amendments are made
|
|
126
|
+
|
|
127
|
+
---
|
|
128
|
+
|
|
129
|
+
## IMPORTANT
|
|
130
|
+
|
|
131
|
+
- **RC observes. Amend changes.** Never conflate the two.
|
|
132
|
+
- A canon can be reflected on multiple times — each build cycle may produce new observations
|
|
133
|
+
- Open questions from RC use IDs starting at OQ-201+ to distinguish from convergence OQs
|
|
134
|
+
- During future reconvergence, the model has access to both the original dialog AND the reality observations
|
|
135
|
+
- The REALITY STAMP is cumulative: each reflection updates coverage
|
|
136
|
+
- EVIDENCE is optional — low-friction capture is the priority. Teams that have logs or metrics can attach them; teams without can still capture valuable observations
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
# /pantion-resume — Continue converging on an existing DRAFT canon
|
|
2
|
+
|
|
3
|
+
You have one or more canons that are not yet fully converged.
|
|
4
|
+
You pick up where you left off.
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## WHEN YOU ARRIVE HERE
|
|
9
|
+
|
|
10
|
+
- A previous `/pantion-start` session was not completed (STATUS: DRAFT)
|
|
11
|
+
- There are OPEN QUESTIONS in `canon/index.md` that need to be answered
|
|
12
|
+
- A large decomposition spans multiple sessions
|
|
13
|
+
- After stakeholder feedback on a DRAFT canon
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## STEP 1: RESTORE CONTEXT
|
|
18
|
+
|
|
19
|
+
Read `canon/index.md` and identify:
|
|
20
|
+
|
|
21
|
+
1. Which canons exist?
|
|
22
|
+
2. Which have STATUS: DRAFT?
|
|
23
|
+
3. Which OPEN QUESTIONS are there?
|
|
24
|
+
|
|
25
|
+
Then read the **dialog file** (the canon) to restore full context. The dialog contains the complete history of all previous sessions.
|
|
26
|
+
|
|
27
|
+
Report:
|
|
28
|
+
|
|
29
|
+
"Welcome back. Here is the current state:
|
|
30
|
+
|
|
31
|
+
**Canons:**
|
|
32
|
+
- [canon name]: [STATUS] — [N] open questions
|
|
33
|
+
|
|
34
|
+
**Open Questions (most important first):**
|
|
35
|
+
1. [question 1] (from [canon name])
|
|
36
|
+
2. [question 2] (from [canon name])
|
|
37
|
+
3. [question 3] (from [canon name])
|
|
38
|
+
|
|
39
|
+
Would you like to work through the open questions, or do you want to tackle something else first?"
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## STEP 2: WORK THROUGH OPEN QUESTIONS
|
|
44
|
+
|
|
45
|
+
Take on the OPEN QUESTIONS one by one.
|
|
46
|
+
|
|
47
|
+
### Rules:
|
|
48
|
+
1. Ask ONE question at a time — wait for the answer before asking the next
|
|
49
|
+
2. Read the dialog file (canon) to restore full context
|
|
50
|
+
3. Re-pose the question, with context on why it was open
|
|
51
|
+
4. Classify the answer as HARD or FLEX
|
|
52
|
+
5. **Append the new dialog turns** to the existing dialog file (append-only — never edit previous turns)
|
|
53
|
+
6. Remove the question from the Open Questions Backlog in `canon/index.md`
|
|
54
|
+
|
|
55
|
+
### When new questions arise:
|
|
56
|
+
If answering a question raises new questions:
|
|
57
|
+
- Add them to the Open Questions Backlog
|
|
58
|
+
- Continue with the current question
|
|
59
|
+
|
|
60
|
+
### When there are dependencies:
|
|
61
|
+
If a question depends on another canon (during decomposition):
|
|
62
|
+
- Mark the dependency
|
|
63
|
+
- Skip the question and move to the next
|
|
64
|
+
- Come back when the dependent canon has been updated
|
|
65
|
+
|
|
66
|
+
---
|
|
67
|
+
|
|
68
|
+
## STEP 3: CONVERGENCE CHECK PER CANON
|
|
69
|
+
|
|
70
|
+
After working through the questions, check per canon:
|
|
71
|
+
|
|
72
|
+
- [ ] All OPEN QUESTIONS answered?
|
|
73
|
+
- [ ] Intent is unambiguous?
|
|
74
|
+
- [ ] Authority Budget is complete?
|
|
75
|
+
- [ ] Failure behavior is specified?
|
|
76
|
+
- [ ] Non-goals are documented?
|
|
77
|
+
|
|
78
|
+
### If the canon is NOW converged:
|
|
79
|
+
|
|
80
|
+
1. Update the stamp in the dialog file to CONVERGED:
|
|
81
|
+
|
|
82
|
+
=== DIALOGSPEC STAMP ===
|
|
83
|
+
STATUS: CONVERGED
|
|
84
|
+
DATE: [today]
|
|
85
|
+
MODEL: [model-id (Display Name), e.g. claude-opus-4-6 (Claude Opus 4.6)]
|
|
86
|
+
CANON TYPE: [type]
|
|
87
|
+
PREVIOUS STATUS: DRAFT (resumed from [date of earlier session])
|
|
88
|
+
SESSIONS: [number of sessions to convergence]
|
|
89
|
+
OPEN QUESTIONS: none
|
|
90
|
+
...
|
|
91
|
+
=== /DIALOGSPEC STAMP ===
|
|
92
|
+
|
|
93
|
+
2. **Regenerate** the derived summary (`canon/dialogspec-summary.md`) from the complete dialog
|
|
94
|
+
3. Update `canon/index.md` with the new status
|
|
95
|
+
|
|
96
|
+
### If questions are still open:
|
|
97
|
+
|
|
98
|
+
1. Update the progress stamp in the dialog file:
|
|
99
|
+
|
|
100
|
+
=== DIALOGSPEC PROGRESS ===
|
|
101
|
+
DATE: [today]
|
|
102
|
+
STATUS: DRAFT (session [N])
|
|
103
|
+
RESOLVED THIS SESSION: [list of answered questions]
|
|
104
|
+
REMAINING OPEN QUESTIONS: [list]
|
|
105
|
+
NEXT SESSION FOCUS: [suggestion for next session]
|
|
106
|
+
=== /DIALOGSPEC PROGRESS ===
|
|
107
|
+
|
|
108
|
+
2. **Regenerate** the derived summary from the dialog so far
|
|
109
|
+
3. Update `canon/index.md`
|
|
110
|
+
|
|
111
|
+
Say:
|
|
112
|
+
|
|
113
|
+
"There are still [N] questions open. The most important ones for the next session:
|
|
114
|
+
|
|
115
|
+
1. [question]
|
|
116
|
+
2. [question]
|
|
117
|
+
|
|
118
|
+
Progress has been saved. You can continue later with `/pantion-resume`."
|
|
119
|
+
|
|
120
|
+
---
|
|
121
|
+
|
|
122
|
+
## STEP 4: FLOW TO NEXT PHASE
|
|
123
|
+
|
|
124
|
+
If ALL canons are CONVERGED:
|
|
125
|
+
|
|
126
|
+
### For standalone:
|
|
127
|
+
"All questions have been answered and the canon has converged. Would you like to generate the project files and build? (That's the same as `/pantion-translate` followed by the build phase.)"
|
|
128
|
+
|
|
129
|
+
### For decomposition:
|
|
130
|
+
"All canons have converged:
|
|
131
|
+
- Architect Canon: completed
|
|
132
|
+
- Interface Canons: completed ([N] interfaces)
|
|
133
|
+
- Component Canons: completed ([N] components)
|
|
134
|
+
|
|
135
|
+
Would you like to run the consistency check? (`/pantion-check`)"
|
|
136
|
+
|
|
137
|
+
---
|
|
138
|
+
|
|
139
|
+
## STEP 5: UPDATE CANON INDEX
|
|
140
|
+
|
|
141
|
+
ALWAYS update `canon/index.md` at the end of a resume session:
|
|
142
|
+
|
|
143
|
+
- Update status per canon
|
|
144
|
+
- Remove resolved questions from backlog
|
|
145
|
+
- Add new questions to backlog
|
|
146
|
+
- Update "Last modified"
|
|
147
|
+
- Log any amendments
|
|
148
|
+
- Ensure references to both dialog file and summary file are present
|