@usine/config 0.2.0 → 0.3.0
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 +30 -18
- package/dist/agent.d.ts +4 -2
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +13 -4
- package/dist/agent.js.map +1 -1
- package/dist/board.d.ts +8 -6
- package/dist/board.d.ts.map +1 -1
- package/dist/board.js +13 -6
- package/dist/board.js.map +1 -1
- package/dist/checks.d.ts +3 -0
- package/dist/checks.d.ts.map +1 -1
- package/dist/checks.js +3 -0
- package/dist/checks.js.map +1 -1
- package/dist/factory.d.ts +75 -22
- package/dist/factory.d.ts.map +1 -1
- package/dist/factory.js +84 -29
- package/dist/factory.js.map +1 -1
- package/dist/file.d.ts +3 -3
- package/dist/file.d.ts.map +1 -1
- package/dist/file.js +3 -3
- package/dist/file.js.map +1 -1
- package/dist/frontmatter.d.ts +1 -1
- package/dist/frontmatter.d.ts.map +1 -1
- package/dist/frontmatter.js +1 -1
- package/dist/frontmatter.js.map +1 -1
- package/dist/instance/diagnostics.d.ts +1 -1
- package/dist/instance/diagnostics.d.ts.map +1 -1
- package/dist/instance/diagnostics.js +1 -1
- package/dist/instance/diagnostics.js.map +1 -1
- package/dist/instance/instance.d.ts +1 -1
- package/dist/instance/instance.d.ts.map +1 -1
- package/dist/instance/instance.js +2 -2
- package/dist/instance/instance.js.map +1 -1
- package/dist/instance/references.d.ts +5 -6
- package/dist/instance/references.d.ts.map +1 -1
- package/dist/instance/references.js +9 -9
- package/dist/instance/references.js.map +1 -1
- package/dist/instance-folder.d.ts +1 -1
- package/dist/instance-folder.d.ts.map +1 -1
- package/dist/instance-folder.js +13 -1
- package/dist/instance-folder.js.map +1 -1
- package/dist/label.d.ts +5 -5
- package/dist/label.d.ts.map +1 -1
- package/dist/label.js +5 -5
- package/dist/label.js.map +1 -1
- package/dist/loop.d.ts +4 -3
- package/dist/loop.d.ts.map +1 -1
- package/dist/loop.js +6 -5
- package/dist/loop.js.map +1 -1
- package/dist/parser.d.ts +6 -6
- package/dist/parser.d.ts.map +1 -1
- package/dist/parser.js +27 -10
- package/dist/parser.js.map +1 -1
- package/dist/payload-slices.d.ts +4 -7
- package/dist/payload-slices.d.ts.map +1 -1
- package/dist/payload-slices.js +30 -25
- package/dist/payload-slices.js.map +1 -1
- package/dist/selector.d.ts +6 -3
- package/dist/selector.d.ts.map +1 -1
- package/dist/selector.js +10 -6
- package/dist/selector.js.map +1 -1
- package/dist/trigger.d.ts +4 -7
- package/dist/trigger.d.ts.map +1 -1
- package/dist/trigger.js +6 -9
- package/dist/trigger.js.map +1 -1
- package/dist/yaml/document.d.ts +2 -2
- package/dist/yaml/document.js +3 -3
- package/dist/yaml/document.js.map +1 -1
- package/dist/yaml/writer.d.ts +4 -4
- package/dist/yaml/writer.d.ts.map +1 -1
- package/dist/yaml/writer.js +5 -6
- package/dist/yaml/writer.js.map +1 -1
- package/package.json +6 -5
package/dist/factory.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,
|
|
1
|
+
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"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"}
|
package/dist/file.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Schema } from "effect";
|
|
2
|
-
/**
|
|
2
|
+
/** A file path relative to the instance folder. */
|
|
3
3
|
export declare const InstancePath: Schema.brand<Schema.NonEmptyString, "InstancePath">;
|
|
4
4
|
export type InstancePath = typeof InstancePath.Type;
|
|
5
5
|
export declare const FileStage: Schema.Literals<readonly ["expression", "frontmatter", "read", "reference", "schema", "yaml"]>;
|
|
@@ -10,7 +10,7 @@ declare const ConfigFileError_base: Schema.Class<ConfigFileError, Schema.TaggedS
|
|
|
10
10
|
readonly expression: Schema.OptionFromOptionalKey<Schema.brand<Schema.String, "ExpressionSource">>;
|
|
11
11
|
readonly message: Schema.NonEmptyString;
|
|
12
12
|
}>, import("effect/Cause").YieldableError>;
|
|
13
|
-
/**
|
|
13
|
+
/** An error in one file at one parse stage; only that file is quarantined. */
|
|
14
14
|
export declare class ConfigFileError extends ConfigFileError_base {
|
|
15
15
|
}
|
|
16
16
|
declare const FactoryConfigError_base: Schema.Class<FactoryConfigError, Schema.TaggedStruct<"FactoryConfigError", {
|
|
@@ -18,7 +18,7 @@ declare const FactoryConfigError_base: Schema.Class<FactoryConfigError, Schema.T
|
|
|
18
18
|
readonly stage: Schema.Literals<readonly ["expression", "frontmatter", "read", "reference", "schema", "yaml"]>;
|
|
19
19
|
readonly message: Schema.NonEmptyString;
|
|
20
20
|
}>, import("effect/Cause").YieldableError>;
|
|
21
|
-
/**
|
|
21
|
+
/** An error loading the registry or settings, which fails the whole instance load. */
|
|
22
22
|
export declare class FactoryConfigError extends FactoryConfigError_base {
|
|
23
23
|
}
|
|
24
24
|
export declare const ConfigError: Schema.Union<readonly [typeof ConfigFileError, typeof FactoryConfigError]>;
|
package/dist/file.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../src/file.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,
|
|
1
|
+
{"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../src/file.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,mDAAmD;AACnD,eAAO,MAAM,YAAY,qDAA2D,CAAC;AAErF,MAAM,MAAM,YAAY,GAAG,OAAO,YAAY,CAAC,IAAI,CAAC;AAEpD,eAAO,MAAM,SAAS,gGAOpB,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC,IAAI,CAAC;;;;;;;AAE9C,8EAA8E;AAC9E,qBAAa,eAAgB,SAAQ,oBAOnC;CAAG;;;;;;AAEL,sFAAsF;AACtF,qBAAa,kBAAmB,SAAQ,uBAMtC;CAAG;AAEL,eAAO,MAAM,WAAW,4EAAsD,CAAC;AAE/E,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAC,IAAI,CAAC"}
|
package/dist/file.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Source } from "@usine/expression/expression-engine";
|
|
2
2
|
import { Schema } from "effect";
|
|
3
|
-
/**
|
|
3
|
+
/** A file path relative to the instance folder. */
|
|
4
4
|
export const InstancePath = Schema.NonEmptyString.pipe(Schema.brand("InstancePath"));
|
|
5
5
|
export const FileStage = Schema.Literals([
|
|
6
6
|
"expression",
|
|
@@ -10,7 +10,7 @@ export const FileStage = Schema.Literals([
|
|
|
10
10
|
"schema",
|
|
11
11
|
"yaml",
|
|
12
12
|
]);
|
|
13
|
-
/**
|
|
13
|
+
/** An error in one file at one parse stage; only that file is quarantined. */
|
|
14
14
|
export class ConfigFileError extends Schema.TaggedError("@usine/config/ConfigFileError")("ConfigFileError", {
|
|
15
15
|
file: InstancePath,
|
|
16
16
|
stage: FileStage,
|
|
@@ -18,7 +18,7 @@ export class ConfigFileError extends Schema.TaggedError("@usine/config/ConfigFil
|
|
|
18
18
|
message: Schema.NonEmptyString,
|
|
19
19
|
}) {
|
|
20
20
|
}
|
|
21
|
-
/**
|
|
21
|
+
/** An error loading the registry or settings, which fails the whole instance load. */
|
|
22
22
|
export class FactoryConfigError extends Schema.TaggedError("@usine/config/FactoryConfigError")("FactoryConfigError", {
|
|
23
23
|
file: InstancePath,
|
|
24
24
|
stage: FileStage,
|
package/dist/file.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file.js","sourceRoot":"","sources":["../src/file.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,qCAAqC,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,
|
|
1
|
+
{"version":3,"file":"file.js","sourceRoot":"","sources":["../src/file.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,qCAAqC,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,mDAAmD;AACnD,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;AAIrF,MAAM,CAAC,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC;IACvC,YAAY;IACZ,aAAa;IACb,MAAM;IACN,WAAW;IACX,QAAQ;IACR,MAAM;CACP,CAAC,CAAC;AAIH,8EAA8E;AAC9E,MAAM,OAAO,eAAgB,SAAQ,MAAM,CAAC,WAAW,CACrD,+BAA+B,CAChC,CAAC,iBAAiB,EAAE;IACnB,IAAI,EAAE,YAAY;IAClB,KAAK,EAAE,SAAS;IAChB,UAAU,EAAE,MAAM,CAAC,qBAAqB,CAAC,MAAM,CAAC;IAChD,OAAO,EAAE,MAAM,CAAC,cAAc;CAC/B,CAAC;CAAG;AAEL,sFAAsF;AACtF,MAAM,OAAO,kBAAmB,SAAQ,MAAM,CAAC,WAAW,CACxD,kCAAkC,CACnC,CAAC,oBAAoB,EAAE;IACtB,IAAI,EAAE,YAAY;IAClB,KAAK,EAAE,SAAS;IAChB,OAAO,EAAE,MAAM,CAAC,cAAc;CAC/B,CAAC;CAAG;AAEL,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,eAAe,EAAE,kBAAkB,CAAC,CAAC,CAAC"}
|
package/dist/frontmatter.d.ts
CHANGED
|
@@ -5,6 +5,6 @@ export interface MarkdownParts {
|
|
|
5
5
|
readonly body: string;
|
|
6
6
|
readonly newline: "\n" | "\r\n";
|
|
7
7
|
}
|
|
8
|
-
/** Splits a Markdown file into
|
|
8
|
+
/** Splits a Markdown file into YAML frontmatter and body without parsing either. */
|
|
9
9
|
export declare const splitMarkdown: (file: InstancePath, source: string) => Effect.Effect<MarkdownParts, ConfigFileError>;
|
|
10
10
|
//# sourceMappingURL=frontmatter.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frontmatter.d.ts","sourceRoot":"","sources":["../src/frontmatter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAU,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,KAAK,YAAY,EAAE,MAAM,WAAW,CAAC;AAE/D,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,IAAI,GAAG,MAAM,CAAC;CACjC;AAeD,
|
|
1
|
+
{"version":3,"file":"frontmatter.d.ts","sourceRoot":"","sources":["../src/frontmatter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAU,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,KAAK,YAAY,EAAE,MAAM,WAAW,CAAC;AAE/D,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,IAAI,GAAG,MAAM,CAAC;CACjC;AAeD,oFAAoF;AACpF,eAAO,MAAM,aAAa,SAClB,YAAY,UACV,MAAM,KACb,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,eAAe,CAoC9C,CAAC"}
|
package/dist/frontmatter.js
CHANGED
|
@@ -12,7 +12,7 @@ const closingDelimiterAt = (source, newline, from) => {
|
|
|
12
12
|
}
|
|
13
13
|
return -1;
|
|
14
14
|
};
|
|
15
|
-
/** Splits a Markdown file into
|
|
15
|
+
/** Splits a Markdown file into YAML frontmatter and body without parsing either. */
|
|
16
16
|
export const splitMarkdown = (file, source) => {
|
|
17
17
|
const newline = source.startsWith("---\r\n")
|
|
18
18
|
? "\r\n"
|
package/dist/frontmatter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frontmatter.js","sourceRoot":"","sources":["../src/frontmatter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,eAAe,EAAqB,MAAM,WAAW,CAAC;AAQ/D,MAAM,kBAAkB,GAAG,CAAC,MAAc,EAAE,OAAsB,EAAE,IAAY,EAAU,EAAE;IAC1F,MAAM,SAAS,GAAG,GAAG,OAAO,KAAK,CAAC;IAClC,IAAI,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAChD,OAAO,SAAS,IAAI,CAAC,EAAE,CAAC;QACtB,MAAM,cAAc,GAAG,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC;QACpD,IAAI,cAAc,KAAK,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,cAAc,CAAC,EAAE,CAAC;YACnF,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IACxD,CAAC;IACD,OAAO,CAAC,CAAC,CAAC;AACZ,CAAC,CAAC;AAEF,
|
|
1
|
+
{"version":3,"file":"frontmatter.js","sourceRoot":"","sources":["../src/frontmatter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,eAAe,EAAqB,MAAM,WAAW,CAAC;AAQ/D,MAAM,kBAAkB,GAAG,CAAC,MAAc,EAAE,OAAsB,EAAE,IAAY,EAAU,EAAE;IAC1F,MAAM,SAAS,GAAG,GAAG,OAAO,KAAK,CAAC;IAClC,IAAI,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAChD,OAAO,SAAS,IAAI,CAAC,EAAE,CAAC;QACtB,MAAM,cAAc,GAAG,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC;QACpD,IAAI,cAAc,KAAK,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,cAAc,CAAC,EAAE,CAAC;YACnF,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IACxD,CAAC;IACD,OAAO,CAAC,CAAC,CAAC;AACZ,CAAC,CAAC;AAEF,oFAAoF;AACpF,MAAM,CAAC,MAAM,aAAa,GAAG,CAC3B,IAAkB,EAClB,MAAc,EACiC,EAAE;IACjD,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC;QAC1C,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC;YAC1B,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,SAAS,CAAC;IAChB,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,IAAI,eAAe,CAAC;YACzB,IAAI;YACJ,KAAK,EAAE,aAAa;YACpB,UAAU,EAAE,MAAM,CAAC,IAAI,EAAE;YACzB,OAAO,EAAE,oEAAoE;SAC9E,CAAC,CAAC;IACL,CAAC;IAED,MAAM,SAAS,GAAG,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IACrC,MAAM,gBAAgB,GAAG,GAAG,OAAO,KAAK,CAAC;IACzC,MAAM,OAAO,GAAG,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IAC/D,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;QAChB,OAAO,IAAI,eAAe,CAAC;YACzB,IAAI;YACJ,KAAK,EAAE,aAAa;YACpB,UAAU,EAAE,MAAM,CAAC,IAAI,EAAE;YACzB,OAAO,EAAE,qDAAqD;SAC/D,CAAC,CAAC;IACL,CAAC;IAED,MAAM,cAAc,GAAG,OAAO,GAAG,gBAAgB,CAAC,MAAM,CAAC;IACzD,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,cAAc,CAAC;QAC1D,CAAC,CAAC,cAAc,GAAG,OAAO,CAAC,MAAM;QACjC,CAAC,CAAC,cAAc,CAAC;IACnB,OAAO,MAAM,CAAC,OAAO,CAAC;QACpB,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC;QACtC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC;QAC7B,OAAO;KACR,CAAC,CAAC;AACL,CAAC,CAAC"}
|
|
@@ -12,7 +12,7 @@ declare const UndeclaredTriggerLabelWarning_base: Schema.Class<UndeclaredTrigger
|
|
|
12
12
|
}>, {}>;
|
|
13
13
|
export declare class UndeclaredTriggerLabelWarning extends UndeclaredTriggerLabelWarning_base {
|
|
14
14
|
}
|
|
15
|
-
/**
|
|
15
|
+
/** The diagnostics that don't block a load. */
|
|
16
16
|
export declare const ConfigWarning: Schema.Union<readonly [typeof UndeclaredLaneLabelWarning, typeof UndeclaredTriggerLabelWarning]>;
|
|
17
17
|
export type ConfigWarning = typeof ConfigWarning.Type;
|
|
18
18
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagnostics.d.ts","sourceRoot":"","sources":["../../src/instance/diagnostics.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;;;;;;AAKhC,qBAAa,0BAA2B,SAAQ,+BAM9C;CAAG;;;;;AAEL,qBAAa,6BAA8B,SAAQ,kCAKjD;CAAG;AAEL
|
|
1
|
+
{"version":3,"file":"diagnostics.d.ts","sourceRoot":"","sources":["../../src/instance/diagnostics.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;;;;;;AAKhC,qBAAa,0BAA2B,SAAQ,+BAM9C;CAAG;;;;;AAEL,qBAAa,6BAA8B,SAAQ,kCAKjD;CAAG;AAEL,+CAA+C;AAC/C,eAAO,MAAM,aAAa,kGAGxB,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,OAAO,aAAa,CAAC,IAAI,CAAC"}
|
|
@@ -14,7 +14,7 @@ export class UndeclaredTriggerLabelWarning extends Schema.TaggedClass("@usine/co
|
|
|
14
14
|
label: GitHubLabelName,
|
|
15
15
|
}) {
|
|
16
16
|
}
|
|
17
|
-
/**
|
|
17
|
+
/** The diagnostics that don't block a load. */
|
|
18
18
|
export const ConfigWarning = Schema.Union([
|
|
19
19
|
UndeclaredLaneLabelWarning,
|
|
20
20
|
UndeclaredTriggerLabelWarning,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../../src/instance/diagnostics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,MAAM,OAAO,0BAA2B,SAAQ,MAAM,CAAC,WAAW,CAChE,0CAA0C,CAC3C,CAAC,4BAA4B,EAAE;IAC9B,UAAU,EAAE,cAAc;IAC1B,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,eAAe;CACvB,CAAC;CAAG;AAEL,MAAM,OAAO,6BAA8B,SAAQ,MAAM,CAAC,WAAW,CACnE,6CAA6C,CAC9C,CAAC,+BAA+B,EAAE;IACjC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI;IAC1B,KAAK,EAAE,eAAe;CACvB,CAAC;CAAG;AAEL
|
|
1
|
+
{"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../../src/instance/diagnostics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,MAAM,OAAO,0BAA2B,SAAQ,MAAM,CAAC,WAAW,CAChE,0CAA0C,CAC3C,CAAC,4BAA4B,EAAE;IAC9B,UAAU,EAAE,cAAc;IAC1B,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,eAAe;CACvB,CAAC;CAAG;AAEL,MAAM,OAAO,6BAA8B,SAAQ,MAAM,CAAC,WAAW,CACnE,6CAA6C,CAC9C,CAAC,+BAA+B,EAAE;IACjC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI;IAC1B,KAAK,EAAE,eAAe;CACvB,CAAC;CAAG;AAEL,+CAA+C;AAC/C,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC;IACxC,0BAA0B;IAC1B,6BAA6B;CAC9B,CAAC,CAAC"}
|
|
@@ -10,7 +10,7 @@ declare const LoadedInstance_base: Schema.Class<LoadedInstance, Schema.Struct<{
|
|
|
10
10
|
readonly quarantinedLoops: Schema.$Array<typeof QuarantinedLoop>;
|
|
11
11
|
readonly warnings: Schema.$Array<Schema.Union<readonly [typeof import("./diagnostics.ts").UndeclaredLaneLabelWarning, typeof import("./diagnostics.ts").UndeclaredTriggerLabelWarning]>>;
|
|
12
12
|
}>, {}>;
|
|
13
|
-
/**
|
|
13
|
+
/** A snapshot of an instance folder. Construction fails if a loop references an unknown agent or selector entry. */
|
|
14
14
|
export declare class LoadedInstance extends LoadedInstance_base {
|
|
15
15
|
}
|
|
16
16
|
export { UndeclaredLaneLabelWarning, UndeclaredTriggerLabelWarning, ConfigWarning, } from "./diagnostics.ts";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instance.d.ts","sourceRoot":"","sources":["../../src/instance/instance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,MAAM,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAY,MAAM,YAAY,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;;;;;;;;;AAItD,
|
|
1
|
+
{"version":3,"file":"instance.d.ts","sourceRoot":"","sources":["../../src/instance/instance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,MAAM,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAY,MAAM,YAAY,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;;;;;;;;;AAItD,oHAAoH;AACpH,qBAAa,cAAe,SAAQ,mBAmBnC;CAAG;AAEJ,OAAO,EACL,0BAA0B,EAC1B,6BAA6B,EAC7B,aAAa,GACd,MAAM,kBAAkB,CAAC"}
|
|
@@ -4,7 +4,7 @@ import { LoopFile, QuarantinedLoop, loopPath } from "../loop.js";
|
|
|
4
4
|
import { AgentFile, InvalidAgent } from "../agent.js";
|
|
5
5
|
import { ConfigWarning } from "./diagnostics.js";
|
|
6
6
|
import { referenceIndex, loopReferenceFailure } from "./references.js";
|
|
7
|
-
/**
|
|
7
|
+
/** A snapshot of an instance folder. Construction fails if a loop references an unknown agent or selector entry. */
|
|
8
8
|
export class LoadedInstance extends Schema.Class("@usine/config/LoadedInstance")(Schema.Struct({
|
|
9
9
|
config: UsineConfig,
|
|
10
10
|
agents: Schema.Array(AgentFile),
|
|
@@ -15,7 +15,7 @@ export class LoadedInstance extends Schema.Class("@usine/config/LoadedInstance")
|
|
|
15
15
|
}).check(Schema.makeFilter(({ agents, config, loops }) => {
|
|
16
16
|
const references = referenceIndex(config, agents);
|
|
17
17
|
return loops.every((loop) => Option.isNone(loopReferenceFailure(loopPath(loop.name), loop, references)));
|
|
18
|
-
}, { message: "Expected every loop to reference
|
|
18
|
+
}, { message: "Expected every loop to reference only loaded agents and registry entries" }))) {
|
|
19
19
|
}
|
|
20
20
|
export { UndeclaredLaneLabelWarning, UndeclaredTriggerLabelWarning, ConfigWarning, } from "./diagnostics.js";
|
|
21
21
|
//# sourceMappingURL=instance.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instance.js","sourceRoot":"","sources":["../../src/instance/instance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAEvE,
|
|
1
|
+
{"version":3,"file":"instance.js","sourceRoot":"","sources":["../../src/instance/instance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAEvE,oHAAoH;AACpH,MAAM,OAAO,cAAe,SAAQ,MAAM,CAAC,KAAK,CAAiB,8BAA8B,CAAC,CAC9F,MAAM,CAAC,MAAM,CAAC;IACZ,MAAM,EAAE,WAAW;IACnB,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC;IAC/B,aAAa,EAAE,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC;IACzC,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC;IAC7B,gBAAgB,EAAE,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC;IAC/C,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC;CACtC,CAAC,CAAC,KAAK,CACN,MAAM,CAAC,UAAU,CACf,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE;IAC5B,MAAM,UAAU,GAAG,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClD,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAC1B,MAAM,CAAC,MAAM,CAAC,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,CAC3E,CAAC;AACJ,CAAC,EACD,EAAE,OAAO,EAAE,0EAA0E,EAAE,CACxF,CACF,CACF;CAAG;AAEJ,OAAO,EACL,0BAA0B,EAC1B,6BAA6B,EAC7B,aAAa,GACd,MAAM,kBAAkB,CAAC"}
|
|
@@ -1,21 +1,20 @@
|
|
|
1
1
|
import { AgentName } from "@usine/core/agent";
|
|
2
|
-
import { RepositoryName } from "@usine/core/repository";
|
|
3
2
|
import { Option } from "effect";
|
|
4
3
|
import { InstancePath, ConfigFileError } from "../file.ts";
|
|
5
4
|
import { RegistryTag, UsineConfig } from "../factory.ts";
|
|
6
5
|
import { LoopFile } from "../loop.ts";
|
|
7
6
|
import type { AgentFile } from "../agent.ts";
|
|
8
|
-
/** The
|
|
7
|
+
/** The names a loop can reference in a loaded instance. */
|
|
9
8
|
export interface ReferenceIndex {
|
|
10
9
|
readonly agentNames: ReadonlySet<AgentName>;
|
|
11
10
|
readonly registryTags: ReadonlySet<RegistryTag>;
|
|
12
|
-
|
|
11
|
+
/** The registry repository names, canonicalized with `canonicalRepositoryName`. */
|
|
12
|
+
readonly repoNames: ReadonlySet<string>;
|
|
13
13
|
}
|
|
14
14
|
export declare const referenceIndex: (config: UsineConfig, agents: ReadonlyArray<AgentFile>) => ReferenceIndex;
|
|
15
15
|
/**
|
|
16
|
-
* Returns the
|
|
17
|
-
* or
|
|
18
|
-
* per file and LoadedInstance refuses to construct with it.
|
|
16
|
+
* Returns the error for a loop that references an agent or selector entry the instance doesn't
|
|
17
|
+
* have, or `None` if every reference resolves.
|
|
19
18
|
*/
|
|
20
19
|
export declare const loopReferenceFailure: (file: InstancePath, loop: LoopFile, references: ReferenceIndex) => Option.Option<ConfigFileError>;
|
|
21
20
|
//# sourceMappingURL=references.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"references.d.ts","sourceRoot":"","sources":["../../src/instance/references.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"references.d.ts","sourceRoot":"","sources":["../../src/instance/references.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE9C,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,2DAA2D;AAC3D,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IAC5C,QAAQ,CAAC,YAAY,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;IAChD,mFAAmF;IACnF,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACzC;AAED,eAAO,MAAM,cAAc,WACjB,WAAW,UACX,aAAa,CAAC,SAAS,CAAC,KAC/B,cAID,CAAC;AAKH;;;GAGG;AACH,eAAO,MAAM,oBAAoB,SACzB,YAAY,QACZ,QAAQ,cACF,cAAc,KACzB,MAAM,CAAC,MAAM,CAAC,eAAe,CAkC/B,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AgentName } from "@usine/core/agent";
|
|
2
|
-
import {
|
|
2
|
+
import { canonicalRepositoryName } from "@usine/core/repository";
|
|
3
3
|
import { Option } from "effect";
|
|
4
4
|
import { InstancePath, ConfigFileError } from "../file.js";
|
|
5
5
|
import { RegistryTag, UsineConfig } from "../factory.js";
|
|
@@ -7,30 +7,30 @@ import { LoopFile } from "../loop.js";
|
|
|
7
7
|
export const referenceIndex = (config, agents) => ({
|
|
8
8
|
agentNames: new Set(agents.map(({ name }) => name)),
|
|
9
9
|
registryTags: new Set(config.repos.flatMap(({ tags }) => tags)),
|
|
10
|
-
repoNames: new Set(config.repos.map(({ name }) => name)),
|
|
10
|
+
repoNames: new Set(config.repos.map(({ name }) => canonicalRepositoryName(name))),
|
|
11
11
|
});
|
|
12
|
+
const quoted = (names) => names.map((name) => `"${name}"`).join(", ");
|
|
12
13
|
/**
|
|
13
|
-
* Returns the
|
|
14
|
-
* or
|
|
15
|
-
* per file and LoadedInstance refuses to construct with it.
|
|
14
|
+
* Returns the error for a loop that references an agent or selector entry the instance doesn't
|
|
15
|
+
* have, or `None` if every reference resolves.
|
|
16
16
|
*/
|
|
17
17
|
export const loopReferenceFailure = (file, loop, references) => {
|
|
18
18
|
const referenceError = (message) => Option.some(new ConfigFileError({ file, stage: "reference", expression: Option.none(), message }));
|
|
19
19
|
if (!references.agentNames.has(loop.agent)) {
|
|
20
|
-
return referenceError(`Unknown agent
|
|
20
|
+
return referenceError(`Unknown agent "${loop.agent}": agents/${loop.agent}.md is missing or invalid. Fix the agent file, or set agent to an existing agent.`);
|
|
21
21
|
}
|
|
22
22
|
if (Option.isNone(loop.selector))
|
|
23
23
|
return Option.none();
|
|
24
24
|
if (Option.isSome(loop.selector.value.repos)) {
|
|
25
|
-
const missing = loop.selector.value.repos.value.filter((name) => !references.repoNames.has(name));
|
|
25
|
+
const missing = loop.selector.value.repos.value.filter((name) => !references.repoNames.has(canonicalRepositoryName(name)));
|
|
26
26
|
if (missing.length > 0) {
|
|
27
|
-
return referenceError(`Unknown selector
|
|
27
|
+
return referenceError(`Unknown repositories in selector.repos: ${quoted(missing)}. Add them under repos in usine.yaml.`);
|
|
28
28
|
}
|
|
29
29
|
}
|
|
30
30
|
if (Option.isSome(loop.selector.value.tags)) {
|
|
31
31
|
const missing = loop.selector.value.tags.value.filter((tag) => !references.registryTags.has(tag));
|
|
32
32
|
if (missing.length > 0) {
|
|
33
|
-
return referenceError(`Unknown selector
|
|
33
|
+
return referenceError(`Unknown tags in selector.tags: ${quoted(missing)}. Add them to a repository's tags in usine.yaml.`);
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
36
|
return Option.none();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"references.js","sourceRoot":"","sources":["../../src/instance/references.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"references.js","sourceRoot":"","sources":["../../src/instance/references.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ import { ConfigParser } from "./parser.ts";
|
|
|
6
6
|
declare const InstanceFolder_base: Context.ServiceClass<InstanceFolder, "@usine/config/InstanceFolder", {
|
|
7
7
|
readonly load: (root: InstanceDirectory) => Effect.Effect<LoadedInstance, FactoryConfigError>;
|
|
8
8
|
}>;
|
|
9
|
-
/**
|
|
9
|
+
/** The service that loads an instance folder. An invalid `usine.yaml` fails the load; an invalid loop is quarantined. */
|
|
10
10
|
export declare class InstanceFolder extends InstanceFolder_base {
|
|
11
11
|
static readonly layer: Layer.Layer<InstanceFolder, never, ConfigParser | FileSystem.FileSystem | Path.Path>;
|
|
12
12
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instance-folder.d.ts","sourceRoot":"","sources":["../src/instance-folder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAU,IAAI,EAAU,MAAM,QAAQ,CAAC;AAElF,OAAO,EAAmB,kBAAkB,EAAgB,MAAM,WAAW,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAGxD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;;mBAoBxB,CAAC,IAAI,EAAE,iBAAiB,KAAK,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC;;AAJjG,
|
|
1
|
+
{"version":3,"file":"instance-folder.d.ts","sourceRoot":"","sources":["../src/instance-folder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAU,IAAI,EAAU,MAAM,QAAQ,CAAC;AAElF,OAAO,EAAmB,kBAAkB,EAAgB,MAAM,WAAW,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAGxD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;;mBAoBxB,CAAC,IAAI,EAAE,iBAAiB,KAAK,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC;;AAJjG,yHAAyH;AACzH,qBAAa,cAAe,SAAQ,mBAKD;IACjC,MAAM,CAAC,QAAQ,CAAC,KAAK,uFAmLnB;CACH"}
|
package/dist/instance-folder.js
CHANGED
|
@@ -12,7 +12,7 @@ const factoryError = (error) => new FactoryConfigError({
|
|
|
12
12
|
stage: error.stage,
|
|
13
13
|
message: error.message,
|
|
14
14
|
});
|
|
15
|
-
/**
|
|
15
|
+
/** The service that loads an instance folder. An invalid `usine.yaml` fails the load; an invalid loop is quarantined. */
|
|
16
16
|
export class InstanceFolder extends Context.Service()("@usine/config/InstanceFolder") {
|
|
17
17
|
static layer = Layer.effect(InstanceFolder, Effect.gen(function* () {
|
|
18
18
|
const fileSystem = yield* FileSystem.FileSystem;
|
|
@@ -71,6 +71,18 @@ export class InstanceFolder extends Context.Service()("@usine/config/InstanceFol
|
|
|
71
71
|
else
|
|
72
72
|
loops.push(entry.result.success);
|
|
73
73
|
}
|
|
74
|
+
yield* Effect.forEach(invalidAgents, ({ file, error }) => Effect.logWarning("Agent file left out of the roster; Loops that use it are quarantined", { file, stage: error.stage, message: error.message }), { discard: true });
|
|
75
|
+
yield* Effect.forEach(quarantinedLoops, ({ file, error }) => Effect.logWarning("Loop quarantined; it opens no Runs until its file is fixed", {
|
|
76
|
+
file,
|
|
77
|
+
stage: error.stage,
|
|
78
|
+
message: error.message,
|
|
79
|
+
expression: Option.getOrUndefined(error.expression),
|
|
80
|
+
}), { discard: true });
|
|
81
|
+
yield* Effect.annotateCurrentSpan({
|
|
82
|
+
loops: loops.length,
|
|
83
|
+
quarantinedLoops: quarantinedLoops.length,
|
|
84
|
+
invalidAgents: invalidAgents.length,
|
|
85
|
+
});
|
|
74
86
|
const warnings = yield* parser.configWarnings(config, loops).pipe(Effect.catch((error) => Effect.logError("Config warning analysis failed; loaded the valid instance without warnings", {
|
|
75
87
|
errorTag: error._tag,
|
|
76
88
|
expression: error.source,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instance-folder.js","sourceRoot":"","sources":["../src/instance-folder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAClF,OAAO,EAAkB,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAiB,eAAe,EAAE,MAAM,WAAW,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAChF,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAO5B,MAAM,YAAY,GAAG,CAAC,KAAsB,EAAsB,EAAE,CAClE,IAAI,kBAAkB,CAAC;IACrB,IAAI,EAAE,KAAK,CAAC,IAAI;IAChB,KAAK,EAAE,KAAK,CAAC,KAAK;IAClB,OAAO,EAAE,KAAK,CAAC,OAAO;CACvB,CAAC,CAAC;AAEL,
|
|
1
|
+
{"version":3,"file":"instance-folder.js","sourceRoot":"","sources":["../src/instance-folder.ts"],"names":[],"mappings":"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"}
|
package/dist/label.d.ts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { Schema } from "effect";
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
4
|
-
*
|
|
3
|
+
* A trimmed label name of at most 50 characters, as GitHub stores it. Any other name never
|
|
4
|
+
* matches the GitHub label and is re-created every cycle.
|
|
5
5
|
*/
|
|
6
6
|
export declare const GitHubLabelName: Schema.brand<Schema.String, "GitHubLabelName">;
|
|
7
7
|
export type GitHubLabelName = typeof GitHubLabelName.Type;
|
|
8
|
-
/**
|
|
8
|
+
/** Returns the comparison key for a label name; GitHub compares label names case-insensitively. */
|
|
9
9
|
export declare const canonicalLabelName: (name: string) => string;
|
|
10
|
-
/**
|
|
10
|
+
/** A label color as six hex digits without a leading `#`, as GitHub stores it. */
|
|
11
11
|
export declare const GitHubLabelColor: Schema.brand<Schema.String, "GitHubLabelColor">;
|
|
12
12
|
export type GitHubLabelColor = typeof GitHubLabelColor.Type;
|
|
13
13
|
declare const DeclaredLabel_base: Schema.Class<DeclaredLabel, Schema.Struct<{
|
|
@@ -15,7 +15,7 @@ declare const DeclaredLabel_base: Schema.Class<DeclaredLabel, Schema.Struct<{
|
|
|
15
15
|
readonly color: Schema.OptionFromOptionalKey<Schema.brand<Schema.String, "GitHubLabelColor">>;
|
|
16
16
|
readonly description: Schema.OptionFromOptionalKey<Schema.String>;
|
|
17
17
|
}>, {}>;
|
|
18
|
-
/** A label
|
|
18
|
+
/** A label created in every managed repository. */
|
|
19
19
|
export declare class DeclaredLabel extends DeclaredLabel_base {
|
|
20
20
|
}
|
|
21
21
|
export {};
|
package/dist/label.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"label.d.ts","sourceRoot":"","sources":["../src/label.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC;;;GAGG;AACH,eAAO,MAAM,eAAe,gDAKW,CAAC;AAExC,MAAM,MAAM,eAAe,GAAG,OAAO,eAAe,CAAC,IAAI,CAAC;AAE1D
|
|
1
|
+
{"version":3,"file":"label.d.ts","sourceRoot":"","sources":["../src/label.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC;;;GAGG;AACH,eAAO,MAAM,eAAe,gDAKW,CAAC;AAExC,MAAM,MAAM,eAAe,GAAG,OAAO,eAAe,CAAC,IAAI,CAAC;AAE1D,mGAAmG;AACnG,eAAO,MAAM,kBAAkB,SAAU,MAAM,KAAG,MAA4B,CAAC;AAE/E,kFAAkF;AAClF,eAAO,MAAM,gBAAgB,iDAIW,CAAC;AAEzC,MAAM,MAAM,gBAAgB,GAAG,OAAO,gBAAgB,CAAC,IAAI,CAAC;;;;;;AAQ5D,mDAAmD;AACnD,qBAAa,aAAc,SAAQ,kBAIjC;CAAG"}
|
package/dist/label.js
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
import { Schema } from "effect";
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
4
|
-
*
|
|
3
|
+
* A trimmed label name of at most 50 characters, as GitHub stores it. Any other name never
|
|
4
|
+
* matches the GitHub label and is re-created every cycle.
|
|
5
5
|
*/
|
|
6
6
|
export const GitHubLabelName = Schema.String.check(Schema.isPattern(/^\S(?:.*\S)?$/u, {
|
|
7
7
|
message: "Expected a GitHub label name without surrounding whitespace",
|
|
8
8
|
}), Schema.isMaxLength(50, { message: "Expected a GitHub label name of at most 50 characters" })).pipe(Schema.brand("GitHubLabelName"));
|
|
9
|
-
/**
|
|
9
|
+
/** Returns the comparison key for a label name; GitHub compares label names case-insensitively. */
|
|
10
10
|
export const canonicalLabelName = (name) => name.toLowerCase();
|
|
11
|
-
/**
|
|
11
|
+
/** A label color as six hex digits without a leading `#`, as GitHub stores it. */
|
|
12
12
|
export const GitHubLabelColor = Schema.String.check(Schema.isPattern(/^[0-9a-fA-F]{6}$/u, {
|
|
13
13
|
message: "Expected a six-digit hex GitHub label color without #",
|
|
14
14
|
})).pipe(Schema.brand("GitHubLabelColor"));
|
|
15
15
|
const GitHubLabelDescription = Schema.String.check(Schema.isMaxLength(100, {
|
|
16
16
|
message: "Expected a GitHub label description of at most 100 characters",
|
|
17
17
|
}));
|
|
18
|
-
/** A label
|
|
18
|
+
/** A label created in every managed repository. */
|
|
19
19
|
export class DeclaredLabel extends Schema.Class("@usine/config/DeclaredLabel")({
|
|
20
20
|
name: GitHubLabelName,
|
|
21
21
|
color: Schema.OptionFromOptionalKey(GitHubLabelColor),
|
package/dist/label.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"label.js","sourceRoot":"","sources":["../src/label.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAChD,MAAM,CAAC,SAAS,CAAC,gBAAgB,EAAE;IACjC,OAAO,EAAE,6DAA6D;CACvE,CAAC,EACF,MAAM,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,uDAAuD,EAAE,CAAC,CAC7F,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;AAIxC
|
|
1
|
+
{"version":3,"file":"label.js","sourceRoot":"","sources":["../src/label.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAChD,MAAM,CAAC,SAAS,CAAC,gBAAgB,EAAE;IACjC,OAAO,EAAE,6DAA6D;CACvE,CAAC,EACF,MAAM,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,uDAAuD,EAAE,CAAC,CAC7F,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;AAIxC,mGAAmG;AACnG,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;AAE/E,kFAAkF;AAClF,MAAM,CAAC,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CACjD,MAAM,CAAC,SAAS,CAAC,mBAAmB,EAAE;IACpC,OAAO,EAAE,uDAAuD;CACjE,CAAC,CACH,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC;AAIzC,MAAM,sBAAsB,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAChD,MAAM,CAAC,WAAW,CAAC,GAAG,EAAE;IACtB,OAAO,EAAE,+DAA+D;CACzE,CAAC,CACH,CAAC;AAEF,mDAAmD;AACnD,MAAM,OAAO,aAAc,SAAQ,MAAM,CAAC,KAAK,CAAgB,6BAA6B,CAAC,CAAC;IAC5F,IAAI,EAAE,eAAe;IACrB,KAAK,EAAE,MAAM,CAAC,qBAAqB,CAAC,gBAAgB,CAAC;IACrD,WAAW,EAAE,MAAM,CAAC,qBAAqB,CAAC,sBAAsB,CAAC;CAClE,CAAC;CAAG"}
|
package/dist/loop.d.ts
CHANGED
|
@@ -22,21 +22,22 @@ declare const LoopFile_base: Schema.Class<LoopFile, Schema.Struct<{
|
|
|
22
22
|
}>, never, never>>;
|
|
23
23
|
readonly approval: Schema.Literals<readonly ["none", "required"]>;
|
|
24
24
|
readonly maxCycles: Schema.withConstructorDefault<Schema.withDecodingDefaultKey<Schema.brand<Schema.Int, "CycleLimit">, never>>;
|
|
25
|
+
/** The repository access of the Loop's Attempts. */
|
|
26
|
+
readonly permissions: Schema.withConstructorDefault<Schema.withDecodingDefaultKey<Schema.Literals<readonly ["write", "read"]>, never>>;
|
|
25
27
|
readonly step: Schema.brand<Schema.NonEmptyString, "StepName">;
|
|
26
28
|
readonly agent: Schema.brand<Schema.String, "AgentName">;
|
|
27
29
|
readonly body: Schema.brand<Schema.String, "PromptTemplate">;
|
|
28
30
|
}>, {}>;
|
|
29
|
-
/** A Loop parsed from `loops/<name>.md
|
|
31
|
+
/** A Loop parsed from `loops/<name>.md`. */
|
|
30
32
|
export declare class LoopFile extends LoopFile_base {
|
|
31
33
|
}
|
|
32
34
|
declare const QuarantinedLoop_base: Schema.Class<QuarantinedLoop, Schema.Struct<{
|
|
33
35
|
readonly file: Schema.brand<Schema.NonEmptyString, "InstancePath">;
|
|
34
36
|
readonly error: typeof ConfigFileError;
|
|
35
37
|
}>, {}>;
|
|
36
|
-
/** A Loop
|
|
38
|
+
/** A Loop that isn't run because its file failed to load or a reference didn't resolve. */
|
|
37
39
|
export declare class QuarantinedLoop extends QuarantinedLoop_base {
|
|
38
40
|
}
|
|
39
|
-
/** The file a loop name refers to. */
|
|
40
41
|
export declare const loopPath: (name: LoopName) => InstancePath;
|
|
41
42
|
export {};
|
|
42
43
|
//# sourceMappingURL=loop.d.ts.map
|
package/dist/loop.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loop.d.ts","sourceRoot":"","sources":["../src/loop.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"loop.d.ts","sourceRoot":"","sources":["../src/loop.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAwC,MAAM,kBAAkB,CAAC;AAElF,OAAO,EAAU,MAAM,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAW1D,kFAAkF;AAClF,eAAO,MAAM,cAAc,+CAE1B,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,OAAO,cAAc,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;IAYtD,oDAAoD;;;;;;AAVtD,4CAA4C;AAC5C,qBAAa,QAAS,SAAQ,aAiB5B;CAAG;;;;;AAEL,2FAA2F;AAC3F,qBAAa,eAAgB,SAAQ,oBAKpC;CAAG;AAEJ,eAAO,MAAM,QAAQ,SAAU,QAAQ,KAAG,YAAqD,CAAC"}
|
package/dist/loop.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { AgentName } from "@usine/core/agent";
|
|
2
2
|
import { CycleLimit, DEFAULT_CYCLE_LIMIT } from "@usine/core/cycle-budget";
|
|
3
|
-
import { LoopName, ApprovalRequirement } from "@usine/core/loop";
|
|
3
|
+
import { LoopName, ApprovalRequirement, LoopPermissions } from "@usine/core/loop";
|
|
4
4
|
import { StepName } from "@usine/core/step";
|
|
5
5
|
import { Effect, Schema } from "effect";
|
|
6
6
|
import { InstancePath, ConfigFileError } from "./file.js";
|
|
@@ -8,29 +8,30 @@ import { nonBlankString } from "./checks.js";
|
|
|
8
8
|
import { ValidSelector } from "./selector.js";
|
|
9
9
|
import { Trigger } from "./trigger.js";
|
|
10
10
|
const KebabCase = Schema.isPattern(/^[a-z0-9]+(?:-[a-z0-9]+)*$/u, {
|
|
11
|
-
message: "Expected a kebab-case
|
|
11
|
+
message: "Expected a kebab-case file name",
|
|
12
12
|
});
|
|
13
13
|
const LoopFileName = LoopName.check(KebabCase);
|
|
14
14
|
/** The Loop's Markdown task template, with CEL expressions inside `{{ ... }}`. */
|
|
15
15
|
export const PromptTemplate = nonBlankString("Expected a non-blank Markdown prompt").pipe(Schema.brand("PromptTemplate"));
|
|
16
|
-
/** A Loop parsed from `loops/<name>.md
|
|
16
|
+
/** A Loop parsed from `loops/<name>.md`. */
|
|
17
17
|
export class LoopFile extends Schema.Class("@usine/config/LoopFile")({
|
|
18
18
|
name: LoopFileName,
|
|
19
19
|
trigger: Trigger,
|
|
20
20
|
selector: Schema.Option(ValidSelector),
|
|
21
21
|
approval: ApprovalRequirement,
|
|
22
22
|
maxCycles: CycleLimit.pipe(Schema.withDecodingDefaultKey(Effect.succeed(DEFAULT_CYCLE_LIMIT)), Schema.withConstructorDefault(Effect.succeed(DEFAULT_CYCLE_LIMIT))),
|
|
23
|
+
/** The repository access of the Loop's Attempts. */
|
|
24
|
+
permissions: LoopPermissions.pipe(Schema.withDecodingDefaultKey(Effect.succeed("write")), Schema.withConstructorDefault(Effect.succeed("write"))),
|
|
23
25
|
step: StepName,
|
|
24
26
|
agent: AgentName,
|
|
25
27
|
body: PromptTemplate,
|
|
26
28
|
}) {
|
|
27
29
|
}
|
|
28
|
-
/** A Loop
|
|
30
|
+
/** A Loop that isn't run because its file failed to load or a reference didn't resolve. */
|
|
29
31
|
export class QuarantinedLoop extends Schema.Class("@usine/config/QuarantinedLoop")({
|
|
30
32
|
file: InstancePath,
|
|
31
33
|
error: ConfigFileError,
|
|
32
34
|
}) {
|
|
33
35
|
}
|
|
34
|
-
/** The file a loop name refers to. */
|
|
35
36
|
export const loopPath = (name) => InstancePath.make(`loops/${name}.md`);
|
|
36
37
|
//# sourceMappingURL=loop.js.map
|
package/dist/loop.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loop.js","sourceRoot":"","sources":["../src/loop.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC3E,OAAO,EAAE,QAAQ,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"loop.js","sourceRoot":"","sources":["../src/loop.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC3E,OAAO,EAAE,QAAQ,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAClF,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,6BAA6B,EAAE;IAChE,OAAO,EAAE,iCAAiC;CAC3C,CAAC,CAAC;AAEH,MAAM,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;AAE/C,kFAAkF;AAClF,MAAM,CAAC,MAAM,cAAc,GAAG,cAAc,CAAC,sCAAsC,CAAC,CAAC,IAAI,CACvF,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAC/B,CAAC;AAIF,4CAA4C;AAC5C,MAAM,OAAO,QAAS,SAAQ,MAAM,CAAC,KAAK,CAAW,wBAAwB,CAAC,CAAC;IAC7E,IAAI,EAAE,YAAY;IAClB,OAAO,EAAE,OAAO;IAChB,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC;IACtC,QAAQ,EAAE,mBAAmB;IAC7B,SAAS,EAAE,UAAU,CAAC,IAAI,CACxB,MAAM,CAAC,sBAAsB,CAAC,MAAM,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,EAClE,MAAM,CAAC,sBAAsB,CAAC,MAAM,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CACnE;IACD,oDAAoD;IACpD,WAAW,EAAE,eAAe,CAAC,IAAI,CAC/B,MAAM,CAAC,sBAAsB,CAAC,MAAM,CAAC,OAAO,CAAC,OAAgB,CAAC,CAAC,EAC/D,MAAM,CAAC,sBAAsB,CAAC,MAAM,CAAC,OAAO,CAAC,OAAgB,CAAC,CAAC,CAChE;IACD,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,SAAS;IAChB,IAAI,EAAE,cAAc;CACrB,CAAC;CAAG;AAEL,2FAA2F;AAC3F,MAAM,OAAO,eAAgB,SAAQ,MAAM,CAAC,KAAK,CAAkB,+BAA+B,CAAC,CACjG;IACE,IAAI,EAAE,YAAY;IAClB,KAAK,EAAE,eAAe;CACvB,CACF;CAAG;AAEJ,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,IAAc,EAAgB,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,IAAI,KAAK,CAAC,CAAC"}
|
package/dist/parser.d.ts
CHANGED
|
@@ -6,18 +6,18 @@ import { type ConfigWarning } from "./instance/diagnostics.ts";
|
|
|
6
6
|
import { LoopFile } from "./loop.ts";
|
|
7
7
|
import { UsineConfig } from "./factory.ts";
|
|
8
8
|
declare const ConfigParser_base: Context.ServiceClass<ConfigParser, "@usine/config/ConfigParser", {
|
|
9
|
-
/**
|
|
9
|
+
/** Parses `usine.yaml` contents; `file` is used only in diagnostics. */
|
|
10
10
|
readonly parseUsineYaml: (file: InstancePath, source: string) => Effect.Effect<UsineConfig, ConfigFileError>;
|
|
11
|
-
/**
|
|
11
|
+
/** Parses an Agent file, taking the Agent name from `file`. */
|
|
12
12
|
readonly parseAgentFile: (file: InstancePath, source: string) => Effect.Effect<AgentFile, ConfigFileError>;
|
|
13
|
-
/**
|
|
13
|
+
/** Parses a Loop file and checks its `if` and prompt expressions, taking the Loop name from `file`. */
|
|
14
14
|
readonly parseLoopFile: (file: InstancePath, source: string) => Effect.Effect<LoopFile, ConfigFileError>;
|
|
15
|
-
/**
|
|
15
|
+
/** Returns warnings for undeclared labels used by Board lanes or Loop conditions. */
|
|
16
16
|
readonly configWarnings: (config: UsineConfig, loops: ReadonlyArray<LoopFile>) => Effect.Effect<ReadonlyArray<ConfigWarning>, ExpressionCheckError>;
|
|
17
|
-
/**
|
|
17
|
+
/** Evaluates the Loop's `{{ ... }}` expressions with `context.item` as the trigger payload and `context.repo` as the repository. */
|
|
18
18
|
readonly renderPrompt: (loop: LoopFile, context: Schema.JsonObject) => Effect.Effect<string, ConfigFileError>;
|
|
19
19
|
}>;
|
|
20
|
-
/**
|
|
20
|
+
/** The service that parses instance file contents and checks their CEL expressions. */
|
|
21
21
|
export declare class ConfigParser extends ConfigParser_base {
|
|
22
22
|
static readonly layer: Layer.Layer<ConfigParser, never, ExpressionEngine>;
|
|
23
23
|
}
|