This repository has no description
6.4 kB
193 lines
1{
2 "lexicon": 1,
3 "id": "org.latha.strata",
4 "description": "A structured synthesis of an external source, cross-referenced with local knowledge (carry + vault). The stigmergic signal — a pheromone trail others can discover and build on.",
5 "defs": {
6 "main": {
7 "type": "record",
8 "description": "A Strata synthesis record. Produced when a user runs Strata analysis on a Semble card (or any AT Protocol record). Cross-references the source with the user's vault and carry data, producing themes, connections, tensions, and a prose synthesis.",
9 "key": "tid",
10 "record": {
11 "type": "object",
12 "required": ["source", "analysis", "createdAt"],
13 "properties": {
14 "source": {
15 "type": "ref",
16 "ref": "#sourceRef",
17 "description": "The source record that triggered this analysis."
18 },
19 "analysis": {
20 "type": "ref",
21 "ref": "#structuredAnalysis",
22 "description": "The structured analysis output."
23 },
24 "carryRefs": {
25 "type": "array",
26 "maxLength": 20,
27 "items": {
28 "type": "ref",
29 "ref": "#carryCrossRef"
30 },
31 "description": "Carry entities cross-referenced in this analysis. Carry stays local-first — only summaries are included unless explicitly published as companion records."
32 },
33 "createdAt": {
34 "type": "string",
35 "format": "datetime",
36 "description": "When this synthesis was created."
37 },
38 "updatedAt": {
39 "type": "string",
40 "format": "datetime",
41 "description": "When this synthesis was last updated."
42 }
43 }
44 }
45 },
46 "sourceRef": {
47 "type": "object",
48 "description": "Reference to the source record that triggered the analysis.",
49 "required": ["uri"],
50 "properties": {
51 "uri": {
52 "type": "string",
53 "format": "at-uri",
54 "description": "AT URI of the source record (Semble card, Bluesky post, etc.)"
55 },
56 "cid": {
57 "type": "string",
58 "description": "CID of the source record at time of analysis."
59 },
60 "collection": {
61 "type": "string",
62 "description": "NSID of the source collection (e.g. network.cosmik.card)."
63 }
64 }
65 },
66 "structuredAnalysis": {
67 "type": "object",
68 "description": "The structured output of a Strata analysis run.",
69 "required": ["themes"],
70 "properties": {
71 "themes": {
72 "type": "array",
73 "maxLength": 20,
74 "items": {
75 "type": "string",
76 "maxGraphemes": 100
77 },
78 "description": "Key themes identified in the source."
79 },
80 "connections": {
81 "type": "array",
82 "maxLength": 20,
83 "items": {
84 "type": "ref",
85 "ref": "#connection"
86 },
87 "description": "Connections to existing knowledge in vault and carry."
88 },
89 "tensions": {
90 "type": "array",
91 "maxLength": 10,
92 "items": {
93 "type": "string",
94 "maxGraphemes": 500
95 },
96 "description": "Tensions or contradictions with existing claims."
97 },
98 "openQuestions": {
99 "type": "array",
100 "maxLength": 10,
101 "items": {
102 "type": "string",
103 "maxGraphemes": 500
104 },
105 "description": "Questions raised by the analysis."
106 },
107 "synthesis": {
108 "type": "string",
109 "maxGraphemes": 2000,
110 "maxLength": 20000,
111 "description": "Prose synthesis connecting the source to existing knowledge."
112 }
113 }
114 },
115 "connection": {
116 "type": "object",
117 "description": "A connection between the source and an existing knowledge item.",
118 "required": ["description", "targetUri"],
119 "properties": {
120 "description": {
121 "type": "string",
122 "maxGraphemes": 500,
123 "description": "Human-readable description of the connection."
124 },
125 "targetUri": {
126 "type": "string",
127 "format": "at-uri",
128 "description": "AT URI of the connected record."
129 },
130 "relation": {
131 "type": "string",
132 "knownValues": [
133 "org.latha.strata#supports",
134 "org.latha.strata#contradicts",
135 "org.latha.strata#extends",
136 "org.latha.strata#contextualizes",
137 "org.latha.strata#exemplifies"
138 ],
139 "description": "Type of connection."
140 }
141 }
142 },
143 "carryCrossRef": {
144 "type": "object",
145 "description": "Cross-reference to a carry entity, translated to AT Protocol addressable format.",
146 "required": ["entityType", "atUri"],
147 "properties": {
148 "entityType": {
149 "type": "string",
150 "knownValues": [
151 "org.latha.strata.defs#claimRef",
152 "org.latha.strata.defs#sourceRef"
153 ],
154 "description": "Type of carry entity."
155 },
156 "carryId": {
157 "type": "string",
158 "description": "Original carry entity ID for local correlation."
159 },
160 "atUri": {
161 "type": "string",
162 "format": "at-uri",
163 "description": "AT Protocol URI for this carry entity (if published as companion record)."
164 },
165 "summary": {
166 "type": "string",
167 "maxGraphemes": 500,
168 "description": "Summary of the carry entity."
169 }
170 }
171 },
172 "supports": {
173 "type": "token",
174 "description": "Connection relation: the source supports an existing claim."
175 },
176 "contradicts": {
177 "type": "token",
178 "description": "Connection relation: the source contradicts an existing claim."
179 },
180 "extends": {
181 "type": "token",
182 "description": "Connection relation: the source extends an existing claim."
183 },
184 "contextualizes": {
185 "type": "token",
186 "description": "Connection relation: the source provides context for an existing claim."
187 },
188 "exemplifies": {
189 "type": "token",
190 "description": "Connection relation: the source is an example of an existing claim."
191 }
192 }
193}