@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.
Files changed (73) hide show
  1. package/README.md +30 -18
  2. package/dist/agent.d.ts +4 -2
  3. package/dist/agent.d.ts.map +1 -1
  4. package/dist/agent.js +13 -4
  5. package/dist/agent.js.map +1 -1
  6. package/dist/board.d.ts +8 -6
  7. package/dist/board.d.ts.map +1 -1
  8. package/dist/board.js +13 -6
  9. package/dist/board.js.map +1 -1
  10. package/dist/checks.d.ts +3 -0
  11. package/dist/checks.d.ts.map +1 -1
  12. package/dist/checks.js +3 -0
  13. package/dist/checks.js.map +1 -1
  14. package/dist/factory.d.ts +75 -22
  15. package/dist/factory.d.ts.map +1 -1
  16. package/dist/factory.js +84 -29
  17. package/dist/factory.js.map +1 -1
  18. package/dist/file.d.ts +3 -3
  19. package/dist/file.d.ts.map +1 -1
  20. package/dist/file.js +3 -3
  21. package/dist/file.js.map +1 -1
  22. package/dist/frontmatter.d.ts +1 -1
  23. package/dist/frontmatter.d.ts.map +1 -1
  24. package/dist/frontmatter.js +1 -1
  25. package/dist/frontmatter.js.map +1 -1
  26. package/dist/instance/diagnostics.d.ts +1 -1
  27. package/dist/instance/diagnostics.d.ts.map +1 -1
  28. package/dist/instance/diagnostics.js +1 -1
  29. package/dist/instance/diagnostics.js.map +1 -1
  30. package/dist/instance/instance.d.ts +1 -1
  31. package/dist/instance/instance.d.ts.map +1 -1
  32. package/dist/instance/instance.js +2 -2
  33. package/dist/instance/instance.js.map +1 -1
  34. package/dist/instance/references.d.ts +5 -6
  35. package/dist/instance/references.d.ts.map +1 -1
  36. package/dist/instance/references.js +9 -9
  37. package/dist/instance/references.js.map +1 -1
  38. package/dist/instance-folder.d.ts +1 -1
  39. package/dist/instance-folder.d.ts.map +1 -1
  40. package/dist/instance-folder.js +13 -1
  41. package/dist/instance-folder.js.map +1 -1
  42. package/dist/label.d.ts +5 -5
  43. package/dist/label.d.ts.map +1 -1
  44. package/dist/label.js +5 -5
  45. package/dist/label.js.map +1 -1
  46. package/dist/loop.d.ts +4 -3
  47. package/dist/loop.d.ts.map +1 -1
  48. package/dist/loop.js +6 -5
  49. package/dist/loop.js.map +1 -1
  50. package/dist/parser.d.ts +6 -6
  51. package/dist/parser.d.ts.map +1 -1
  52. package/dist/parser.js +27 -10
  53. package/dist/parser.js.map +1 -1
  54. package/dist/payload-slices.d.ts +4 -7
  55. package/dist/payload-slices.d.ts.map +1 -1
  56. package/dist/payload-slices.js +30 -25
  57. package/dist/payload-slices.js.map +1 -1
  58. package/dist/selector.d.ts +6 -3
  59. package/dist/selector.d.ts.map +1 -1
  60. package/dist/selector.js +10 -6
  61. package/dist/selector.js.map +1 -1
  62. package/dist/trigger.d.ts +4 -7
  63. package/dist/trigger.d.ts.map +1 -1
  64. package/dist/trigger.js +6 -9
  65. package/dist/trigger.js.map +1 -1
  66. package/dist/yaml/document.d.ts +2 -2
  67. package/dist/yaml/document.js +3 -3
  68. package/dist/yaml/document.js.map +1 -1
  69. package/dist/yaml/writer.d.ts +4 -4
  70. package/dist/yaml/writer.d.ts.map +1 -1
  71. package/dist/yaml/writer.js +5 -6
  72. package/dist/yaml/writer.js.map +1 -1
  73. package/package.json +6 -5
@@ -1 +1 @@
1
- {"version":3,"file":"factory.js","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"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"}
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
- /** Path of one authored file, relative to the instance folder. */
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
- /** A failure pinned to one authored file and one parse stage, so the UI can quarantine that file alone. */
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
- /** The registry or settings could not be loaded, which blocks the whole instance. */
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]>;
@@ -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,kEAAkE;AAClE,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,2GAA2G;AAC3G,qBAAa,eAAgB,SAAQ,oBAOnC;CAAG;;;;;;AAEL,qFAAqF;AACrF,qBAAa,kBAAmB,SAAQ,uBAMtC;CAAG;AAEL,eAAO,MAAM,WAAW,4EAAsD,CAAC;AAE/E,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAC,IAAI,CAAC"}
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
- /** Path of one authored file, relative to the instance folder. */
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
- /** A failure pinned to one authored file and one parse stage, so the UI can quarantine that file alone. */
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
- /** The registry or settings could not be loaded, which blocks the whole instance. */
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,kEAAkE;AAClE,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,2GAA2G;AAC3G,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,qFAAqF;AACrF,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"}
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"}
@@ -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 its YAML half and its body without parsing either. */
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,qFAAqF;AACrF,eAAO,MAAM,aAAa,SAClB,YAAY,UACV,MAAM,KACb,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,eAAe,CAoC9C,CAAC"}
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"}
@@ -12,7 +12,7 @@ const closingDelimiterAt = (source, newline, from) => {
12
12
  }
13
13
  return -1;
14
14
  };
15
- /** Splits a Markdown file into its YAML half and its body without parsing either. */
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"
@@ -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,qFAAqF;AACrF,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"}
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
- /** Diagnostics that do not block a load. */
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,4CAA4C;AAC5C,eAAO,MAAM,aAAa,kGAGxB,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,OAAO,aAAa,CAAC,IAAI,CAAC"}
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
- /** Diagnostics that do not block a load. */
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,4CAA4C;AAC5C,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC;IACxC,0BAA0B;IAC1B,6BAA6B;CAC9B,CAAC,CAAC"}
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
- /** One consistent snapshot of an instance folder. Construction fails if a loop references a name the instance does not have. */
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,gIAAgI;AAChI,qBAAa,cAAe,SAAQ,mBAmBnC;CAAG;AAEJ,OAAO,EACL,0BAA0B,EAC1B,6BAA6B,EAC7B,aAAa,GACd,MAAM,kBAAkB,CAAC"}
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
- /** One consistent snapshot of an instance folder. Construction fails if a loop references a name the instance does not have. */
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 the loaded roster and registry" }))) {
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,gIAAgI;AAChI,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,iEAAiE,EAAE,CAC/E,CACF,CACF;CAAG;AAEJ,OAAO,EACL,0BAA0B,EAC1B,6BAA6B,EAC7B,aAAa,GACd,MAAM,kBAAkB,CAAC"}
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 agent and selector names a loop may reference in one loaded instance. */
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
- readonly repoNames: ReadonlySet<RepositoryName>;
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 reference error that quarantines this loop, if it names an agent
17
- * or selector entry the instance does not have. The folder loader reports it
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;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,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,gFAAgF;AAChF,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IAC5C,QAAQ,CAAC,YAAY,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;IAChD,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC,cAAc,CAAC,CAAC;CACjD;AAED,eAAO,MAAM,cAAc,WACjB,WAAW,UACX,aAAa,CAAC,SAAS,CAAC,KAC/B,cAID,CAAC;AAEH;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,SACzB,YAAY,QACZ,QAAQ,cACF,cAAc,KACzB,MAAM,CAAC,MAAM,CAAC,eAAe,CA4B/B,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 { RepositoryName } from "@usine/core/repository";
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 reference error that quarantines this loop, if it names an agent
14
- * or selector entry the instance does not have. The folder loader reports it
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: ${loop.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 repos: ${missing.join(", ")}`);
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 tags: ${missing.join(", ")}`);
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,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,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;AAUtC,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,MAAmB,EACnB,MAAgC,EAChB,EAAE,CAAC,CAAC;IACpB,UAAU,EAAE,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;IACnD,YAAY,EAAE,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;IAC/D,SAAS,EAAE,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;CACzD,CAAC,CAAC;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,IAAkB,EAClB,IAAc,EACd,UAA0B,EACM,EAAE;IAClC,MAAM,cAAc,GAAG,CAAC,OAAe,EAAkC,EAAE,CACzE,MAAM,CAAC,IAAI,CACT,IAAI,eAAe,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,CACtF,CAAC;IACJ,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3C,OAAO,cAAc,CAAC,kBAAkB,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;IACxD,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;QAAE,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;IACvD,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CACpD,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAC1C,CAAC;QACF,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,OAAO,cAAc,CAAC,2BAA2B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CACnD,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAC3C,CAAC;QACF,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,OAAO,cAAc,CAAC,0BAA0B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;AACvB,CAAC,CAAC"}
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
- /** Loads an instance folder; an invalid `usine.yaml` fails the load, an invalid loop is quarantined and its siblings still load. */
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,oIAAoI;AACpI,qBAAa,cAAe,SAAQ,mBAKD;IACjC,MAAM,CAAC,QAAQ,CAAC,KAAK,uFA0JnB;CACH"}
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"}
@@ -12,7 +12,7 @@ const factoryError = (error) => new FactoryConfigError({
12
12
  stage: error.stage,
13
13
  message: error.message,
14
14
  });
15
- /** Loads an instance folder; an invalid `usine.yaml` fails the load, an invalid loop is quarantined and its siblings still load. */
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":"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"}
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
- * GitHub trims label names and caps them at 50 characters. A name outside that
4
- * contract never matches the catalog and would be re-created every cycle.
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
- /** Compare label names on this key: GitHub matches them case-insensitively. */
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
- /** Six hex digits without a leading hash, as GitHub stores label colors. */
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 the factory creates in every managed repository. */
18
+ /** A label created in every managed repository. */
19
19
  export declare class DeclaredLabel extends DeclaredLabel_base {
20
20
  }
21
21
  export {};
@@ -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,+EAA+E;AAC/E,eAAO,MAAM,kBAAkB,SAAU,MAAM,KAAG,MAA4B,CAAC;AAE/E,4EAA4E;AAC5E,eAAO,MAAM,gBAAgB,iDAIW,CAAC;AAEzC,MAAM,MAAM,gBAAgB,GAAG,OAAO,gBAAgB,CAAC,IAAI,CAAC;;;;;;AAQ5D,+DAA+D;AAC/D,qBAAa,aAAc,SAAQ,kBAIjC;CAAG"}
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
- * GitHub trims label names and caps them at 50 characters. A name outside that
4
- * contract never matches the catalog and would be re-created every cycle.
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
- /** Compare label names on this key: GitHub matches them case-insensitively. */
9
+ /** Returns the comparison key for a label name; GitHub compares label names case-insensitively. */
10
10
  export const canonicalLabelName = (name) => name.toLowerCase();
11
- /** Six hex digits without a leading hash, as GitHub stores label colors. */
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 the factory creates in every managed repository. */
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,+EAA+E;AAC/E,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;AAE/E,4EAA4E;AAC5E,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,+DAA+D;AAC/D,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"}
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`; the filename defines its identity. */
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 excluded from execution because its file could not be loaded or its references resolved. */
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
@@ -1 +1 @@
1
- {"version":3,"file":"loop.d.ts","sourceRoot":"","sources":["../src/loop.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAuB,MAAM,kBAAkB,CAAC;AAEjE,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;;;;;;;;;;;;;;;;;;;;;;;AAExD,+EAA+E;AAC/E,qBAAa,QAAS,SAAQ,aAY5B;CAAG;;;;;AAEL,sGAAsG;AACtG,qBAAa,eAAgB,SAAQ,oBAKpC;CAAG;AAEJ,sCAAsC;AACtC,eAAO,MAAM,QAAQ,SAAU,QAAQ,KAAG,YAAqD,CAAC"}
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 filename identity",
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`; the filename defines its identity. */
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 excluded from execution because its file could not be loaded or its references resolved. */
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;AACjE,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,yCAAyC;CACnD,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,+EAA+E;AAC/E,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,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,SAAS;IAChB,IAAI,EAAE,cAAc;CACrB,CAAC;CAAG;AAEL,sGAAsG;AACtG,MAAM,OAAO,eAAgB,SAAQ,MAAM,CAAC,KAAK,CAAkB,+BAA+B,CAAC,CACjG;IACE,IAAI,EAAE,YAAY;IAClB,KAAK,EAAE,eAAe;CACvB,CACF;CAAG;AAEJ,sCAAsC;AACtC,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,IAAc,EAAgB,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,IAAI,KAAK,CAAC,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
- /** Reads registry and factory settings from `source`; `file` identifies the source in diagnostics. */
9
+ /** Parses `usine.yaml` contents; `file` is used only in diagnostics. */
10
10
  readonly parseUsineYaml: (file: InstancePath, source: string) => Effect.Effect<UsineConfig, ConfigFileError>;
11
- /** Reads an Agent's brain and standing instructions; `file` supplies its filename-derived identity. */
11
+ /** Parses an Agent file, taking the Agent name from `file`. */
12
12
  readonly parseAgentFile: (file: InstancePath, source: string) => Effect.Effect<AgentFile, ConfigFileError>;
13
- /** Reads a Loop and checks its selection and prompt expressions; `file` supplies its identity. */
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
- /** Reports undeclared labels used by Board lanes or Loop conditions without rejecting otherwise valid configuration. */
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
- /** Renders the Loop's `{{ ... }}` expressions using `context.item` for the trigger payload and `context.repo` for the repository. */
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
- /** Parses supplied instance-file contents and checks the expressions that select Items and render task prompts. */
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
  }