@@ -34,84 +34,59 @@ schema_url_required = true
3434required = true
3535description = " Non-normative contextual information about the manifest and framework."
3636allowed_fields = [
37- " framework" ,
38- " framework_url" ,
39- " framework_note" ,
40- " description" ,
41- " purpose"
37+ " framework" ,
38+ " framework_url" ,
39+ " framework_note" ,
40+ " description" ,
41+ " purpose" ,
4242]
4343
4444[section .repo ]
4545required = true
4646description = " Stable repository identity and declared class."
47- allowed_fields = [
48- " name" ,
49- " org" ,
50- " class" ,
51- " kind" ,
52- " status" ,
53- " since" ,
54- " summary"
55- ]
47+ allowed_fields = [" name" , " org" , " class" , " kind" , " status" , " since" , " summary" ]
5648
5749[section .layer ]
5850required = true
5951description = " Declared epistemic position."
60- allowed_fields = [
61- " space" ,
62- " role"
63- ]
52+ allowed_fields = [" space" , " role" ]
6453
6554[section .depends ]
6655required = true
6756description = " Declared upstream dependencies."
68- allowed_fields = [
69- " required" ,
70- " optional"
71- ]
57+ allowed_fields = [" required" , " optional" ]
7258
7359[section .provides ]
7460required = true
7561description = " Artifacts intentionally provided and maintained."
76- allowed_fields = [
77- " artifacts"
78- ]
62+ allowed_fields = [" artifacts" ]
7963
8064[section .scope ]
8165required = true
8266description = " Explicit semantic boundary."
83- allowed_fields = [
84- " includes" ,
85- " excludes"
86- ]
67+ allowed_fields = [" includes" , " excludes" ]
8768
8869[section .compatibility ]
8970required = false
9071description = " Declared compatibility with constitutional and ecosystem components."
9172allowed_fields = [
92- " constitution" ,
93- " kernel" ,
94- " mapspec" ,
95- " schema" ,
96- " profile" ,
97- " rules"
73+ " constitution" ,
74+ " kernel" ,
75+ " mapspec" ,
76+ " schema" ,
77+ " profile" ,
78+ " rules" ,
9879]
9980
10081[section .citation ]
10182required = true
10283description = " Citation pointer metadata."
103- allowed_fields = [
104- " cff" ,
105- " preferred" ,
106- " bib_hint"
107- ]
84+ allowed_fields = [" cff" , " preferred" , " bib_hint" ]
10885
10986[section .traceability ]
11087required = true
11188description = " Identifier resolution and traceability strategy."
112- allowed_fields = [
113- " identifier_map"
114- ]
89+ allowed_fields = [" identifier_map" ]
11590
11691# ------------------------------------------------------------
11792# Field definitions
@@ -226,6 +201,18 @@ required = true
226201# Class-specific requirements
227202# ------------------------------------------------------------
228203
204+ [class .formal_contract ]
205+ required_repo_name_patterns = [" se-formal-contract" ]
206+ required_layer_roles = [" formal-contract" ]
207+ forbidden_sections = []
208+ required_compatibility_fields = []
209+
210+ [class .theory ]
211+ required_repo_name_patterns = [" se-theory-{focus}" ]
212+ required_layer_roles = [" theory" ]
213+ forbidden_sections = []
214+ required_compatibility_fields = []
215+
229216[class .constitution ]
230217required_repo_name_patterns = [" se-constitution" ]
231218required_layer_roles = [" constitution" ]
@@ -275,7 +262,10 @@ forbidden_sections = []
275262required_compatibility_fields = [" constitution" , " kernel" ]
276263
277264[class .profile ]
278- required_repo_name_patterns = [" se-profile-{jurisdiction}" , " se-profile-{jurisdiction}-{focus}" ]
265+ required_repo_name_patterns = [
266+ " se-profile-{jurisdiction}" ,
267+ " se-profile-{jurisdiction}-{focus}" ,
268+ ]
279269required_layer_roles = [" profile" ]
280270forbidden_sections = []
281271required_compatibility_fields = [" constitution" , " kernel" , " schema" ]
@@ -286,10 +276,19 @@ optional_sections = ["validation", "naming", "governance", "traceability"]
286276
287277[class .govsrc ]
288278required_sections = [" meta" , " repo" , " provides" , " scope" , " citation" ]
289- optional_sections = [" depends" , " validation" , " naming" , " governance" , " traceability" ]
279+ optional_sections = [
280+ " depends" ,
281+ " validation" ,
282+ " naming" ,
283+ " governance" ,
284+ " traceability" ,
285+ ]
290286
291287[class .rules ]
292- required_repo_name_patterns = [" se-rules-{jurisdiction}" , " se-rules-{jurisdiction}-{focus}" ]
288+ required_repo_name_patterns = [
289+ " se-rules-{jurisdiction}" ,
290+ " se-rules-{jurisdiction}-{focus}" ,
291+ ]
293292required_layer_roles = [" rules" ]
294293forbidden_sections = []
295294required_compatibility_fields = [" constitution" , " kernel" , " schema" ]
@@ -330,10 +329,10 @@ empty_required_lists_allowed = true
330329[notes ]
331330manifest_role = " Declares repository intent, scope, role, and compatibility under constitutional law."
332331non_goals = [
333- " build configuration" ,
334- " deployment configuration" ,
335- " runtime secrets" ,
336- " replace README documentation" ,
337- " replace CITATION.cff" ,
338- " duplicate constitutional law tables"
332+ " build configuration" ,
333+ " deployment configuration" ,
334+ " runtime secrets" ,
335+ " replace README documentation" ,
336+ " replace CITATION.cff" ,
337+ " duplicate constitutional law tables" ,
339338]
0 commit comments