@theholocron/astromech 5.0.0-alpha.155 → 5.0.0-alpha.157

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 CHANGED
@@ -48,7 +48,7 @@ turbo vs pnpm vs npm, or which runner:
48
48
 
49
49
  Tasks are named by **intent**, not by tool — a repo declares
50
50
  `verification.unitTests`, not `vitest`. The table below is the full
51
- registry (`TASKS` in `src/registry.ts`): every task name astromech knows,
51
+ registry (`TASKS` in `src/registry/registry.ts`): every task name astromech knows,
52
52
  what it actually runs, and why. Tool names never appear in
53
53
  `holocron.config.ts` — they're an implementation detail this table
54
54
  documents, not a naming convention repos need to follow.
@@ -89,7 +89,7 @@ required check. Each tool is still gated by its own detection rule — e.g.
89
89
  package has no local file but `@theholocron/eslint-config` resolves
90
90
  (the same shared-config splice the `tool`/`detect` runner path uses) — the
91
91
  `tool name → detection rule → local binary` mapping lives in one place,
92
- `src/linters.ts`. A repo's choice of which of these run is based on which
92
+ `src/tasks/run/linters/linters.ts`. A repo's choice of which of these run is based on which
93
93
  tasks it includes in `tasks: [...]`, same as any other task.
94
94
 
95
95
  **No super-linter.** Each task above runs its own tool directly, through
@@ -1,6 +1,18 @@
1
- import { n as TaskEntry, r as TasksConfig, t as TaskConfigItem } from "../schema.type-BUiSrwS5.mjs";
1
+ import { n as TaskEntry, r as TasksConfig, t as TaskConfigItem } from "../schema.type-B9k8EoOb.mjs";
2
2
  import { Loaded } from "@theholocron/datapad";
3
- //#region src/config/define.d.ts
3
+ //#region src/config/schema/schema.d.ts
4
+ /**
5
+ * The `tasks` config shape — the single manifest of what a repo runs.
6
+ * Read from a dedicated `astromech.config.*` file or the `tasks` key of
7
+ * `holocron.config.*` (see {@link loadTasksConfig}).
8
+ *
9
+ * Runtime validation is the loader's job, not this type's — the type only
10
+ * describes what an author writes.
11
+ */
12
+ /** Normalise a `TaskConfigItem` to a full {@link TaskEntry} with defaults applied. */
13
+ declare function normalizeTaskEntry(item: TaskConfigItem): Required<Pick<TaskEntry, "name" | "ci" | "local">> & TaskEntry;
14
+ //#endregion
15
+ //#region src/config/define/define.d.ts
4
16
  /**
5
17
  * Typed identity helper for `astromech.config.ts`:
6
18
  *
@@ -14,7 +26,7 @@ import { Loaded } from "@theholocron/datapad";
14
26
  */
15
27
  declare const defineConfig: <C extends TasksConfig>(config: C) => C;
16
28
  //#endregion
17
- //#region src/config/load.type.d.ts
29
+ //#region src/config/load/load.type.d.ts
18
30
  /**
19
31
  * The `tasks` value in each source. A dedicated `astromech.config.*`
20
32
  * default-exports the full {@link TasksConfig} object; the `tasks` key of
@@ -31,7 +43,7 @@ interface LoadTasksConfigOptions {
31
43
  holocron?: Loaded<object> | null;
32
44
  }
33
45
  //#endregion
34
- //#region src/config/load.d.ts
46
+ //#region src/config/load/load.d.ts
35
47
  /**
36
48
  * Resolve the task manifest for a repo: the `tasks` key of
37
49
  * `holocron.config.*`, then a dedicated `astromech.config.*` merged on
@@ -47,7 +59,7 @@ interface LoadTasksConfigOptions {
47
59
  */
48
60
  declare function loadTasksConfig(cwd: string, options?: LoadTasksConfigOptions): Promise<TasksConfig>;
49
61
  //#endregion
50
- //#region src/config/merge-tasks-layers.d.ts
62
+ //#region src/config/merge-tasks-layers/merge-tasks-layers.d.ts
51
63
  /**
52
64
  * The same layering as {@link loadTasksConfig}, for callers that load the two
53
65
  * sources some other way (Sentinel reads them from the GitHub API, not
@@ -57,16 +69,4 @@ declare function loadTasksConfig(cwd: string, options?: LoadTasksConfigOptions):
57
69
  */
58
70
  declare function mergeTasksLayers(parentTasks: TasksInput | undefined, dedicated: TasksInput | undefined): TasksConfig;
59
71
  //#endregion
60
- //#region src/config/schema.d.ts
61
- /**
62
- * The `tasks` config shape — the single manifest of what a repo runs.
63
- * Read from a dedicated `astromech.config.*` file or the `tasks` key of
64
- * `holocron.config.*` (see {@link loadTasksConfig}).
65
- *
66
- * Runtime validation is the loader's job, not this type's — the type only
67
- * describes what an author writes.
68
- */
69
- /** Normalise a `TaskConfigItem` to a full {@link TaskEntry} with defaults applied. */
70
- declare function normalizeTaskEntry(item: TaskConfigItem): Required<Pick<TaskEntry, "name" | "ci" | "local">> & TaskEntry;
71
- //#endregion
72
72
  export { type TaskConfigItem, type TaskEntry, type TasksConfig, defineConfig, loadTasksConfig, mergeTasksLayers, normalizeTaskEntry };
@@ -1,6 +1,6 @@
1
- import { n as coerceTasks, r as normalizeTaskEntry, t as loadTasksConfig } from "../load-ToVjaKPr.mjs";
1
+ import { n as coerceTasks, r as normalizeTaskEntry, t as loadTasksConfig } from "../load-DdHEVFlG.mjs";
2
2
  import { createDefineConfig, mergeLayers } from "@theholocron/datapad";
3
- //#region src/config/define.ts
3
+ //#region src/config/define/define.ts
4
4
  /**
5
5
  * Typed identity helper for `astromech.config.ts`:
6
6
  *
@@ -14,7 +14,7 @@ import { createDefineConfig, mergeLayers } from "@theholocron/datapad";
14
14
  */
15
15
  const defineConfig = createDefineConfig();
16
16
  //#endregion
17
- //#region src/config/merge-tasks-layers.ts
17
+ //#region src/config/merge-tasks-layers/merge-tasks-layers.ts
18
18
  /**
19
19
  * The same layering as {@link loadTasksConfig}, for callers that load the two
20
20
  * sources some other way (Sentinel reads them from the GitHub API, not