snapshot of https://github.com/ory/keto.git (master, 2026-09-16; blobs > 131072B omitted)
Some checks failed
CI / Run lints and checks (push) Failing after 47s
CI / Run tests (push) Failing after 1s
CI / Run race tests (push) Failing after 5s
CI / Build CLI docs (push) Has been skipped
CI / Run buf actions (push) Failing after 5s
CodeQL / Analyze (go) (push) Failing after 3s
CodeQL / Analyze (javascript) (push) Failing after 2s
Docker Image Scanners / scanners (push) Failing after 3s
Format / format (push) Failing after 3s
Synchronize Issue Labels / Synchronize Issue Labels (push) Has been skipped
CI / Generate release (push) Has been skipped
CI / Draft newsletter (push) Has been skipped
CI / Pending approval Slack notification (push) Has been skipped
CI / Send newsletter (push) Has been skipped
Some checks failed
CI / Run lints and checks (push) Failing after 47s
CI / Run tests (push) Failing after 1s
CI / Run race tests (push) Failing after 5s
CI / Build CLI docs (push) Has been skipped
CI / Run buf actions (push) Failing after 5s
CodeQL / Analyze (go) (push) Failing after 3s
CodeQL / Analyze (javascript) (push) Failing after 2s
Docker Image Scanners / scanners (push) Failing after 3s
Format / format (push) Failing after 3s
Synchronize Issue Labels / Synchronize Issue Labels (push) Has been skipped
CI / Generate release (push) Has been skipped
CI / Draft newsletter (push) Has been skipped
CI / Pending approval Slack notification (push) Has been skipped
CI / Send newsletter (push) Has been skipped
This commit is contained in:
13
schema/.snapshots/TestLexer-suite=snapshots-comments.json
Normal file
13
schema/.snapshots/TestLexer-suite=snapshots-comments.json
Normal file
@@ -0,0 +1,13 @@
|
||||
[
|
||||
"/**/",
|
||||
"/** doc comment\n * content\n * more content\n */",
|
||||
"class",
|
||||
"'name'",
|
||||
"implements",
|
||||
"'Namespace'",
|
||||
"{",
|
||||
"// Block comment",
|
||||
"/*\n\täny ünicöde characterß???\n\t*/",
|
||||
"}",
|
||||
"EOF"
|
||||
]
|
||||
3
schema/.snapshots/TestLexer-suite=snapshots-empty.json
Normal file
3
schema/.snapshots/TestLexer-suite=snapshots-empty.json
Normal file
@@ -0,0 +1,3 @@
|
||||
[
|
||||
"EOF"
|
||||
]
|
||||
142
schema/.snapshots/TestLexer-suite=snapshots-full_class.json
Normal file
142
schema/.snapshots/TestLexer-suite=snapshots-full_class.json
Normal file
@@ -0,0 +1,142 @@
|
||||
[
|
||||
"class",
|
||||
"'File'",
|
||||
"implements",
|
||||
"'Namespace'",
|
||||
"{",
|
||||
"'related'",
|
||||
":",
|
||||
"{",
|
||||
"'parents'",
|
||||
":",
|
||||
"'File'",
|
||||
"[",
|
||||
"]",
|
||||
"'viewers'",
|
||||
":",
|
||||
"'User'",
|
||||
"[",
|
||||
"]",
|
||||
"'owners'",
|
||||
":",
|
||||
"'User'",
|
||||
"[",
|
||||
"]",
|
||||
"'siblings'",
|
||||
":",
|
||||
"'File'",
|
||||
"[",
|
||||
"]",
|
||||
"}",
|
||||
"'permits'",
|
||||
"=",
|
||||
"{",
|
||||
"'view'",
|
||||
":",
|
||||
"(",
|
||||
"ctx",
|
||||
":",
|
||||
"'Context'",
|
||||
")",
|
||||
":",
|
||||
"'boolean'",
|
||||
"=\u003e",
|
||||
"this",
|
||||
".",
|
||||
"'related'",
|
||||
".",
|
||||
"'parents'",
|
||||
".",
|
||||
"'some'",
|
||||
"(",
|
||||
"'p'",
|
||||
"=\u003e",
|
||||
"'p'",
|
||||
".",
|
||||
"'permits'",
|
||||
".",
|
||||
"'view'",
|
||||
"(",
|
||||
"ctx",
|
||||
")",
|
||||
")",
|
||||
"||",
|
||||
"this",
|
||||
".",
|
||||
"'related'",
|
||||
".",
|
||||
"'viewers'",
|
||||
".",
|
||||
"'includes'",
|
||||
"(",
|
||||
"ctx",
|
||||
".",
|
||||
"'subject'",
|
||||
")",
|
||||
"||",
|
||||
"!",
|
||||
"this",
|
||||
".",
|
||||
"'related'",
|
||||
".",
|
||||
"'owners'",
|
||||
".",
|
||||
"'includes'",
|
||||
"(",
|
||||
"ctx",
|
||||
".",
|
||||
"'subject'",
|
||||
")",
|
||||
",",
|
||||
"'edit'",
|
||||
":",
|
||||
"(",
|
||||
"ctx",
|
||||
":",
|
||||
"'Context'",
|
||||
")",
|
||||
"=\u003e",
|
||||
"this",
|
||||
".",
|
||||
"'related'",
|
||||
".",
|
||||
"'owners'",
|
||||
".",
|
||||
"'includes'",
|
||||
"(",
|
||||
"ctx",
|
||||
".",
|
||||
"'subject'",
|
||||
")",
|
||||
",",
|
||||
"'rename'",
|
||||
":",
|
||||
"(",
|
||||
"ctx",
|
||||
":",
|
||||
"'Context'",
|
||||
")",
|
||||
"=\u003e",
|
||||
"this",
|
||||
".",
|
||||
"'related'",
|
||||
".",
|
||||
"'siblings'",
|
||||
".",
|
||||
"'some'",
|
||||
"(",
|
||||
"'s'",
|
||||
"=\u003e",
|
||||
"'s'",
|
||||
".",
|
||||
"'permits'",
|
||||
".",
|
||||
"'edit'",
|
||||
"(",
|
||||
"ctx",
|
||||
")",
|
||||
")",
|
||||
"}",
|
||||
"}",
|
||||
"EOF"
|
||||
]
|
||||
@@ -0,0 +1,13 @@
|
||||
[
|
||||
"'import'",
|
||||
"{",
|
||||
"'Foo'",
|
||||
",",
|
||||
"'Bar'",
|
||||
",",
|
||||
"'Baz'",
|
||||
"}",
|
||||
"'from'",
|
||||
"'@ory/keto-...'",
|
||||
"EOF"
|
||||
]
|
||||
@@ -0,0 +1,16 @@
|
||||
[
|
||||
"class",
|
||||
"'name'",
|
||||
"implements",
|
||||
"'Namespace'",
|
||||
"{",
|
||||
"'metadata'",
|
||||
"=",
|
||||
"{",
|
||||
"'id'",
|
||||
":",
|
||||
"'123'",
|
||||
"}",
|
||||
"}",
|
||||
"EOF"
|
||||
]
|
||||
@@ -0,0 +1,23 @@
|
||||
[
|
||||
"class",
|
||||
"'X'",
|
||||
"implements",
|
||||
"'Namespace'",
|
||||
"{",
|
||||
"'related'",
|
||||
":",
|
||||
"{",
|
||||
"'relation'",
|
||||
":",
|
||||
"'SubjectSet'",
|
||||
"\u003c",
|
||||
"'R'",
|
||||
",",
|
||||
"'someProp'",
|
||||
"\u003e",
|
||||
"[",
|
||||
"]",
|
||||
"}",
|
||||
"}",
|
||||
"EOF"
|
||||
]
|
||||
39
schema/.snapshots/TestLexer-suite=snapshots-two_classes.json
Normal file
39
schema/.snapshots/TestLexer-suite=snapshots-two_classes.json
Normal file
@@ -0,0 +1,39 @@
|
||||
[
|
||||
"class",
|
||||
"'user'",
|
||||
"implements",
|
||||
"'Namespace'",
|
||||
"{",
|
||||
"}",
|
||||
"class",
|
||||
"'document'",
|
||||
"implements",
|
||||
"'Namespace'",
|
||||
"{",
|
||||
"'related'",
|
||||
":",
|
||||
"{",
|
||||
"'owners'",
|
||||
":",
|
||||
"'user'",
|
||||
"[",
|
||||
"]",
|
||||
"'editors'",
|
||||
":",
|
||||
"'user'",
|
||||
"[",
|
||||
"]",
|
||||
"'viewers'",
|
||||
":",
|
||||
"'user'",
|
||||
"[",
|
||||
"]",
|
||||
"'parent'",
|
||||
":",
|
||||
"'document'",
|
||||
"[",
|
||||
"]",
|
||||
"}",
|
||||
"}",
|
||||
"EOF"
|
||||
]
|
||||
@@ -0,0 +1,161 @@
|
||||
{
|
||||
"Resource": [
|
||||
{
|
||||
"name": "admins",
|
||||
"types": [
|
||||
{
|
||||
"namespace": "Role",
|
||||
"relation": "member"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "supervisors",
|
||||
"types": [
|
||||
{
|
||||
"namespace": "Role",
|
||||
"relation": "member"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "annotators",
|
||||
"types": [
|
||||
{
|
||||
"namespace": "Role",
|
||||
"relation": "member"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "medicalAnnotators",
|
||||
"types": [
|
||||
{
|
||||
"namespace": "Role",
|
||||
"relation": "member"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "read",
|
||||
"rewrite": {
|
||||
"operator": "or",
|
||||
"children": [
|
||||
{
|
||||
"relation": "admins",
|
||||
"computed_subject_set_relation": "member"
|
||||
},
|
||||
{
|
||||
"relation": "annotators",
|
||||
"computed_subject_set_relation": "member"
|
||||
},
|
||||
{
|
||||
"relation": "medicalAnnotators",
|
||||
"computed_subject_set_relation": "member"
|
||||
},
|
||||
{
|
||||
"relation": "supervisors",
|
||||
"computed_subject_set_relation": "member"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "comment",
|
||||
"rewrite": {
|
||||
"operator": "or",
|
||||
"children": [
|
||||
{
|
||||
"relation": "read"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "update",
|
||||
"rewrite": {
|
||||
"operator": "or",
|
||||
"children": [
|
||||
{
|
||||
"relation": "admins",
|
||||
"computed_subject_set_relation": "member"
|
||||
},
|
||||
{
|
||||
"relation": "annotators",
|
||||
"computed_subject_set_relation": "member"
|
||||
},
|
||||
{
|
||||
"relation": "medicalAnnotators",
|
||||
"computed_subject_set_relation": "member"
|
||||
},
|
||||
{
|
||||
"relation": "supervisors",
|
||||
"computed_subject_set_relation": "member"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "create",
|
||||
"rewrite": {
|
||||
"operator": "or",
|
||||
"children": [
|
||||
{
|
||||
"relation": "admins",
|
||||
"computed_subject_set_relation": "member"
|
||||
},
|
||||
{
|
||||
"relation": "annotators",
|
||||
"computed_subject_set_relation": "member"
|
||||
},
|
||||
{
|
||||
"relation": "supervisors",
|
||||
"computed_subject_set_relation": "member"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "approve",
|
||||
"rewrite": {
|
||||
"operator": "or",
|
||||
"children": [
|
||||
{
|
||||
"relation": "admins",
|
||||
"computed_subject_set_relation": "member"
|
||||
},
|
||||
{
|
||||
"relation": "supervisors",
|
||||
"computed_subject_set_relation": "member"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "delete",
|
||||
"rewrite": {
|
||||
"operator": "or",
|
||||
"children": [
|
||||
{
|
||||
"relation": "admins",
|
||||
"computed_subject_set_relation": "member"
|
||||
},
|
||||
{
|
||||
"relation": "supervisors",
|
||||
"computed_subject_set_relation": "member"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
],
|
||||
"Role": [
|
||||
{
|
||||
"name": "member",
|
||||
"types": [
|
||||
{
|
||||
"namespace": "Role"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
169
schema/.snapshots/TestParser-suite=snapshots-full_example.json
Normal file
169
schema/.snapshots/TestParser-suite=snapshots-full_example.json
Normal file
@@ -0,0 +1,169 @@
|
||||
{
|
||||
"File": [
|
||||
{
|
||||
"name": "parents",
|
||||
"types": [
|
||||
{
|
||||
"namespace": "File"
|
||||
},
|
||||
{
|
||||
"namespace": "Folder"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "viewers",
|
||||
"types": [
|
||||
{
|
||||
"namespace": "User"
|
||||
},
|
||||
{
|
||||
"namespace": "Group",
|
||||
"relation": "members"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "owners",
|
||||
"types": [
|
||||
{
|
||||
"namespace": "User"
|
||||
},
|
||||
{
|
||||
"namespace": "Group",
|
||||
"relation": "members"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "siblings",
|
||||
"types": [
|
||||
{
|
||||
"namespace": "File"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "view",
|
||||
"rewrite": {
|
||||
"operator": "or",
|
||||
"children": [
|
||||
{
|
||||
"operator": "and",
|
||||
"children": [
|
||||
{
|
||||
"relation": "parents",
|
||||
"computed_subject_set_relation": "viewers"
|
||||
},
|
||||
{
|
||||
"relation": "parents",
|
||||
"computed_subject_set_relation": "view"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"relation": "viewers"
|
||||
},
|
||||
{
|
||||
"relation": "viewers"
|
||||
},
|
||||
{
|
||||
"relation": "viewers"
|
||||
},
|
||||
{
|
||||
"relation": "owners"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "edit",
|
||||
"rewrite": {
|
||||
"operator": "or",
|
||||
"children": [
|
||||
{
|
||||
"relation": "owners"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "not",
|
||||
"rewrite": {
|
||||
"operator": "or",
|
||||
"children": [
|
||||
{
|
||||
"inverted": {
|
||||
"relation": "owners"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "rename",
|
||||
"rewrite": {
|
||||
"operator": "or",
|
||||
"children": [
|
||||
{
|
||||
"relation": "siblings",
|
||||
"computed_subject_set_relation": "edit"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
],
|
||||
"Folder": [
|
||||
{
|
||||
"name": "parents",
|
||||
"types": [
|
||||
{
|
||||
"namespace": "File"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "viewers",
|
||||
"types": [
|
||||
{
|
||||
"namespace": "Group",
|
||||
"relation": "members"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "view",
|
||||
"rewrite": {
|
||||
"operator": "or",
|
||||
"children": [
|
||||
{
|
||||
"relation": "viewers"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
],
|
||||
"Group": [
|
||||
{
|
||||
"name": "members",
|
||||
"types": [
|
||||
{
|
||||
"namespace": "User"
|
||||
},
|
||||
{
|
||||
"namespace": "Group"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"User": [
|
||||
{
|
||||
"name": "manager",
|
||||
"types": [
|
||||
{
|
||||
"namespace": "User"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
{
|
||||
"Document": [
|
||||
{
|
||||
"name": "owners"
|
||||
},
|
||||
{
|
||||
"name": "editors"
|
||||
},
|
||||
{
|
||||
"name": "viewers"
|
||||
},
|
||||
{
|
||||
"name": "parent"
|
||||
},
|
||||
{
|
||||
"name": "rename",
|
||||
"rewrite": {
|
||||
"set_operation": 0,
|
||||
"children": [
|
||||
{
|
||||
"relation": "siblings",
|
||||
"computed_userset_relation": "edit"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "edit",
|
||||
"rewrite": {
|
||||
"set_operation": 0,
|
||||
"children": [
|
||||
{
|
||||
"relation": "owners"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "view",
|
||||
"rewrite": {
|
||||
"set_operation": 0,
|
||||
"children": [
|
||||
{
|
||||
"relation": "parents",
|
||||
"computed_userset_relation": "view"
|
||||
},
|
||||
{
|
||||
"relation": "viewers"
|
||||
},
|
||||
{
|
||||
"relation": "owners"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
],
|
||||
"User": null
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
{
|
||||
"File": [
|
||||
{
|
||||
"name": "viewers",
|
||||
"types": [
|
||||
{
|
||||
"namespace": "User"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "blocklist1",
|
||||
"types": [
|
||||
{
|
||||
"namespace": "User"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "blocklist2",
|
||||
"types": [
|
||||
{
|
||||
"namespace": "User"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "view",
|
||||
"rewrite": {
|
||||
"operator": "and",
|
||||
"children": [
|
||||
{
|
||||
"inverted": {
|
||||
"relation": "viewers"
|
||||
}
|
||||
},
|
||||
{
|
||||
"inverted": {
|
||||
"operator": "and",
|
||||
"children": [
|
||||
{
|
||||
"relation": "blocklist1"
|
||||
},
|
||||
{
|
||||
"relation": "blocklist2"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
],
|
||||
"User": null
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
{
|
||||
"Resource": [
|
||||
{
|
||||
"name": "scope.relation",
|
||||
"types": [
|
||||
{
|
||||
"namespace": "Resource"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "scope.action_0",
|
||||
"rewrite": {
|
||||
"operator": "or",
|
||||
"children": [
|
||||
{
|
||||
"relation": "scope.relation",
|
||||
"computed_subject_set_relation": "scope.action_1"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "scope.action_1",
|
||||
"rewrite": {
|
||||
"operator": "or",
|
||||
"children": [
|
||||
{
|
||||
"relation": "scope.relation",
|
||||
"computed_subject_set_relation": "scope.relation"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "scope.action_2",
|
||||
"rewrite": {
|
||||
"operator": "or",
|
||||
"children": [
|
||||
{
|
||||
"relation": "scope.action_0"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user