@wenathlan/extension 1.1.65 → 1.1.66
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/README.md +4 -3
- package/dist/attentionfeed.d.ts +74 -0
- package/dist/attentionfeed.d.ts.map +1 -0
- package/dist/backgroundruns.d.ts +71 -0
- package/dist/backgroundruns.d.ts.map +1 -0
- package/dist/flowlibrary.d.ts +147 -0
- package/dist/flowlibrary.d.ts.map +1 -0
- package/dist/index.d.ts +7 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +686 -3
- package/dist/index.js.map +4 -4
- package/dist/memory.d.ts +67 -1
- package/dist/memory.d.ts.map +1 -1
- package/dist/outputcompare.d.ts +68 -0
- package/dist/outputcompare.d.ts.map +1 -0
- package/dist/policy.d.ts +63 -0
- package/dist/policy.d.ts.map +1 -1
- package/dist/protocol.d.ts +167 -0
- package/dist/protocol.d.ts.map +1 -1
- package/dist/runreplay.d.ts +53 -0
- package/dist/runreplay.d.ts.map +1 -0
- package/dist/surfaces.d.ts +2 -2
- package/dist/surfaces.d.ts.map +1 -1
- package/dist/syncbridge.d.ts +80 -0
- package/dist/syncbridge.d.ts.map +1 -0
- package/dist/types.d.ts +194 -3
- package/dist/types.d.ts.map +1 -1
- package/dist/version.d.ts +1 -1
- package/extension/dist/background.js +944 -6
- package/extension/dist/background.js.map +4 -4
- package/extension/dist/dashboardpage.html +2 -0
- package/extension/dist/dashboardpage.js +90 -0
- package/extension/dist/dashboardpage.js.map +2 -2
- package/extension/dist/manifest.json +1 -1
- package/extension/dist/optionspage.html +1 -0
- package/extension/dist/optionspage.js +73 -0
- package/extension/dist/optionspage.js.map +2 -2
- package/extension/dist/pagebridge.js.map +1 -1
- package/extension/dist/popup.html +1 -1
- package/extension/dist/popup.js +48 -36
- package/extension/dist/popup.js.map +2 -2
- package/extension/dist/sidepanel.html +1 -1
- package/extension/dist/sidepanel.js +135 -0
- package/extension/dist/sidepanel.js.map +2 -2
- package/extension/manifest.json +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import type { flowlibrarymanifest, syncbridgeconflict, syncbridgehook } from "./types.js";
|
|
2
|
+
/** Computes the sync digest of one manifest: the canonical body the conflict detection compares across machines. */
|
|
3
|
+
export declare function syncdigestof(manifest: flowlibrarymanifest): Promise<string>;
|
|
4
|
+
/** Builds one syncbridge hook with its opt in off: no hook ever defaults on, the user flips the opt in from the optionspage. */
|
|
5
|
+
export declare function syncbridgehookof(input: {
|
|
6
|
+
provider: "file" | "web";
|
|
7
|
+
direction: "pull" | "push" | "both";
|
|
8
|
+
endpoint: string;
|
|
9
|
+
now: number;
|
|
10
|
+
}): syncbridgehook;
|
|
11
|
+
/** Flips the explicit opt in of one hook: only the user turns a hook on or off and the state resets to idle. */
|
|
12
|
+
export declare function syncbridgeoptinflip(hook: syncbridgehook, optin: boolean): syncbridgehook;
|
|
13
|
+
/** Reads the provider registry the optionspage lists: the file provider with its manual import and export and the web provider stub behind the opt in gate. */
|
|
14
|
+
export declare function syncbridgeproviders(): Array<{
|
|
15
|
+
provider: "file" | "web";
|
|
16
|
+
label: string;
|
|
17
|
+
operations: string[];
|
|
18
|
+
note: string;
|
|
19
|
+
}>;
|
|
20
|
+
/** Exports one manifest list as the syncbridge file payload: the manifests travel with their digests while secrets and logs never enter the payload under any flag. */
|
|
21
|
+
export declare function syncbridgeexportpayload(manifests: flowlibrarymanifest[]): Promise<{
|
|
22
|
+
version: 1;
|
|
23
|
+
kind: "syncbridge";
|
|
24
|
+
manifests: flowlibrarymanifest[];
|
|
25
|
+
digests: string[];
|
|
26
|
+
exclusions: string[];
|
|
27
|
+
}>;
|
|
28
|
+
/** Validates one syncbridge payload for import: the scope gate refuses a payload that carries secrets or log entries in full while a manifest only payload validates with its digest list. */
|
|
29
|
+
export declare function syncbridgevalidate(payload: {
|
|
30
|
+
kind?: string;
|
|
31
|
+
manifests?: unknown;
|
|
32
|
+
digests?: unknown;
|
|
33
|
+
exclusions?: unknown;
|
|
34
|
+
secrets?: unknown;
|
|
35
|
+
logs?: unknown;
|
|
36
|
+
}): {
|
|
37
|
+
ok: boolean;
|
|
38
|
+
reason: string;
|
|
39
|
+
};
|
|
40
|
+
/** Runs one pull or push scan of a hook and returns its conflict records instead of a silent overwrite: the digest comparison of every manifest id surfaces both versions whenever the digests differ. */
|
|
41
|
+
export declare function syncbridgescan(input: {
|
|
42
|
+
hook: syncbridgehook;
|
|
43
|
+
local: Array<{
|
|
44
|
+
manifestid: string;
|
|
45
|
+
version: string;
|
|
46
|
+
digest: string;
|
|
47
|
+
}>;
|
|
48
|
+
remote: Array<{
|
|
49
|
+
manifestid: string;
|
|
50
|
+
version: string;
|
|
51
|
+
digest: string;
|
|
52
|
+
}>;
|
|
53
|
+
now: number;
|
|
54
|
+
}): Promise<{
|
|
55
|
+
conflicts: syncbridgeconflict[];
|
|
56
|
+
synced: string[];
|
|
57
|
+
reason: string;
|
|
58
|
+
}>;
|
|
59
|
+
/** Resolves one syncbridge conflict with a distinct user action: local keeps the local manifest, remote takes the remote one and merge defers the union to the user editor. */
|
|
60
|
+
export declare function resolveconflict(conflict: syncbridgeconflict, resolution: "local" | "remote" | "merge", now: number): syncbridgeconflict;
|
|
61
|
+
/** Lists the conflicts of one hook the optionspage shows with their resolve actions. */
|
|
62
|
+
export declare function conflictsfor(conflicts: syncbridgeconflict[], hookid?: string): syncbridgeconflict[];
|
|
63
|
+
/** Reads the web provider stub descriptor: the stub names its operations and stays honest that no network call ships before its backend exists. */
|
|
64
|
+
export declare function webproviderstub(hook: syncbridgehook): {
|
|
65
|
+
hookid: string;
|
|
66
|
+
endpoint: string;
|
|
67
|
+
optin: boolean;
|
|
68
|
+
operations: string[];
|
|
69
|
+
stub: true;
|
|
70
|
+
reason: string;
|
|
71
|
+
};
|
|
72
|
+
/** Reads the file provider adapter of one hook: pull parses a dropped sync payload, push serializes the manifest list and list reads the local manifests; every operation moves manifests only. */
|
|
73
|
+
export declare function fileproviderof(hook: syncbridgehook): {
|
|
74
|
+
hookid: string;
|
|
75
|
+
operations: Array<{
|
|
76
|
+
kind: "pull" | "push" | "list";
|
|
77
|
+
label: string;
|
|
78
|
+
}>;
|
|
79
|
+
};
|
|
80
|
+
//# sourceMappingURL=syncbridge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"syncbridge.d.ts","sourceRoot":"","sources":["../syncbridge.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
export declare const protocolversion: "1.1.
|
|
1
|
+
export declare const protocolversion: "1.1.66";
|
|
2
2
|
/** Every reviewed action kind. Read kinds observe, interaction kinds move focus, sensitive kinds change page or browser state. */
|
|
3
3
|
export type actionkind = "observe" | "inspect" | "extract" | "wait" | "waitfor" | "waittext" | "readattribute" | "readstyle" | "readgeometry" | "readvalue" | "readtext" | "readhtml" | "countelements" | "readtable" | "readlinks" | "readimages" | "readmeta" | "readforms" | "readstorage" | "highlight" | "tablist" | "windowlist" | "tabsnapshot" | "focus" | "scroll" | "hover" | "clickdeep" | "rightclick" | "doubleclick" | "scrollpage" | "scrollby" | "scrollend" | "scrolltop" | "fullscreen" | "zoomset" | "click" | "type" | "navigate" | "select" | "presskey" | "drag" | "drop" | "upload" | "clear" | "check" | "uncheck" | "toggle" | "submit" | "reload" | "back" | "forward" | "writestorage" | "setattribute" | "removeattribute" | "evaluate" | "tabcreate" | "tabactivate" | "tabclose" | "tabreload" | "windowcreate" | "windowclose" | "windowresize" | "downloadfile" | "movepointer" | "clickpoint" | "shiftclick" | "clicktext" | "clickaria" | "clickname" | "resolvexpath" | "typetime" | "appendtext" | "setvalue" | "typeedit" | "keyhold" | "keyrelease" | "submitsearch" | "selectmulti" | "chooseradio" | "setslider" | "setdate" | "setcolor" | "expanddetails" | "dismissdialog" | "pierceshadow" | "enterframe" | "retryaction" | "mapclicks" | "verifyvisible" | "verifyenabled" | "a11ytree" | "readvisible" | "readertree" | "detectlists" | "detecttables" | "readjson" | "watchmutate" | "waitquiet" | "watchbanner" | "detectinfinitescroll" | "detectvirtual" | "detectlazy" | "readscrollpos" | "readlang" | "readoutline" | "countpages" | "listshadow" | "listframes" | "classifypage" | "fingerprintsection" | "diffsnapshots" | "readselection" | "watchfocus" | "detectsticky" | "detectscrolllock" | "readopengraph" | "detectlanguage" | "deriveselector" | "openlink" | "openprivate" | "reloadcache" | "stopnav" | "waitload" | "waiturl" | "followlink" | "spanav" | "spawait" | "rewritequery" | "setfragment" | "navlist" | "navprofile" | "detecthttp" | "readredirects" | "readfinalurl" | "handleauth" | "printpdf" | "prefetch" | "preconnect" | "deeplink" | "reopentab" | "trailaudit" | "pausenav" | "navintent" | "navrate" | "openclipboard" | "checksafe" | "batchopen" | "querytabs" | "duplicatetab" | "closepattern" | "pintab" | "mutetab" | "movetab" | "movetabwindow" | "grouptabs" | "colorgroup" | "collapsegroup" | "discardtab" | "reloadtabs" | "zoomin" | "zoomout" | "watchtab" | "switchtab" | "maximizewindow" | "minimizewindow" | "restorewindow" | "focuswindow" | "scratchwindow" | "incognitowindow" | "restoretab" | "savelayout" | "restorelayout" | "findclones" | "searchtabs" | "badgetab" | "attachmeta" | "listaudio" | "reopenrun" | "snapshotsession" | "fillform" | "filllabel" | "fillplaceholder" | "detectfields" | "generatevalues" | "saveprofiles" | "asksubmit" | "submitform" | "readerrors" | "retryform" | "runwizard" | "selectchain" | "picktypeahead" | "pickdate" | "attachfile" | "handoffcaptcha" | "fillcard" | "fillcode" | "consentpassword" | "skiphoneypot" | "detectlogin" | "detecttemplate" | "scrapetable" | "exportcsv" | "exportjson" | "exportexcel" | "copytable" | "pushsheets" | "importcsv" | "looprows" | "transformvalues" | "deduperows" | "paginateextract" | "mergepages" | "stamplerows" | "previewgrid" | "streamdisk" | "resumeextract" | "logprovenance" | "batchdownload" | "pausedownload" | "resumedownload" | "verifydownload" | "interceptmime" | "exportnetlog" | "readclipboard" | "writeclipboard" | "copyscreen" | "quarantinedownload" | "scanvirus" | "namecaptures" | "cleanupartifacts" | "shotview" | "shotfullpage" | "shotelement" | "shotregion" | "contactsheet" | "capturepdf" | "recordscreen" | "captureaudio" | "captureframe" | "downloadimages" | "shotcanvas" | "probestream" | "readmedia" | "readassets" | "timelapse" | "convertimage" | "makethumbs" | "fetchurl" | "parsejson" | "parsehtml" | "callrest" | "callgraphql" | "opensocket" | "sendmessage" | "waitmessage" | "watchrequests" | "readheaders" | "capturebodies" | "subscribesse" | "longpoll" | "mapapi" | "extractapi" | "blockrequest" | "mockresponse" | "rewriteheaders" | "setcookies" | "readcookies" | "clearcookies" | "authflow" | "saveapikey" | "routeproxy" | "postform" | "postfiles" | "watchconsole" | "watcherrors" | "watchtasks" | "attachcdp" | "detachcdp" | "cdpcmd" | "watchcdp" | "setbreakpoint" | "stepcode" | "watchexpr" | "overridescript" | "measureflow" | "heapshot" | "trackmemory" | "profilecpu" | "watchshifts" | "traceload" | "annotatetrace" | "replaytrace" | "capturesourcemaps" | "emulatedevice" | "emulatenetwork" | "emulatelocate" | "setuseragent" | "overridepermission" | "blackboxscripts" | "persiststate" | "capturesession" | "restoresession" | "namedsessions" | "diffsessions" | "searchsessions" | "exportsessions" | "importsessions" | "composeworkflow" | "savetemplate" | "runworkflow" | "dryrun" | "delay" | "waitelement" | "compute" | "extractvars" | "listruns" | "condition" | "branch" | "loop" | "repeatuntil" | "whileloop" | "foreach" | "parallel" | "trycatch" | "visitrule" | "urlrule" | "menurule" | "keyrule" | "buttonrule" | "cronrule" | "intervalrule" | "urllistrule" | "webhookrule" | "eventrule";
|
|
4
4
|
export type actionrisk = "read" | "interaction" | "sensitive";
|
|
5
5
|
export type planstate = "draft" | "pending" | "approved" | "rejected" | "expired" | "completed" | "cancelled";
|
|
6
|
-
export type auditkind = "configure" | "session" | "observe" | "proposal" | "approval" | "action" | "error" | "stop" | "pause" | "resume" | "complete" | "capability" | "tab" | "window" | "download" | "pointer" | "dialog" | "hold" | "retry" | "observation" | "watch" | "diff" | "navigation" | "redirect" | "auth" | "prefetch" | "rate" | "group" | "layout" | "discard" | "badge" | "fill" | "submit" | "consent" | "handoff" | "scrape" | "export" | "stream" | "provenance" | "resume" | "intercept" | "clipboard" | "quarantine" | "cleanup" | "capture" | "media" | "call" | "socket" | "replay" | "control" | "timeline" | "debugger" | "profile" | "emulation" | "workflow" | "trigger" | "protocol" | "tool" | "model" | "swarm" | "environment" | "worker" | "sandbox" | "grant" | "expiry" | "revoke" | "deny" | "seal" | "mask" | "vault" | "gate" | "phish" | "defer" | "schema" | "inbound" | "transparency" | "notes" | "scratchpad" | "summary" | "recall" | "correction" | "consentmemory" | "cancel" | "search" | "palette" | "surface" | "onboarding" | "logstream" | "datagrid" | "quickaction" | "shortcut" | "omnibox" | "notify" | "picker" | "shotpanel" | "compare" | "siteprofile" | "theme" | "locale" | "importexport" | "tour" | "a11y" | "pagechip" | "toast" | "recent" | "dropimport";
|
|
6
|
+
export type auditkind = "configure" | "session" | "observe" | "proposal" | "approval" | "action" | "error" | "stop" | "pause" | "resume" | "complete" | "capability" | "tab" | "window" | "download" | "pointer" | "dialog" | "hold" | "retry" | "observation" | "watch" | "diff" | "navigation" | "redirect" | "auth" | "prefetch" | "rate" | "group" | "layout" | "discard" | "badge" | "fill" | "submit" | "consent" | "handoff" | "scrape" | "export" | "stream" | "provenance" | "resume" | "intercept" | "clipboard" | "quarantine" | "cleanup" | "capture" | "media" | "call" | "socket" | "replay" | "control" | "timeline" | "debugger" | "profile" | "emulation" | "workflow" | "trigger" | "protocol" | "tool" | "model" | "swarm" | "environment" | "worker" | "sandbox" | "grant" | "expiry" | "revoke" | "deny" | "seal" | "mask" | "vault" | "gate" | "phish" | "defer" | "schema" | "inbound" | "transparency" | "notes" | "scratchpad" | "summary" | "recall" | "correction" | "consentmemory" | "cancel" | "search" | "palette" | "surface" | "onboarding" | "logstream" | "datagrid" | "quickaction" | "shortcut" | "omnibox" | "notify" | "picker" | "shotpanel" | "compare" | "siteprofile" | "theme" | "locale" | "importexport" | "tour" | "a11y" | "pagechip" | "toast" | "recent" | "dropimport" | "library" | "syncbridge" | "attention" | "backgroundrun" | "runreplay" | "outputcompare";
|
|
7
7
|
/** Observation mode classes: passive capture, watched lifetimes and diffing passes. */
|
|
8
8
|
export type observationmode = "passive" | "watching" | "diffing";
|
|
9
9
|
export interface toolstep {
|
|
@@ -266,6 +266,8 @@ export interface runsettings {
|
|
|
266
266
|
uilanguage?: string;
|
|
267
267
|
/** The steteoast live count: the number of newest step toasts the live stack keeps while the full history stays queryable; an absent count keeps every toast live. */
|
|
268
268
|
toastlivecount?: number;
|
|
269
|
+
/** Retention window for stored attentionfeed entries; an absent window keeps every entry while the resolution events always survive in the audit trail. */
|
|
270
|
+
attentionretention?: number;
|
|
269
271
|
}
|
|
270
272
|
export interface proposalrequest {
|
|
271
273
|
objective: string;
|
|
@@ -3033,6 +3035,8 @@ export interface workflowimport {
|
|
|
3033
3035
|
record: workflowrecord;
|
|
3034
3036
|
importedat: number;
|
|
3035
3037
|
filename?: string;
|
|
3038
|
+
/** The flowlibrary manifest version the record resolved from; an absent version marks a plain file import outside the library. */
|
|
3039
|
+
libraryversion?: string;
|
|
3036
3040
|
}
|
|
3037
3041
|
/** One per site policy override of a workflow: the origin pattern and the reviewed policy knobs it adjusts. */
|
|
3038
3042
|
export interface siteoverride {
|
|
@@ -4343,7 +4347,7 @@ export interface sealedrunstate {
|
|
|
4343
4347
|
/** The sensitive classes of the 1.1.61 family: payment, credential, delete and publish steps each need one fresh consent prompt per class per origin. */
|
|
4344
4348
|
export type sensitiveclass = "payment" | "credential" | "delete" | "publish";
|
|
4345
4349
|
/** The event kinds of the immutable run log: step transitions, grants, window expiries, revocations, denials, suspensions, resumes and the completion seal. */
|
|
4346
|
-
export type logeventkind = "step" | "grant" | "expiry" | "revoke" | "deny" | "suspend" | "resume" | "seal" | "gate" | "phish" | "schema" | "inbound" | "cancel" | "review";
|
|
4350
|
+
export type logeventkind = "step" | "grant" | "expiry" | "revoke" | "deny" | "suspend" | "resume" | "seal" | "gate" | "phish" | "schema" | "inbound" | "cancel" | "review" | "library" | "background";
|
|
4347
4351
|
/** The hash chain fields of one immutable log entry: the hash of its predecessor, the entry hash written at append time and the algorithm that derives both. */
|
|
4348
4352
|
export interface loghash {
|
|
4349
4353
|
previous: string;
|
|
@@ -4937,6 +4941,8 @@ export interface onboardingstep {
|
|
|
4937
4941
|
title: string;
|
|
4938
4942
|
body: string;
|
|
4939
4943
|
completion: string;
|
|
4944
|
+
/** True when the walkthrough stop is optional: the completion of every mandatory stop alone finishes the walkthrough while the optional stop enriches it. */
|
|
4945
|
+
optional?: boolean;
|
|
4940
4946
|
}
|
|
4941
4947
|
/** The onboarding state: the completed steps, the done mark, the single consent scoped event a full completion writes and the timestamps. */
|
|
4942
4948
|
export interface onboardingstate {
|
|
@@ -5216,4 +5222,189 @@ export interface stetoast {
|
|
|
5216
5222
|
durationms: number;
|
|
5217
5223
|
at: number;
|
|
5218
5224
|
}
|
|
5225
|
+
/**
|
|
5226
|
+
* Ecosystem contracts of the 1.1.66 family.
|
|
5227
|
+
* This family opens the ecosystem layer: the flowlibrary entries with their manifests, required grants, data expectations and publisher provenance share workflow templates behind the same review; the syncbridge hooks move manifests between machines behind an explicit opt in; the attentionfeed collects every gate wait, phishguard block, deferral and failure with its deep link; the background run queue keeps workflows executing with the keepalive signal held; the runreplay walks a sealed chain step by step for audit; and the outputcompare sessions set two runs beside each other under a recorded metric set.
|
|
5228
|
+
* The consent gates do not move: every library import lands as a proposal that still passes the plan review, no hook ever defaults on, the replay reads sealed logs only and the comparison never executes a step.
|
|
5229
|
+
*/
|
|
5230
|
+
/** One flowlibrary manifest: the shared workflow template with its steps, kinds, required grants, data expectations with minimization hints and the optional publisher signature. */
|
|
5231
|
+
export interface flowlibrarymanifest {
|
|
5232
|
+
id: string;
|
|
5233
|
+
title: string;
|
|
5234
|
+
description: string;
|
|
5235
|
+
version: string;
|
|
5236
|
+
/** The publisher identity of the manifest; every registry origin stays a user configured value with nothing hardcoded. */
|
|
5237
|
+
publisher: string;
|
|
5238
|
+
/** The user configured registry origin the entry was browsed from; an absent origin marks a local export. */
|
|
5239
|
+
registry?: string;
|
|
5240
|
+
steps: flowlibrarystep[];
|
|
5241
|
+
/** The action kinds the manifest steps use; the import refuses kinds the installed capability set lacks. */
|
|
5242
|
+
kinds: string[];
|
|
5243
|
+
/** The origin grants the manifest needs before any import completes; the grant diff shows them before the import lands. */
|
|
5244
|
+
requiredgrants: string[];
|
|
5245
|
+
/** The data expectations of the manifest with the minimization hints each step declares. */
|
|
5246
|
+
dataexpectations: dataexpectation[];
|
|
5247
|
+
/** True when the entry is marked sensitive and needs a fresh consent prompt before any import. */
|
|
5248
|
+
sensitive: boolean;
|
|
5249
|
+
/** The publish descriptor with the publisher signature and provenance when the publisher signed the manifest. */
|
|
5250
|
+
publish?: publishdescriptor;
|
|
5251
|
+
}
|
|
5252
|
+
/** One flowlibrary manifest step: the action kind, its label, the optional target and value and the selector namespace the installer rewrites for the local profile. */
|
|
5253
|
+
export interface flowlibrarystep {
|
|
5254
|
+
id: string;
|
|
5255
|
+
kind: string;
|
|
5256
|
+
label: string;
|
|
5257
|
+
target?: string;
|
|
5258
|
+
value?: string;
|
|
5259
|
+
/** The selector namespace of the step target: the install prefixes it onto the local selector so shared templates address the local profile. */
|
|
5260
|
+
namespace?: string;
|
|
5261
|
+
}
|
|
5262
|
+
/** One data expectation of a manifest step: the data family the step touches and the fields it limits itself to as its minimization hint. */
|
|
5263
|
+
export interface dataexpectation {
|
|
5264
|
+
stepid: string;
|
|
5265
|
+
/** The data family the step reads or writes such as form values, text content or captures. */
|
|
5266
|
+
family: string;
|
|
5267
|
+
/** The minimization hint: the exact fields the step needs and nothing broader. */
|
|
5268
|
+
fields: string[];
|
|
5269
|
+
}
|
|
5270
|
+
/** One publish descriptor: the publisher signature over the manifest digest with its provenance; the verification refuses a signature over any other body in full. */
|
|
5271
|
+
export interface publishdescriptor {
|
|
5272
|
+
publisher: string;
|
|
5273
|
+
signature: string;
|
|
5274
|
+
/** The manifest digest the signature covers. */
|
|
5275
|
+
digest: string;
|
|
5276
|
+
/** The provenance chain of the publish: where the entry came from. */
|
|
5277
|
+
provenance: string;
|
|
5278
|
+
publishedat: number;
|
|
5279
|
+
}
|
|
5280
|
+
/** One flowlibrary entry: the manifest with its digest, its state and its provenance; the store deduplicates entries by manifest digest and quarantines unverified publishers. */
|
|
5281
|
+
export interface flowlibraryentry {
|
|
5282
|
+
id: string;
|
|
5283
|
+
manifest: flowlibrarymanifest;
|
|
5284
|
+
/** The sha-256 digest of the manifest body; the store deduplicates and the syncbridge detects conflicts by this value. */
|
|
5285
|
+
digest: string;
|
|
5286
|
+
/** The entry state: quarantined entries never install until the user verifies their publisher. */
|
|
5287
|
+
state: "available" | "installed" | "quarantined";
|
|
5288
|
+
installedat?: number;
|
|
5289
|
+
/** The provenance attached to every entry: where it came from and what its signature verification said. */
|
|
5290
|
+
provenance: string;
|
|
5291
|
+
addedat: number;
|
|
5292
|
+
}
|
|
5293
|
+
/** One library lifecycle event of the store and the immutable log: every install, update and removal records with its entry provenance. */
|
|
5294
|
+
export interface libraryevent {
|
|
5295
|
+
id: string;
|
|
5296
|
+
kind: "install" | "update" | "remove";
|
|
5297
|
+
entryid: string;
|
|
5298
|
+
title: string;
|
|
5299
|
+
version: string;
|
|
5300
|
+
detail: string;
|
|
5301
|
+
at: number;
|
|
5302
|
+
}
|
|
5303
|
+
/** One syncbridge hook: the provider, the direction and the state of one manifest sync hook behind its explicit opt in with no default on. */
|
|
5304
|
+
export interface syncbridgehook {
|
|
5305
|
+
id: string;
|
|
5306
|
+
provider: "file" | "web";
|
|
5307
|
+
direction: "pull" | "push" | "both";
|
|
5308
|
+
/** True only after the user opts in; no hook ever defaults on. */
|
|
5309
|
+
optin: boolean;
|
|
5310
|
+
/** The user configured endpoint of the provider: a registry url for the web provider or a file label for the file provider; nothing is hardcoded. */
|
|
5311
|
+
endpoint: string;
|
|
5312
|
+
state: "idle" | "syncing" | "error";
|
|
5313
|
+
lastsyncat?: number;
|
|
5314
|
+
createdat: number;
|
|
5315
|
+
}
|
|
5316
|
+
/** One syncbridge conflict: both manifest versions surface instead of a silent overwrite, with the resolution the user picked. */
|
|
5317
|
+
export interface syncbridgeconflict {
|
|
5318
|
+
id: string;
|
|
5319
|
+
hookid: string;
|
|
5320
|
+
manifestid: string;
|
|
5321
|
+
local: {
|
|
5322
|
+
digest: string;
|
|
5323
|
+
version: string;
|
|
5324
|
+
};
|
|
5325
|
+
remote: {
|
|
5326
|
+
digest: string;
|
|
5327
|
+
version: string;
|
|
5328
|
+
};
|
|
5329
|
+
resolution?: "local" | "remote" | "merge";
|
|
5330
|
+
resolvedat?: number;
|
|
5331
|
+
detectedat: number;
|
|
5332
|
+
}
|
|
5333
|
+
/** The attention causes the feed collects: gate waits, phishguard blocks, deferrals and failures. */
|
|
5334
|
+
export type attentioncause = "gatewait" | "phishguard" | "deferral" | "failure";
|
|
5335
|
+
/** One attentionfeed entry: the cause, the run ref, the gate ref, the severity rank and the deep link to the waiting surface that resolves the cause. */
|
|
5336
|
+
export interface attentionentry {
|
|
5337
|
+
id: string;
|
|
5338
|
+
cause: attentioncause;
|
|
5339
|
+
severity: "critical" | "warning" | "info";
|
|
5340
|
+
runid: string;
|
|
5341
|
+
/** The gate the run waits at when the cause is a gate wait. */
|
|
5342
|
+
gateref?: string;
|
|
5343
|
+
origin: string;
|
|
5344
|
+
summary: string;
|
|
5345
|
+
/** The deep link that opens the exact waiting surface. */
|
|
5346
|
+
deeplink: string;
|
|
5347
|
+
at: number;
|
|
5348
|
+
}
|
|
5349
|
+
/** One background run queue entry: the reviewed workflow the queue runs with no surface open, holding the keepalive signal for its duration. */
|
|
5350
|
+
export interface backgroundqueueentry {
|
|
5351
|
+
id: string;
|
|
5352
|
+
workflowid: string;
|
|
5353
|
+
state: "queued" | "running" | "done" | "failed";
|
|
5354
|
+
/** True while the run holds the keepalive signal of the run state family for its whole duration. */
|
|
5355
|
+
keepaliveheld: boolean;
|
|
5356
|
+
queuedat: number;
|
|
5357
|
+
startedat?: number;
|
|
5358
|
+
endedat?: number;
|
|
5359
|
+
summary: string;
|
|
5360
|
+
}
|
|
5361
|
+
/** One runreplay step: the log entry it restores with its observation and capture refs and the gate resolutions the step annotates. */
|
|
5362
|
+
export interface runreplaystep {
|
|
5363
|
+
stepid: string;
|
|
5364
|
+
index: number;
|
|
5365
|
+
summary: string;
|
|
5366
|
+
/** The observation version the step restored when the sealed log carries it. */
|
|
5367
|
+
observationversion?: number;
|
|
5368
|
+
/** The capture id the step restored when the sealed log carries it. */
|
|
5369
|
+
captureid?: string;
|
|
5370
|
+
gateresolutions: Array<{
|
|
5371
|
+
gateid: string;
|
|
5372
|
+
kind: string;
|
|
5373
|
+
resolution: string;
|
|
5374
|
+
at: number;
|
|
5375
|
+
}>;
|
|
5376
|
+
}
|
|
5377
|
+
/** One runreplay session: the recorded run id, the cursor, the play state, the replay steps and the viewer actions the audit trail records. */
|
|
5378
|
+
export interface runreplaysession {
|
|
5379
|
+
id: string;
|
|
5380
|
+
runid: string;
|
|
5381
|
+
/** The step index the viewer stands on. */
|
|
5382
|
+
cursor: number;
|
|
5383
|
+
playing: boolean;
|
|
5384
|
+
steps: runreplaystep[];
|
|
5385
|
+
openedat: number;
|
|
5386
|
+
actions: Array<{
|
|
5387
|
+
kind: "play" | "pause" | "step" | "jump";
|
|
5388
|
+
stepid?: string;
|
|
5389
|
+
at: number;
|
|
5390
|
+
}>;
|
|
5391
|
+
}
|
|
5392
|
+
/** One outputcompare session: the two run ids, the metric set the session used, the per step grades and the first divergence. */
|
|
5393
|
+
export interface outputcomparesession {
|
|
5394
|
+
id: string;
|
|
5395
|
+
runids: [string, string];
|
|
5396
|
+
/** The metric set the comparison used, recorded in the audit trail. */
|
|
5397
|
+
metrics: string[];
|
|
5398
|
+
steps: Array<{
|
|
5399
|
+
stepid: string;
|
|
5400
|
+
index: number;
|
|
5401
|
+
agreement: "agree" | "diverge" | "onlyone";
|
|
5402
|
+
summarya: string;
|
|
5403
|
+
summaryb: string;
|
|
5404
|
+
durationdelta: number;
|
|
5405
|
+
}>;
|
|
5406
|
+
/** The index of the first divergent step; an absent index marks agreement across the whole sequence. */
|
|
5407
|
+
firstdivergence?: number;
|
|
5408
|
+
openedat: number;
|
|
5409
|
+
}
|
|
5219
5410
|
//# sourceMappingURL=types.d.ts.map
|