commit c313e1252814cd0e3a45026c4463d27fc944f00d Author: Quixos Template Publisher Date: Sat Jan 1 00:00:00 2000 +0000 Export template source from e33714a5ca38429d1bdb77a961a14461697944f5:examples/local-first/interfaces/reading-job diff --git a/.quixos-template-source.json b/.quixos-template-source.json new file mode 100644 index 0000000..565a9f7 --- /dev/null +++ b/.quixos-template-source.json @@ -0,0 +1,4 @@ +{ + "monorepoCommit": "e33714a5ca38429d1bdb77a961a14461697944f5", + "sourcePath": "examples/local-first/interfaces/reading-job" +} diff --git a/interface.qx b/interface.qx new file mode 100644 index 0000000..7cc0ef4 --- /dev/null +++ b/interface.qx @@ -0,0 +1,22 @@ +import interface ReadingDocument; +import interface ReadingOwner; +import interface ReadingFeature; +import interface ReadingReader; +import interface AgentRequest; +import interface AgentThread; +external atom AgentRequestObject id "atom:org.quixos.agent:request"; +external atom AgentThreadObject id "atom:org.quixos.agent:thread"; +type JobData = record {key:string;kind:string;featureRevision:uint32;sourceRevision:string;start:uint32;end:uint32;status:string;output:string;error:string;createdAt:string;}; +type AgentAdmission = record {accepted:bool;reason:optional;thread:optional>;request:optional>;}; +interface ReadingJob id "interface:reading:job" revision "interface:reading:job@1" { + queryable relation library id "reading:job:library" : exactly-one interface ReadingOwner {resolve id "reading:job:library:resolve" execution snapshot;} + queryable relation reader id "reading:job:reader" : optional-one interface ReadingReader {resolve id "reading:job:reader:resolve" execution snapshot;} + queryable value configuration id "reading:job:configuration" : string {get id "reading:job:configuration:get" execution snapshot;} + queryable value data id "reading:job:data" : JobData {get id "reading:job:data:get" execution snapshot;} + queryable relation document id "reading:job:document" : optional-one interface ReadingDocument {resolve id "reading:job:document:resolve" execution snapshot;} + queryable relation feature id "reading:job:feature" : optional-one interface ReadingFeature {resolve id "reading:job:feature:resolve" execution snapshot;} + queryable relation request id "reading:job:request" : optional-one atom AgentRequestObject {resolve id "reading:job:request:resolve" execution snapshot;} + queryable relation thread id "reading:job:thread" : optional-one atom AgentThreadObject {resolve id "reading:job:thread:resolve" execution snapshot;} + operation admitted id "reading:job:admitted" : AgentAdmission -> unit {call id "reading:job:admitted:call" execution transaction;} + operation complete id "reading:job:complete" : unit -> unit {call id "reading:job:complete:call" execution transaction;} +} diff --git a/quixos.lock b/quixos.lock new file mode 100644 index 0000000..c4fb908 --- /dev/null +++ b/quixos.lock @@ -0,0 +1,9 @@ +quixos-lock version 1 { + quixos source { repository "https://gitea-external.egads.tutti.syntaxblitz.net/quixos/quixos.git"; commit "e33714a5ca38429d1bdb77a961a14461697944f5"; } + interface ReadingDocument source { repository "https://repos.quixos.org/quixos-local-first-examples/interface-reading-document.git"; commit "83aa9b69840ca1cda3cb25a9fbf6c4cdc2f4acfa"; } + interface ReadingOwner source { repository "https://repos.quixos.org/quixos-local-first-examples/interface-reading-owner.git"; commit "ca870ff6dc5ee7d8cc7f4ad1754e48fcf3f250cf"; } + interface ReadingFeature source { repository "https://repos.quixos.org/quixos-local-first-examples/interface-reading-feature.git"; commit "46b7a4cbdf982b3bc013f7b6790433043742baee"; } + interface ReadingReader source { repository "https://repos.quixos.org/quixos-local-first-examples/interface-reading-reader.git"; commit "815ce87c87337d29bdd2611fe6741dff26f89a2c"; } + interface AgentRequest source { repository "https://repos.quixos.org/quixos-studio/interface-agent-request.git"; commit "d9bb364113d6590770f4733d3a9d42364e3b8806"; } + interface AgentThread source { repository "https://repos.quixos.org/quixos-studio/interface-agent-thread.git"; commit "9d689bbeecfc3321f97bfbaa9adf405eeee89e5c"; } +}