@savvy-web/silk-effects 3.3.0 → 4.0.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 (72) hide show
  1. package/changesets/changelog/getReleaseLine.js +1 -1
  2. package/changesets/constants.js +0 -18
  3. package/changesets/index.js +10 -24
  4. package/changesets/schemas/changeset.js +8 -4
  5. package/changesets/schemas/dependency-table.js +15 -4
  6. package/changesets/schemas/git.js +7 -2
  7. package/changesets/schemas/github.js +4 -4
  8. package/changesets/schemas/options.js +3 -3
  9. package/changesets/schemas/package-scope.js +2 -5
  10. package/changesets/schemas/primitives.js +2 -2
  11. package/changesets/schemas/release-plan.js +12 -8
  12. package/changesets/schemas/version-files.js +4 -4
  13. package/changesets/services/branch-analyzer.js +60 -191
  14. package/changesets/services/changelog.js +2 -15
  15. package/changesets/services/config-inspector.js +109 -75
  16. package/changesets/services/deps-regen.js +58 -32
  17. package/changesets/services/github.js +3 -16
  18. package/changesets/services/maintenance-reason.js +5 -1
  19. package/changesets/services/markdown.js +3 -16
  20. package/changesets/services/release-planner.js +4 -13
  21. package/changesets/utils/commit-parser.js +0 -18
  22. package/changesets/utils/dep-diff.js +0 -27
  23. package/changesets/utils/git.js +15 -50
  24. package/changesets/utils/issue-refs.js +0 -13
  25. package/changesets/utils/logger.js +0 -13
  26. package/changesets/utils/markdown-link.js +0 -14
  27. package/changesets/utils/publishability.js +11 -24
  28. package/changesets/utils/strip-frontmatter.js +0 -19
  29. package/changesets/utils/version-files.js +85 -51
  30. package/commitlint/config/schema.js +9 -5
  31. package/commitlint/detection/scopes.js +2 -7
  32. package/commitlint/formatter/messages.js +0 -5
  33. package/commitlint/hook/diagnostics/branch.js +12 -12
  34. package/commitlint/hook/diagnostics/open-issues.js +13 -7
  35. package/commitlint/hook/diagnostics/signing.js +30 -37
  36. package/commitlint/hook/envelope.js +2 -8
  37. package/commitlint/hook/silence-logger.js +14 -12
  38. package/index.d.ts +899 -934
  39. package/lint/cli/templates/markdownlint.gen.js +0 -9
  40. package/lint/handlers/PnpmWorkspace.js +26 -12
  41. package/lint/utils/Filter.js +0 -13
  42. package/lint/utils/Workspace.js +10 -6
  43. package/package.json +11 -10
  44. package/repos/index.js +3 -5
  45. package/repos/schemas/manifest.js +7 -13
  46. package/repos/schemas/reports.js +5 -1
  47. package/repos/services/config-store.js +6 -10
  48. package/repos/services/manager.js +52 -112
  49. package/schemas/CommentStyle.js +1 -1
  50. package/schemas/ResolvedTool.js +52 -17
  51. package/schemas/SectionBlock.js +1 -1
  52. package/schemas/SectionDefinition.js +2 -2
  53. package/schemas/TagStrategySchemas.js +1 -1
  54. package/schemas/ToolDefinition.js +1 -1
  55. package/schemas/ToolResults.js +1 -1
  56. package/schemas/VersioningSchemas.js +28 -9
  57. package/schemas/WorkspaceAnalysisSchemas.js +27 -17
  58. package/services/BiomeSchemaSync.js +7 -8
  59. package/services/ChangesetConfig.js +2 -2
  60. package/services/ChangesetConfigReader.js +7 -8
  61. package/services/ConfigDiscovery.js +5 -6
  62. package/services/ManagedSection.js +3 -4
  63. package/services/SilkPublishability.js +38 -15
  64. package/services/SilkWorkspaceAnalyzer.js +7 -9
  65. package/services/TagStrategy.js +3 -3
  66. package/services/ToolDiscovery.js +22 -21
  67. package/services/VersioningStrategy.js +2 -2
  68. package/tsdoc-metadata.json +1 -1
  69. package/turbo/schemas/DryRun.js +8 -14
  70. package/turbo/schemas/results.js +8 -8
  71. package/turbo/services/TurboInspector.js +30 -23
  72. package/utils/ToolCommand.js +38 -12
package/index.d.ts CHANGED
@@ -1,8 +1,9 @@
1
- import { Context, Data, Effect, Equal, Hash, Layer, Option, Schema, Stream } from "effect";
1
+ import { Context, Data, Effect, Equal, FileSystem, Hash, Layer, Option, Path, PlatformError, Schema, Stream } from "effect";
2
2
  import { Plugin } from "unified";
3
- import { Command, CommandExecutor, FileSystem, Path } from "@effect/platform";
4
- import { PackageManagerDetector, PointInTimeReadError, PointInTimeWorkspace, PublishConfig, PublishTarget, PublishabilityDetector, TopologicalSorter, WorkspaceDiscovery, WorkspaceDiscoveryError, WorkspacePackage, WorkspaceRoot, WorkspaceStateSnapshot } from "workspaces-effect";
5
- import { PlatformError } from "@effect/platform/Error";
3
+ import { ChildProcess, ChildProcessSpawner } from "effect/unstable/process";
4
+ import { PackageManagerDetector, PublishConfig, PublishTarget, PublishabilityDetector, WorkspaceDiscovery, WorkspaceDiscoveryFailure, WorkspacePackage, WorkspaceRoot, WorkspaceSnapshotAtFailure, WorkspaceSnapshotWorktreeFailure, WorkspaceSnapshots, WorkspaceStateSnapshot, WorkspacesOptions } from "@effected/workspaces";
5
+ import { Git } from "@effected/git";
6
+ import { DescendError } from "@effected/walker";
6
7
  //#endregion
7
8
  //#region src/changesets/categories/types.d.ts
8
9
  /**
@@ -40,13 +41,13 @@ import { PlatformError } from "@effect/platform/Error";
40
41
  */
41
42
  declare const SectionCategorySchema: Schema.Struct<{
42
43
  /** Display heading used in CHANGELOG output. */
43
- heading: typeof Schema.String;
44
+ readonly heading: Schema.String;
44
45
  /** Priority for ordering (lower = higher priority). */
45
- priority: typeof Schema.Number;
46
+ readonly priority: Schema.Number;
46
47
  /** Conventional commit types that map to this category. */
47
- commitTypes: Schema.Array$<typeof Schema.String>;
48
+ readonly commitTypes: Schema.$Array<Schema.String>;
48
49
  /** Brief description for documentation. */
49
- description: typeof Schema.String;
50
+ readonly description: Schema.String;
50
51
  }>;
51
52
  /**
52
53
  * A section category defines how changes are grouped in release notes.
@@ -1562,7 +1563,7 @@ interface YamlData extends Data$1 {}
1562
1563
  *
1563
1564
  * @public
1564
1565
  */
1565
- declare const DependencyActionSchema: Schema.Literal<["added", "updated", "removed"]>;
1566
+ declare const DependencyActionSchema: Schema.Literals<readonly ["added", "updated", "removed"]>;
1566
1567
  /**
1567
1568
  * Inferred type for {@link DependencyActionSchema}.
1568
1569
  *
@@ -1596,7 +1597,7 @@ type DependencyAction = typeof DependencyActionSchema.Type;
1596
1597
  *
1597
1598
  * @public
1598
1599
  */
1599
- declare const DependencyTableTypeSchema: Schema.Literal<["dependency", "devDependency", "peerDependency", "optionalDependency", "workspace", "config"]>;
1600
+ declare const DependencyTableTypeSchema: Schema.Literals<readonly ["dependency", "devDependency", "peerDependency", "optionalDependency", "workspace", "config"]>;
1600
1601
  /**
1601
1602
  * Inferred type for {@link DependencyTableTypeSchema}.
1602
1603
  *
@@ -1643,7 +1644,7 @@ declare const VERSION_RE: RegExp;
1643
1644
  *
1644
1645
  * @public
1645
1646
  */
1646
- declare const VersionOrEmptySchema: Schema.filter<typeof Schema.String>;
1647
+ declare const VersionOrEmptySchema: Schema.String;
1647
1648
  /**
1648
1649
  * Schema for a single dependency table row.
1649
1650
  *
@@ -1685,15 +1686,15 @@ declare const VersionOrEmptySchema: Schema.filter<typeof Schema.String>;
1685
1686
  */
1686
1687
  declare const DependencyTableRowSchema: Schema.Struct<{
1687
1688
  /** Package or toolchain name. */
1688
- dependency: Schema.filter<typeof Schema.String>;
1689
+ readonly dependency: Schema.String;
1689
1690
  /** Dependency type. */
1690
- type: Schema.Literal<["dependency", "devDependency", "peerDependency", "optionalDependency", "workspace", "config"]>;
1691
+ readonly type: Schema.Literals<readonly ["dependency", "devDependency", "peerDependency", "optionalDependency", "workspace", "config"]>;
1691
1692
  /** Change action. */
1692
- action: Schema.Literal<["added", "updated", "removed"]>;
1693
+ readonly action: Schema.Literals<readonly ["added", "updated", "removed"]>;
1693
1694
  /** Previous version (em dash for added). */
1694
- from: Schema.filter<typeof Schema.String>;
1695
+ readonly from: Schema.String;
1695
1696
  /** New version (em dash for removed). */
1696
- to: Schema.filter<typeof Schema.String>;
1697
+ readonly to: Schema.String;
1697
1698
  }>;
1698
1699
  /**
1699
1700
  * Inferred type for {@link DependencyTableRowSchema}.
@@ -1738,18 +1739,18 @@ interface DependencyTableRow extends Schema.Schema.Type<typeof DependencyTableRo
1738
1739
  *
1739
1740
  * @public
1740
1741
  */
1741
- declare const DependencyTableSchema: Schema.filter<Schema.Array$<Schema.Struct<{
1742
+ declare const DependencyTableSchema: Schema.$Array<Schema.Struct<{
1742
1743
  /** Package or toolchain name. */
1743
- dependency: Schema.filter<typeof Schema.String>;
1744
+ readonly dependency: Schema.String;
1744
1745
  /** Dependency type. */
1745
- type: Schema.Literal<["dependency", "devDependency", "peerDependency", "optionalDependency", "workspace", "config"]>;
1746
+ readonly type: Schema.Literals<readonly ["dependency", "devDependency", "peerDependency", "optionalDependency", "workspace", "config"]>;
1746
1747
  /** Change action. */
1747
- action: Schema.Literal<["added", "updated", "removed"]>;
1748
+ readonly action: Schema.Literals<readonly ["added", "updated", "removed"]>;
1748
1749
  /** Previous version (em dash for added). */
1749
- from: Schema.filter<typeof Schema.String>;
1750
+ readonly from: Schema.String;
1750
1751
  /** New version (em dash for removed). */
1751
- to: Schema.filter<typeof Schema.String>;
1752
- }>>>;
1752
+ readonly to: Schema.String;
1753
+ }>>;
1753
1754
  //#endregion
1754
1755
  //#region src/changesets/api/dependency-table.d.ts
1755
1756
  /**
@@ -2110,9 +2111,9 @@ declare class ChangesetLinter {
2110
2111
  */
2111
2112
  declare const MaintenanceTriggerSchema: Schema.Struct<{
2112
2113
  /** Package name of the triggering co-member. */
2113
- name: typeof Schema.String;
2114
+ readonly name: Schema.String;
2114
2115
  /** The co-member's new version in the same release plan. */
2115
- version: typeof Schema.String;
2116
+ readonly version: Schema.String;
2116
2117
  }>;
2117
2118
  /**
2118
2119
  * A group co-member whose own changesets forced this release.
@@ -2127,13 +2128,13 @@ type MaintenanceTrigger = typeof MaintenanceTriggerSchema.Type;
2127
2128
  */
2128
2129
  declare const MaintenanceReasonSchema: Schema.Struct<{
2129
2130
  /** Coupling that forced the release; `"unspecified"` when undetermined. */
2130
- kind: Schema.Literal<["fixed", "linked", "unspecified"]>;
2131
+ readonly kind: Schema.Literals<readonly ["fixed", "linked", "unspecified"]>;
2131
2132
  /** Triggering co-members; empty for `"unspecified"`. */
2132
- triggers: Schema.Array$<Schema.Struct<{
2133
+ readonly triggers: Schema.$Array<Schema.Struct<{
2133
2134
  /** Package name of the triggering co-member. */
2134
- name: typeof Schema.String;
2135
+ readonly name: Schema.String;
2135
2136
  /** The co-member's new version in the same release plan. */
2136
- version: typeof Schema.String;
2137
+ readonly version: Schema.String;
2137
2138
  }>>;
2138
2139
  }>;
2139
2140
  /**
@@ -2753,24 +2754,24 @@ declare class ChangesetConfigError extends ChangesetConfigError_base<{
2753
2754
  */
2754
2755
  /** @public */
2755
2756
  declare const ChangesetConfigFile: Schema.Struct<{
2756
- changelog: Schema.optional<Schema.Union<[typeof Schema.String, Schema.Array$<typeof Schema.Unknown>, Schema.Literal<[false]>]>>;
2757
- commit: Schema.optional<Schema.Union<[typeof Schema.Boolean, typeof Schema.String, Schema.Array$<typeof Schema.Unknown>]>>;
2758
- fixed: Schema.optional<Schema.Array$<Schema.Array$<typeof Schema.String>>>;
2759
- linked: Schema.optional<Schema.Array$<Schema.Array$<typeof Schema.String>>>;
2760
- access: Schema.optional<Schema.Literal<["public", "restricted"]>>;
2761
- baseBranch: Schema.optional<typeof Schema.String>;
2762
- updateInternalDependencies: Schema.optional<Schema.Literal<["patch", "minor", "major"]>>;
2763
- ignore: Schema.optional<Schema.Array$<typeof Schema.String>>;
2764
- privatePackages: Schema.optional<Schema.Union<[Schema.Struct<{
2765
- tag: Schema.optional<typeof Schema.Boolean>;
2766
- version: Schema.optional<typeof Schema.Boolean>;
2767
- }>, Schema.Literal<[false]>]>>;
2768
- prettier: Schema.optional<typeof Schema.Boolean>;
2769
- changedFilePatterns: Schema.optional<Schema.Array$<typeof Schema.String>>;
2770
- bumpVersionsWithWorkspaceProtocolOnly: Schema.optional<typeof Schema.Boolean>;
2771
- snapshot: Schema.optional<Schema.Struct<{
2772
- useCalculatedVersion: Schema.optional<typeof Schema.Boolean>;
2773
- prereleaseTemplate: Schema.optional<typeof Schema.String>;
2757
+ readonly changelog: Schema.optional<Schema.Union<readonly [Schema.String, Schema.$Array<Schema.Unknown>, Schema.Literal<false>]>>;
2758
+ readonly commit: Schema.optional<Schema.Union<readonly [Schema.Boolean, Schema.String, Schema.$Array<Schema.Unknown>]>>;
2759
+ readonly fixed: Schema.optional<Schema.$Array<Schema.$Array<Schema.String>>>;
2760
+ readonly linked: Schema.optional<Schema.$Array<Schema.$Array<Schema.String>>>;
2761
+ readonly access: Schema.optional<Schema.Literals<readonly ["public", "restricted"]>>;
2762
+ readonly baseBranch: Schema.optional<Schema.String>;
2763
+ readonly updateInternalDependencies: Schema.optional<Schema.Literals<readonly ["patch", "minor", "major"]>>;
2764
+ readonly ignore: Schema.optional<Schema.$Array<Schema.String>>;
2765
+ readonly privatePackages: Schema.optional<Schema.Union<readonly [Schema.Struct<{
2766
+ readonly tag: Schema.optional<Schema.Boolean>;
2767
+ readonly version: Schema.optional<Schema.Boolean>;
2768
+ }>, Schema.Literal<false>]>>;
2769
+ readonly prettier: Schema.optional<Schema.Boolean>;
2770
+ readonly changedFilePatterns: Schema.optional<Schema.$Array<Schema.String>>;
2771
+ readonly bumpVersionsWithWorkspaceProtocolOnly: Schema.optional<Schema.Boolean>;
2772
+ readonly snapshot: Schema.optional<Schema.Struct<{
2773
+ readonly useCalculatedVersion: Schema.optional<Schema.Boolean>;
2774
+ readonly prereleaseTemplate: Schema.optional<Schema.String>;
2774
2775
  }>>;
2775
2776
  }>;
2776
2777
  /**
@@ -2789,31 +2790,28 @@ type ChangesetConfigFile = typeof ChangesetConfigFile.Type;
2789
2790
  * @since 0.1.0
2790
2791
  */
2791
2792
  /** @public */
2792
- declare const SilkChangesetConfigFile: Schema.extend<Schema.Struct<{
2793
- changelog: Schema.optional<Schema.Union<[typeof Schema.String, Schema.Array$<typeof Schema.Unknown>, Schema.Literal<[false]>]>>;
2794
- commit: Schema.optional<Schema.Union<[typeof Schema.Boolean, typeof Schema.String, Schema.Array$<typeof Schema.Unknown>]>>;
2795
- fixed: Schema.optional<Schema.Array$<Schema.Array$<typeof Schema.String>>>;
2796
- linked: Schema.optional<Schema.Array$<Schema.Array$<typeof Schema.String>>>;
2797
- access: Schema.optional<Schema.Literal<["public", "restricted"]>>;
2798
- baseBranch: Schema.optional<typeof Schema.String>;
2799
- updateInternalDependencies: Schema.optional<Schema.Literal<["patch", "minor", "major"]>>;
2800
- ignore: Schema.optional<Schema.Array$<typeof Schema.String>>;
2801
- privatePackages: Schema.optional<Schema.Union<[Schema.Struct<{
2802
- tag: Schema.optional<typeof Schema.Boolean>;
2803
- version: Schema.optional<typeof Schema.Boolean>;
2804
- }>, Schema.Literal<[false]>]>>;
2805
- prettier: Schema.optional<typeof Schema.Boolean>;
2806
- changedFilePatterns: Schema.optional<Schema.Array$<typeof Schema.String>>;
2807
- bumpVersionsWithWorkspaceProtocolOnly: Schema.optional<typeof Schema.Boolean>;
2808
- snapshot: Schema.optional<Schema.Struct<{
2809
- useCalculatedVersion: Schema.optional<typeof Schema.Boolean>;
2810
- prereleaseTemplate: Schema.optional<typeof Schema.String>;
2793
+ declare const SilkChangesetConfigFile: Schema.Struct<{
2794
+ readonly changelog: Schema.optional<Schema.Union<readonly [Schema.String, Schema.$Array<Schema.Unknown>, Schema.Literal<false>]>>;
2795
+ readonly commit: Schema.optional<Schema.Union<readonly [Schema.Boolean, Schema.String, Schema.$Array<Schema.Unknown>]>>;
2796
+ readonly fixed: Schema.optional<Schema.$Array<Schema.$Array<Schema.String>>>;
2797
+ readonly linked: Schema.optional<Schema.$Array<Schema.$Array<Schema.String>>>;
2798
+ readonly access: Schema.optional<Schema.Literals<readonly ["public", "restricted"]>>;
2799
+ readonly baseBranch: Schema.optional<Schema.String>;
2800
+ readonly updateInternalDependencies: Schema.optional<Schema.Literals<readonly ["patch", "minor", "major"]>>;
2801
+ readonly ignore: Schema.optional<Schema.$Array<Schema.String>>;
2802
+ readonly privatePackages: Schema.optional<Schema.Union<readonly [Schema.Struct<{
2803
+ readonly tag: Schema.optional<Schema.Boolean>;
2804
+ readonly version: Schema.optional<Schema.Boolean>;
2805
+ }>, Schema.Literal<false>]>>;
2806
+ readonly prettier: Schema.optional<Schema.Boolean>;
2807
+ readonly changedFilePatterns: Schema.optional<Schema.$Array<Schema.String>>;
2808
+ readonly bumpVersionsWithWorkspaceProtocolOnly: Schema.optional<Schema.Boolean>;
2809
+ readonly snapshot: Schema.optional<Schema.Struct<{
2810
+ readonly useCalculatedVersion: Schema.optional<Schema.Boolean>;
2811
+ readonly prereleaseTemplate: Schema.optional<Schema.String>;
2811
2812
  }>>;
2812
- }>, Schema.Struct<{
2813
- _isSilk: Schema.optionalWith<typeof Schema.Boolean, {
2814
- default: () => true;
2815
- }>;
2816
- }>>;
2813
+ readonly _isSilk: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.Boolean, never>>;
2814
+ }>;
2817
2815
  /**
2818
2816
  * @since 0.1.0
2819
2817
  * @public
@@ -2830,7 +2828,7 @@ type SilkChangesetConfigFile = typeof SilkChangesetConfigFile.Type;
2830
2828
  * @since 0.1.0
2831
2829
  * @public
2832
2830
  */
2833
- declare const VersioningStrategyType: Schema.Literal<["single", "fixed-group", "independent"]>;
2831
+ declare const VersioningStrategyType: Schema.Literals<readonly ["single", "fixed-group", "independent"]>;
2834
2832
  /**
2835
2833
  * @since 0.1.0
2836
2834
  * @public
@@ -2847,9 +2845,9 @@ type VersioningStrategyType = typeof VersioningStrategyType.Type;
2847
2845
  * @public
2848
2846
  */
2849
2847
  declare const VersioningStrategyResult: Schema.Struct<{
2850
- type: Schema.Literal<["single", "fixed-group", "independent"]>;
2851
- fixedGroups: Schema.Array$<Schema.Array$<typeof Schema.String>>;
2852
- publishablePackages: Schema.Array$<typeof Schema.String>;
2848
+ readonly type: Schema.Literals<readonly ["single", "fixed-group", "independent"]>;
2849
+ readonly fixedGroups: Schema.$Array<Schema.$Array<Schema.String>>;
2850
+ readonly publishablePackages: Schema.$Array<Schema.String>;
2853
2851
  }>;
2854
2852
  /**
2855
2853
  * @since 0.1.0
@@ -2858,7 +2856,13 @@ declare const VersioningStrategyResult: Schema.Struct<{
2858
2856
  type VersioningStrategyResult = typeof VersioningStrategyResult.Type;
2859
2857
  //#endregion
2860
2858
  //#region src/services/ChangesetConfigReader.d.ts
2861
- declare const ChangesetConfigReader_base: Context.TagClass<ChangesetConfigReader, "@savvy-web/silk-effects/ChangesetConfigReader", {
2859
+ /**
2860
+ * The {@link ChangesetConfigReader} service shape.
2861
+ *
2862
+ * @since 3.2.0
2863
+ * @public
2864
+ */
2865
+ interface ChangesetConfigReaderShape {
2862
2866
  /**
2863
2867
  * Read and decode `.changeset/config.json` from the given workspace root.
2864
2868
  *
@@ -2868,7 +2872,8 @@ declare const ChangesetConfigReader_base: Context.TagClass<ChangesetConfigReader
2868
2872
  * @since 0.1.0
2869
2873
  */
2870
2874
  readonly read: (root: string) => Effect.Effect<ChangesetConfigFile | SilkChangesetConfigFile, ChangesetConfigError>;
2871
- }>;
2875
+ }
2876
+ declare const ChangesetConfigReader_base: Context.ServiceClass<ChangesetConfigReader, "@savvy-web/silk-effects/ChangesetConfigReader", ChangesetConfigReaderShape>;
2872
2877
  /**
2873
2878
  * Service that reads and decodes the `.changeset/config.json` for a given workspace root.
2874
2879
  *
@@ -2885,7 +2890,7 @@ declare const ChangesetConfigReader_base: Context.TagClass<ChangesetConfigReader
2885
2890
  * return yield* reader.read(process.cwd());
2886
2891
  * }).pipe(
2887
2892
  * Effect.provide(ChangesetConfigReaderLive),
2888
- * Effect.provide(NodeContext.layer),
2893
+ * Effect.provide(NodeServices.layer),
2889
2894
  * )
2890
2895
  * );
2891
2896
  * ```
@@ -2898,8 +2903,8 @@ declare class ChangesetConfigReader extends ChangesetConfigReader_base {}
2898
2903
  * Live implementation of {@link ChangesetConfigReader}.
2899
2904
  *
2900
2905
  * @remarks
2901
- * Requires `FileSystem` from `@effect/platform`. Provide `NodeContext.layer` or
2902
- * `BunContext.layer` to satisfy this dependency.
2906
+ * Requires the core `FileSystem` service. Provide `NodeServices.layer` (or
2907
+ * `NodeFileSystem.layer`) from `@effect/platform-node` to satisfy this dependency.
2903
2908
  *
2904
2909
  * @since 0.1.0
2905
2910
  * @public
@@ -2909,75 +2914,75 @@ declare const ChangesetConfigReaderLive: Layer.Layer<ChangesetConfigReader, neve
2909
2914
  //#region src/changesets/services/config-inspector.d.ts
2910
2915
  /** A `versionFiles` entry expanded to its absolute target paths. @public */
2911
2916
  declare const ResolvedVersionFileSchema: Schema.Struct<{
2912
- glob: typeof Schema.String;
2913
- paths: Schema.Array$<typeof Schema.String>;
2914
- matchedFiles: Schema.Array$<typeof Schema.String>;
2917
+ readonly glob: Schema.String;
2918
+ readonly paths: Schema.$Array<Schema.String>;
2919
+ readonly matchedFiles: Schema.$Array<Schema.String>;
2915
2920
  }>;
2916
2921
  /** A `versionFiles` entry expanded to its absolute target paths. @public */
2917
- type ResolvedVersionFile = Schema.Schema.Type<typeof ResolvedVersionFileSchema>;
2922
+ type ResolvedVersionFile = typeof ResolvedVersionFileSchema.Type;
2918
2923
  /** A package's resolved release surface. @public */
2919
2924
  declare const ResolvedPackageScopeSchema: Schema.Struct<{
2920
- name: typeof Schema.String;
2921
- workspaceDir: typeof Schema.String;
2922
- version: typeof Schema.String;
2923
- additionalScopes: Schema.Array$<typeof Schema.String>;
2924
- additionalScopeFiles: Schema.Array$<typeof Schema.String>;
2925
- versionFiles: Schema.Array$<Schema.Struct<{
2926
- glob: typeof Schema.String;
2927
- paths: Schema.Array$<typeof Schema.String>;
2928
- matchedFiles: Schema.Array$<typeof Schema.String>;
2925
+ readonly name: Schema.String;
2926
+ readonly workspaceDir: Schema.String;
2927
+ readonly version: Schema.String;
2928
+ readonly additionalScopes: Schema.$Array<Schema.String>;
2929
+ readonly additionalScopeFiles: Schema.$Array<Schema.String>;
2930
+ readonly versionFiles: Schema.$Array<Schema.Struct<{
2931
+ readonly glob: Schema.String;
2932
+ readonly paths: Schema.$Array<Schema.String>;
2933
+ readonly matchedFiles: Schema.$Array<Schema.String>;
2929
2934
  }>>;
2930
2935
  }>;
2931
2936
  /** A package's resolved release surface. @public */
2932
- type ResolvedPackageScope = Schema.Schema.Type<typeof ResolvedPackageScopeSchema>;
2937
+ type ResolvedPackageScope = typeof ResolvedPackageScopeSchema.Type;
2933
2938
  /** Structured representation of a resolved `.changeset/config.json`. @public */
2934
2939
  declare const InspectedConfigSchema: Schema.Struct<{
2935
- configPath: typeof Schema.String;
2936
- projectDir: Schema.SchemaClass<string, string, never>;
2937
- changelog: Schema.NullOr<typeof Schema.String>;
2938
- baseBranch: typeof Schema.String;
2939
- access: Schema.Literal<["public", "restricted"]>;
2940
- ignore: Schema.Array$<typeof Schema.String>;
2941
- packages: Schema.Array$<Schema.Struct<{
2942
- name: typeof Schema.String;
2943
- workspaceDir: typeof Schema.String;
2944
- version: typeof Schema.String;
2945
- additionalScopes: Schema.Array$<typeof Schema.String>;
2946
- additionalScopeFiles: Schema.Array$<typeof Schema.String>;
2947
- versionFiles: Schema.Array$<Schema.Struct<{
2948
- glob: typeof Schema.String;
2949
- paths: Schema.Array$<typeof Schema.String>;
2950
- matchedFiles: Schema.Array$<typeof Schema.String>;
2940
+ readonly configPath: Schema.String;
2941
+ readonly projectDir: Schema.String;
2942
+ readonly changelog: Schema.NullOr<Schema.String>;
2943
+ readonly baseBranch: Schema.String;
2944
+ readonly access: Schema.Literals<readonly ["public", "restricted"]>;
2945
+ readonly ignore: Schema.$Array<Schema.String>;
2946
+ readonly packages: Schema.$Array<Schema.Struct<{
2947
+ readonly name: Schema.String;
2948
+ readonly workspaceDir: Schema.String;
2949
+ readonly version: Schema.String;
2950
+ readonly additionalScopes: Schema.$Array<Schema.String>;
2951
+ readonly additionalScopeFiles: Schema.$Array<Schema.String>;
2952
+ readonly versionFiles: Schema.$Array<Schema.Struct<{
2953
+ readonly glob: Schema.String;
2954
+ readonly paths: Schema.$Array<Schema.String>;
2955
+ readonly matchedFiles: Schema.$Array<Schema.String>;
2951
2956
  }>>;
2952
2957
  }>>;
2953
- legacyVersionFilesUsed: typeof Schema.Boolean;
2958
+ readonly legacyVersionFilesUsed: Schema.Boolean;
2954
2959
  }>;
2955
2960
  /** Structured representation of a resolved `.changeset/config.json`. @public */
2956
- type InspectedConfig = Schema.Schema.Type<typeof InspectedConfigSchema>;
2961
+ type InspectedConfig = typeof InspectedConfigSchema.Type;
2957
2962
  /** Reason a path was attributed to a package (or left unmapped). @public */
2958
- declare const ClassificationReasonSchema: Schema.Union<[Schema.Literal<["workspace"]>, Schema.Struct<{
2959
- kind: Schema.Literal<["additionalScope"]>;
2960
- glob: typeof Schema.String;
2963
+ declare const ClassificationReasonSchema: Schema.Union<readonly [Schema.Literal<"workspace">, Schema.Struct<{
2964
+ readonly kind: Schema.Literal<"additionalScope">;
2965
+ readonly glob: Schema.String;
2961
2966
  }>, Schema.Struct<{
2962
- kind: Schema.Literal<["versionFile"]>;
2963
- glob: typeof Schema.String;
2964
- }>, typeof Schema.Null]>;
2967
+ readonly kind: Schema.Literal<"versionFile">;
2968
+ readonly glob: Schema.String;
2969
+ }>, Schema.Null]>;
2965
2970
  /** Reason a path was attributed to a package (or left unmapped). @public */
2966
- type ClassificationReason = Schema.Schema.Type<typeof ClassificationReasonSchema>;
2971
+ type ClassificationReason = typeof ClassificationReasonSchema.Type;
2967
2972
  /** The result of classifying a single path against a resolved config. @public */
2968
2973
  declare const ClassificationSchema: Schema.Struct<{
2969
- path: typeof Schema.String;
2970
- package: Schema.NullOr<typeof Schema.String>;
2971
- reason: Schema.Union<[Schema.Literal<["workspace"]>, Schema.Struct<{
2972
- kind: Schema.Literal<["additionalScope"]>;
2973
- glob: typeof Schema.String;
2974
+ readonly path: Schema.String;
2975
+ readonly package: Schema.NullOr<Schema.String>;
2976
+ readonly reason: Schema.Union<readonly [Schema.Literal<"workspace">, Schema.Struct<{
2977
+ readonly kind: Schema.Literal<"additionalScope">;
2978
+ readonly glob: Schema.String;
2974
2979
  }>, Schema.Struct<{
2975
- kind: Schema.Literal<["versionFile"]>;
2976
- glob: typeof Schema.String;
2977
- }>, typeof Schema.Null]>;
2980
+ readonly kind: Schema.Literal<"versionFile">;
2981
+ readonly glob: Schema.String;
2982
+ }>, Schema.Null]>;
2978
2983
  }>;
2979
2984
  /** The result of classifying a single path against a resolved config. @public */
2980
- type Classification = Schema.Schema.Type<typeof ClassificationSchema>;
2985
+ type Classification = typeof ClassificationSchema.Type;
2981
2986
  /**
2982
2987
  * Effect service interface for inspecting a project's changeset config.
2983
2988
  *
@@ -3014,16 +3019,7 @@ interface ConfigInspectorShape {
3014
3019
  */
3015
3020
  readonly refresh: () => Effect.Effect<void>;
3016
3021
  }
3017
- /**
3018
- * Base class for {@link ConfigInspector}.
3019
- *
3020
- * @privateRemarks
3021
- * Effect's `Context.Tag` creates an anonymous base class that api-extractor
3022
- * cannot follow without an explicit export. Do not delete.
3023
- *
3024
- * @internal
3025
- */
3026
- declare const ConfigInspectorBase: Context.TagClass<ConfigInspector, "ConfigInspector", ConfigInspectorShape>;
3022
+ declare const ConfigInspector_base: Context.ServiceClass<ConfigInspector, "ConfigInspector", ConfigInspectorShape>;
3027
3023
  /**
3028
3024
  * Effect service tag for {@link ConfigInspectorShape}.
3029
3025
  *
@@ -3043,7 +3039,7 @@ declare const ConfigInspectorBase: Context.TagClass<ConfigInspector, "ConfigInsp
3043
3039
  *
3044
3040
  * @public
3045
3041
  */
3046
- declare class ConfigInspector extends ConfigInspectorBase {}
3042
+ declare class ConfigInspector extends ConfigInspector_base {}
3047
3043
  /**
3048
3044
  * Live layer for {@link ConfigInspector}.
3049
3045
  *
@@ -3067,45 +3063,45 @@ declare function makeConfigInspectorTest(fixed: InspectedConfig): Layer.Layer<Co
3067
3063
  //#endregion
3068
3064
  //#region src/changesets/services/branch-analyzer.d.ts
3069
3065
  /** Git diff status as reported by `--name-status`. @public */
3070
- declare const FileStatusSchema: Schema.Literal<["added", "modified", "deleted", "renamed", "copied", "typechange", "unmerged", "unknown"]>;
3066
+ declare const FileStatusSchema: Schema.Literals<readonly ["added", "modified", "deleted", "renamed", "copied", "typechange", "unmerged", "unknown"]>;
3071
3067
  /** Git diff status as reported by `--name-status`. @public */
3072
- type FileStatus = Schema.Schema.Type<typeof FileStatusSchema>;
3068
+ type FileStatus = typeof FileStatusSchema.Type;
3073
3069
  /** One file entry in the branch analysis output. @public */
3074
3070
  declare const BranchFileEntrySchema: Schema.Struct<{
3075
- path: Schema.SchemaClass<string, string, never>;
3076
- status: Schema.Literal<["added", "modified", "deleted", "renamed", "copied", "typechange", "unmerged", "unknown"]>;
3077
- package: Schema.NullOr<typeof Schema.String>;
3078
- reason: Schema.Union<[Schema.Literal<["workspace"]>, Schema.Struct<{
3079
- kind: Schema.Literal<["additionalScope"]>;
3080
- glob: typeof Schema.String;
3071
+ readonly path: Schema.String;
3072
+ readonly status: Schema.Literals<readonly ["added", "modified", "deleted", "renamed", "copied", "typechange", "unmerged", "unknown"]>;
3073
+ readonly package: Schema.NullOr<Schema.String>;
3074
+ readonly reason: Schema.Union<readonly [Schema.Literal<"workspace">, Schema.Struct<{
3075
+ readonly kind: Schema.Literal<"additionalScope">;
3076
+ readonly glob: Schema.String;
3081
3077
  }>, Schema.Struct<{
3082
- kind: Schema.Literal<["versionFile"]>;
3083
- glob: typeof Schema.String;
3084
- }>, typeof Schema.Null]>;
3078
+ readonly kind: Schema.Literal<"versionFile">;
3079
+ readonly glob: Schema.String;
3080
+ }>, Schema.Null]>;
3085
3081
  }>;
3086
3082
  /** One file entry in the branch analysis output. @public */
3087
- type BranchFileEntry = Schema.Schema.Type<typeof BranchFileEntrySchema>;
3083
+ type BranchFileEntry = typeof BranchFileEntrySchema.Type;
3088
3084
  /** Structured result of analyzing the current branch against its base. @public */
3089
3085
  declare const BranchAnalysisSchema: Schema.Struct<{
3090
- baseBranch: typeof Schema.String;
3091
- mergeBaseSha: typeof Schema.String;
3092
- files: Schema.Array$<Schema.Struct<{
3093
- path: Schema.SchemaClass<string, string, never>;
3094
- status: Schema.Literal<["added", "modified", "deleted", "renamed", "copied", "typechange", "unmerged", "unknown"]>;
3095
- package: Schema.NullOr<typeof Schema.String>;
3096
- reason: Schema.Union<[Schema.Literal<["workspace"]>, Schema.Struct<{
3097
- kind: Schema.Literal<["additionalScope"]>;
3098
- glob: typeof Schema.String;
3086
+ readonly baseBranch: Schema.String;
3087
+ readonly mergeBaseSha: Schema.String;
3088
+ readonly files: Schema.$Array<Schema.Struct<{
3089
+ readonly path: Schema.String;
3090
+ readonly status: Schema.Literals<readonly ["added", "modified", "deleted", "renamed", "copied", "typechange", "unmerged", "unknown"]>;
3091
+ readonly package: Schema.NullOr<Schema.String>;
3092
+ readonly reason: Schema.Union<readonly [Schema.Literal<"workspace">, Schema.Struct<{
3093
+ readonly kind: Schema.Literal<"additionalScope">;
3094
+ readonly glob: Schema.String;
3099
3095
  }>, Schema.Struct<{
3100
- kind: Schema.Literal<["versionFile"]>;
3101
- glob: typeof Schema.String;
3102
- }>, typeof Schema.Null]>;
3096
+ readonly kind: Schema.Literal<"versionFile">;
3097
+ readonly glob: Schema.String;
3098
+ }>, Schema.Null]>;
3103
3099
  }>>;
3104
- packagesAffected: Schema.Array$<typeof Schema.String>;
3105
- unmappedFiles: Schema.Array$<typeof Schema.String>;
3100
+ readonly packagesAffected: Schema.$Array<Schema.String>;
3101
+ readonly unmappedFiles: Schema.$Array<Schema.String>;
3106
3102
  }>;
3107
3103
  /** Structured result of analyzing the current branch against its base. @public */
3108
- type BranchAnalysis = Schema.Schema.Type<typeof BranchAnalysisSchema>;
3104
+ type BranchAnalysis = typeof BranchAnalysisSchema.Type;
3109
3105
  /**
3110
3106
  * Effect service interface for branch analysis.
3111
3107
  *
@@ -3125,16 +3121,7 @@ interface BranchAnalyzerShape {
3125
3121
  readonly baseBranch?: string;
3126
3122
  }) => Effect.Effect<BranchAnalysis, ConfigurationError | GitError>;
3127
3123
  }
3128
- /**
3129
- * Base class for {@link BranchAnalyzer}.
3130
- *
3131
- * @privateRemarks
3132
- * Effect's `Context.Tag` creates an anonymous base class that api-extractor
3133
- * cannot follow without an explicit export. Do not delete.
3134
- *
3135
- * @internal
3136
- */
3137
- declare const BranchAnalyzerBase: Context.TagClass<BranchAnalyzer, "BranchAnalyzer", BranchAnalyzerShape>;
3124
+ declare const BranchAnalyzer_base: Context.ServiceClass<BranchAnalyzer, "BranchAnalyzer", BranchAnalyzerShape>;
3138
3125
  /**
3139
3126
  * Effect service tag for {@link BranchAnalyzerShape}.
3140
3127
  *
@@ -3153,23 +3140,25 @@ declare const BranchAnalyzerBase: Context.TagClass<BranchAnalyzer, "BranchAnalyz
3153
3140
  * program.pipe(
3154
3141
  * Effect.provide(BranchAnalyzerLive),
3155
3142
  * Effect.provide(ConfigInspectorLive),
3156
- * // ... + ChangesetConfigReaderLive + WorkspacesLive + NodeContext.layer
3143
+ * // ... + ChangesetConfigReaderLive + kit workspace layers + NodeServices.layer
3157
3144
  * ),
3158
3145
  * );
3159
3146
  * ```
3160
3147
  *
3161
3148
  * @public
3162
3149
  */
3163
- declare class BranchAnalyzer extends BranchAnalyzerBase {}
3150
+ declare class BranchAnalyzer extends BranchAnalyzer_base {}
3164
3151
  /**
3165
3152
  * Live layer for {@link BranchAnalyzer}.
3166
3153
  *
3167
3154
  * Requires {@link ConfigInspector} (which in turn requires
3168
- * `ChangesetConfigReader` and `WorkspaceDiscovery`).
3155
+ * `ChangesetConfigReader` and `WorkspaceDiscovery`) and a
3156
+ * `ChildProcessSpawner` (satisfied by `NodeServices.layer`) for the
3157
+ * internally-composed `@effected/git` layer.
3169
3158
  *
3170
3159
  * @public
3171
3160
  */
3172
- declare const BranchAnalyzerLive: Layer.Layer<BranchAnalyzer, never, ConfigInspector>;
3161
+ declare const BranchAnalyzerLive: Layer.Layer<BranchAnalyzer, never, ConfigInspector | ChildProcessSpawner.ChildProcessSpawner>;
3173
3162
  /**
3174
3163
  * Test factory — build a {@link BranchAnalyzer} that returns a fixed
3175
3164
  * {@link BranchAnalysis} for any input.
@@ -3203,7 +3192,7 @@ declare function makeBranchAnalyzerTest(fixed: BranchAnalysis): Layer.Layer<Bran
3203
3192
  *
3204
3193
  * @public
3205
3194
  */
3206
- declare const RepoSchema: Schema.filter<typeof Schema.String>;
3195
+ declare const RepoSchema: Schema.String;
3207
3196
  /**
3208
3197
  * Schema for changeset configuration options.
3209
3198
  *
@@ -3249,27 +3238,27 @@ declare const RepoSchema: Schema.filter<typeof Schema.String>;
3249
3238
  *
3250
3239
  * @public
3251
3240
  */
3252
- declare const ChangesetOptionsSchema: Schema.filter<Schema.Struct<{
3241
+ declare const ChangesetOptionsSchema: Schema.Struct<{
3253
3242
  /** GitHub repository in `owner/repo` format. */
3254
- repo: Schema.filter<typeof Schema.String>;
3243
+ readonly repo: Schema.String;
3255
3244
  /** Whether to include commit hash links in output. */
3256
- commitLinks: Schema.optional<typeof Schema.Boolean>;
3245
+ readonly commitLinks: Schema.optional<Schema.Boolean>;
3257
3246
  /** Whether to include pull request links in output. */
3258
- prLinks: Schema.optional<typeof Schema.Boolean>;
3247
+ readonly prLinks: Schema.optional<Schema.Boolean>;
3259
3248
  /** Whether to include issue reference links in output. */
3260
- issueLinks: Schema.optional<typeof Schema.Boolean>;
3249
+ readonly issueLinks: Schema.optional<Schema.Boolean>;
3261
3250
  /** Custom issue reference prefixes (e.g., `["#", "GH-"]`). */
3262
- issuePrefixes: Schema.optional<Schema.Array$<typeof Schema.String>>;
3251
+ readonly issuePrefixes: Schema.optional<Schema.$Array<Schema.String>>;
3263
3252
  /**
3264
3253
  * Per-package release surfaces. Each entry declares `additionalScopes`
3265
3254
  * (globs outside the workspace dir that belong to the package) and
3266
3255
  * `versionFiles` (files bumped in lockstep with the package's version).
3267
3256
  */
3268
- packages: Schema.optional<Schema.Record$<typeof Schema.String, Schema.Struct<{
3269
- additionalScopes: Schema.optional<Schema.Array$<Schema.filter<Schema.filter<typeof Schema.String>>>>;
3270
- versionFiles: Schema.optional<Schema.Array$<Schema.Struct<{
3271
- glob: Schema.filter<typeof Schema.String>;
3272
- paths: Schema.optional<Schema.Array$<Schema.filter<typeof Schema.String>>>;
3257
+ readonly packages: Schema.optional<Schema.$Record<Schema.String, Schema.Struct<{
3258
+ readonly additionalScopes: Schema.optional<Schema.$Array<Schema.String>>;
3259
+ readonly versionFiles: Schema.optional<Schema.$Array<Schema.Struct<{
3260
+ readonly glob: Schema.String;
3261
+ readonly paths: Schema.optional<Schema.$Array<Schema.String>>;
3273
3262
  }>>>;
3274
3263
  }>>>;
3275
3264
  /**
@@ -3279,12 +3268,12 @@ declare const ChangesetOptionsSchema: Schema.filter<Schema.Struct<{
3279
3268
  *
3280
3269
  * @deprecated 0.9.0 — migrate to `packages`. Removed in 1.0.0.
3281
3270
  */
3282
- versionFiles: Schema.optional<Schema.Array$<Schema.Struct<{
3283
- glob: Schema.filter<typeof Schema.String>;
3284
- paths: Schema.optional<Schema.Array$<Schema.filter<typeof Schema.String>>>;
3285
- package: Schema.optional<Schema.filter<typeof Schema.String>>;
3271
+ readonly versionFiles: Schema.optional<Schema.$Array<Schema.Struct<{
3272
+ readonly glob: Schema.String;
3273
+ readonly paths: Schema.optional<Schema.$Array<Schema.String>>;
3274
+ readonly package: Schema.optional<Schema.String>;
3286
3275
  }>>>;
3287
- }>>;
3276
+ }>;
3288
3277
  /**
3289
3278
  * Inferred type for {@link ChangesetOptionsSchema}.
3290
3279
  *
@@ -3366,17 +3355,7 @@ interface GitHubServiceShape {
3366
3355
  repo: string;
3367
3356
  }) => Effect.Effect<GitHubCommitInfo, GitHubApiError>;
3368
3357
  }
3369
- /**
3370
- * Base class for GitHubService.
3371
- *
3372
- * @privateRemarks
3373
- * This export is required for api-extractor documentation generation.
3374
- * Effect's Context.Tag creates an anonymous base class that must be
3375
- * explicitly exported to avoid "forgotten export" warnings. Do not delete.
3376
- *
3377
- * @internal
3378
- */
3379
- declare const GitHubServiceBase: Context.TagClass<GitHubService, "GitHubService", GitHubServiceShape>;
3358
+ declare const GitHubService_base: Context.ServiceClass<GitHubService, "GitHubService", GitHubServiceShape>;
3380
3359
  /**
3381
3360
  * Effect service tag for GitHub API operations.
3382
3361
  *
@@ -3385,7 +3364,7 @@ declare const GitHubServiceBase: Context.TagClass<GitHubService, "GitHubService"
3385
3364
  * service instance.
3386
3365
  *
3387
3366
  * @remarks
3388
- * This tag follows the standard Effect `Context.Tag` pattern. Two layers
3367
+ * This tag follows the standard Effect `Context.Service` pattern. Two layers
3389
3368
  * are provided out of the box:
3390
3369
  *
3391
3370
  * - {@link GitHubLive} — production layer backed by the GitHub REST API
@@ -3432,11 +3411,10 @@ declare const GitHubServiceBase: Context.TagClass<GitHubService, "GitHubService"
3432
3411
  * @see {@link GitHubServiceShape} for the service interface
3433
3412
  * @see {@link GitHubLive} for the production layer
3434
3413
  * @see {@link makeGitHubTest} for creating test layers
3435
- * @see {@link GitHubServiceBase} for the api-extractor base class
3436
3414
  *
3437
3415
  * @public
3438
3416
  */
3439
- declare class GitHubService extends GitHubServiceBase {}
3417
+ declare class GitHubService extends GitHubService_base {}
3440
3418
  /**
3441
3419
  * Production layer for {@link GitHubService}.
3442
3420
  *
@@ -3539,17 +3517,7 @@ interface MarkdownServiceShape {
3539
3517
  */
3540
3518
  readonly stringify: (tree: Root) => Effect.Effect<string>;
3541
3519
  }
3542
- /**
3543
- * Base class for MarkdownService.
3544
- *
3545
- * @privateRemarks
3546
- * This export is required for api-extractor documentation generation.
3547
- * Effect's Context.Tag creates an anonymous base class that must be
3548
- * explicitly exported to avoid "forgotten export" warnings. Do not delete.
3549
- *
3550
- * @internal
3551
- */
3552
- declare const MarkdownServiceBase: Context.TagClass<MarkdownService, "MarkdownService", MarkdownServiceShape>;
3520
+ declare const MarkdownService_base: Context.ServiceClass<MarkdownService, "MarkdownService", MarkdownServiceShape>;
3553
3521
  /**
3554
3522
  * Effect service tag for markdown parsing and stringification.
3555
3523
  *
@@ -3558,7 +3526,7 @@ declare const MarkdownServiceBase: Context.TagClass<MarkdownService, "MarkdownSe
3558
3526
  * service instance.
3559
3527
  *
3560
3528
  * @remarks
3561
- * This tag follows the standard Effect `Context.Tag` pattern. The
3529
+ * This tag follows the standard Effect `Context.Service` pattern. The
3562
3530
  * {@link MarkdownLive} layer provides the default implementation backed by
3563
3531
  * the remark/unified pipeline. For testing, you can supply a custom layer
3564
3532
  * via `Layer.succeed(MarkdownService, { parse: ..., stringify: ... })`.
@@ -3580,11 +3548,10 @@ declare const MarkdownServiceBase: Context.TagClass<MarkdownService, "MarkdownSe
3580
3548
  *
3581
3549
  * @see {@link MarkdownServiceShape} for the service interface
3582
3550
  * @see {@link MarkdownLive} for the production layer
3583
- * @see {@link MarkdownServiceBase} for the api-extractor base class
3584
3551
  *
3585
3552
  * @public
3586
3553
  */
3587
- declare class MarkdownService extends MarkdownServiceBase {}
3554
+ declare class MarkdownService extends MarkdownService_base {}
3588
3555
  /**
3589
3556
  * Production layer for {@link MarkdownService}.
3590
3557
  *
@@ -3652,17 +3619,7 @@ interface ChangelogServiceShape {
3652
3619
  */
3653
3620
  readonly formatDependencyReleaseLine: (changesets: NewChangesetWithCommit[], dependenciesUpdated: ModCompWithPackage[], options: ChangesetOptions) => Effect.Effect<string, never, GitHubService>;
3654
3621
  }
3655
- /**
3656
- * Base class for ChangelogService.
3657
- *
3658
- * @privateRemarks
3659
- * This export is required for api-extractor documentation generation.
3660
- * Effect's Context.Tag creates an anonymous base class that must be
3661
- * explicitly exported to avoid "forgotten export" warnings. Do not delete.
3662
- *
3663
- * @internal
3664
- */
3665
- declare const ChangelogServiceBase: Context.TagClass<ChangelogService, "ChangelogService", ChangelogServiceShape>;
3622
+ declare const ChangelogService_base: Context.ServiceClass<ChangelogService, "ChangelogService", ChangelogServiceShape>;
3666
3623
  /**
3667
3624
  * Effect service tag for changelog formatting.
3668
3625
  *
@@ -3690,11 +3647,10 @@ declare const ChangelogServiceBase: Context.TagClass<ChangelogService, "Changelo
3690
3647
  * ```
3691
3648
  *
3692
3649
  * @see {@link ChangelogServiceShape} for the service interface
3693
- * @see {@link ChangelogServiceBase} for the api-extractor base class
3694
3650
  *
3695
3651
  * @public
3696
3652
  */
3697
- declare class ChangelogService extends ChangelogServiceBase {}
3653
+ declare class ChangelogService extends ChangelogService_base {}
3698
3654
  //#endregion
3699
3655
  //#region src/services/ChangesetConfig.d.ts
3700
3656
  /**
@@ -3702,7 +3658,13 @@ declare class ChangelogService extends ChangelogServiceBase {}
3702
3658
  * @public
3703
3659
  */
3704
3660
  type ChangesetMode = "silk" | "vanilla" | "none";
3705
- declare const ChangesetConfig_base: Context.TagClass<ChangesetConfig, "@savvy-web/silk-effects/ChangesetConfig", {
3661
+ /**
3662
+ * The {@link ChangesetConfig} service shape.
3663
+ *
3664
+ * @since 3.2.0
3665
+ * @public
3666
+ */
3667
+ interface ChangesetConfigShape {
3706
3668
  readonly mode: (root: string) => Effect.Effect<ChangesetMode>;
3707
3669
  readonly versionPrivate: (root: string) => Effect.Effect<boolean>;
3708
3670
  readonly ignorePatterns: (root: string) => Effect.Effect<ReadonlyArray<string>>;
@@ -3716,7 +3678,8 @@ declare const ChangesetConfig_base: Context.TagClass<ChangesetConfig, "@savvy-we
3716
3678
  * the cache never expires on its own.
3717
3679
  */
3718
3680
  readonly refresh: () => Effect.Effect<void>;
3719
- }>;
3681
+ }
3682
+ declare const ChangesetConfig_base: Context.ServiceClass<ChangesetConfig, "@savvy-web/silk-effects/ChangesetConfig", ChangesetConfigShape>;
3720
3683
  /**
3721
3684
  * Accessor service over a workspace root's `.changeset/config.json`.
3722
3685
  *
@@ -3742,7 +3705,7 @@ declare class ChangesetConfig extends ChangesetConfig_base {
3742
3705
  *
3743
3706
  * @remarks
3744
3707
  * Requires `ChangesetConfigReader` (which requires `FileSystem`). Provide
3745
- * `ChangesetConfigReaderLive` + a platform layer (`NodeContext.layer`).
3708
+ * `ChangesetConfigReaderLive` + a platform layer (`NodeServices.layer`).
3746
3709
  *
3747
3710
  * @since 0.4.0
3748
3711
  * @public
@@ -3861,10 +3824,20 @@ interface DepsRegenOptions {
3861
3824
  readonly from?: string;
3862
3825
  /**
3863
3826
  * Newer ref to diff to. Defaults to the working tree (staged + unstaged
3864
- * + untracked) via `PointInTimeWorkspace.worktree`.
3827
+ * + untracked) via `WorkspaceSnapshots.worktree`.
3865
3828
  */
3866
3829
  readonly to?: string;
3867
3830
  }
3831
+ /**
3832
+ * Every failure {@link DepsRegenShape.plan} can surface: this package's
3833
+ * {@link GitError} (merge-base resolution) and {@link ChangesetIOError}
3834
+ * (an unreadable `.changeset` directory), plus `@effected/workspaces`'
3835
+ * typed discovery and snapshot failures (a snapshot read failing for
3836
+ * either ref, a catalog-assembly failure, or an unfindable root).
3837
+ *
3838
+ * @public
3839
+ */
3840
+ type DepsRegenPlanError = GitError | ChangesetIOError | WorkspaceDiscoveryFailure | WorkspaceSnapshotAtFailure | WorkspaceSnapshotWorktreeFailure;
3868
3841
  /**
3869
3842
  * Effect service interface for the deps regen/detect orchestration.
3870
3843
  *
@@ -3877,12 +3850,10 @@ interface DepsRegenShape {
3877
3850
  * stale/mixed changesets.
3878
3851
  *
3879
3852
  * @param options - See {@link DepsRegenOptions}.
3880
- * @returns An Effect yielding the plan, or failing with {@link GitError},
3881
- * `WorkspaceDiscoveryError`, {@link ChangesetIOError} (an unreadable
3882
- * `.changeset` directory or a genuinely unreadable changeset file list),
3883
- * or `PointInTimeReadError` (a snapshot read failed for either ref).
3853
+ * @returns An Effect yielding the plan, or failing with
3854
+ * {@link DepsRegenPlanError}.
3884
3855
  */
3885
- readonly plan: (options: DepsRegenOptions) => Effect.Effect<RegenPlan, GitError | WorkspaceDiscoveryError | ChangesetIOError | PointInTimeReadError, never>;
3856
+ readonly plan: (options: DepsRegenOptions) => Effect.Effect<RegenPlan, DepsRegenPlanError, never>;
3886
3857
  /**
3887
3858
  * Apply a {@link RegenPlan}: write fresh changesets first, then delete
3888
3859
  * stale ones. Writes fail loudly with {@link ChangesetIOError}; deletion
@@ -3894,10 +3865,7 @@ interface DepsRegenShape {
3894
3865
  */
3895
3866
  readonly execute: (plan: RegenPlan) => Effect.Effect<RegenResult, ChangesetIOError, never>;
3896
3867
  }
3897
- /**
3898
- * @internal
3899
- */
3900
- declare const DepsRegenBase: Context.TagClass<DepsRegen, "Changesets/DepsRegen", DepsRegenShape>;
3868
+ declare const DepsRegen_base: Context.ServiceClass<DepsRegen, "Changesets/DepsRegen", DepsRegenShape>;
3901
3869
  /**
3902
3870
  * Effect service tag for {@link DepsRegenShape}.
3903
3871
  *
@@ -3915,26 +3883,48 @@ declare const DepsRegenBase: Context.TagClass<DepsRegen, "Changesets/DepsRegen",
3915
3883
  *
3916
3884
  * @public
3917
3885
  */
3918
- declare class DepsRegen extends DepsRegenBase {}
3886
+ declare class DepsRegen extends DepsRegen_base {}
3919
3887
  /**
3920
3888
  * Live layer for {@link DepsRegen}.
3921
3889
  *
3922
- * Requires `PointInTimeWorkspace`, `WorkspaceDiscovery`,
3923
- * `PublishabilityDetector` (all from `workspaces-effect`),
3890
+ * Requires `WorkspaceSnapshots`, `WorkspaceDiscovery`,
3891
+ * `PublishabilityDetector` (all from `@effected/workspaces`),
3892
+ * `Git` (from `@effected/git`, backing merge-base resolution),
3924
3893
  * {@link ConfigInspector}, {@link ChangesetConfig}, and
3925
3894
  * `FileSystem.FileSystem` (resolved once at construction and closed over by
3926
3895
  * the shape, keeping `plan`/`execute` themselves requirement-free).
3927
3896
  *
3928
3897
  * @public
3929
3898
  */
3930
- declare const DepsRegenLive: Layer.Layer<DepsRegen, never, PointInTimeWorkspace | ConfigInspector | WorkspaceDiscovery | PublishabilityDetector | ChangesetConfig | FileSystem.FileSystem>;
3899
+ declare const DepsRegenLive: Layer.Layer<DepsRegen, never, WorkspaceSnapshots | ConfigInspector | WorkspaceDiscovery | PublishabilityDetector | ChangesetConfig | Git | FileSystem.FileSystem>;
3900
+ /**
3901
+ * Build the batteries-included {@link DepsRegen} layer over a
3902
+ * `@effected/workspaces` kit graph bound to `options.cwd`.
3903
+ *
3904
+ * @remarks
3905
+ * The kit's root-consuming services (`WorkspaceDiscovery`,
3906
+ * `WorkspaceSnapshots`, `WorkspaceRoot`) resolve their workspace root from
3907
+ * the layer they were built with — single-root by design. {@link DepsRegenDefault}
3908
+ * is this builder bound with no options (root from `process.cwd()`, read
3909
+ * lazily); pass an explicit `cwd` when planning against a different root
3910
+ * (fixtures, multi-repo hosts).
3911
+ *
3912
+ * `Workspaces.layerWithGit` mints a fresh layer reference per call, so the
3913
+ * graph is bound ONCE per builder call and shared across every internal
3914
+ * branch — layer memoization by reference constructs each kit service
3915
+ * exactly once.
3916
+ *
3917
+ * @public
3918
+ */
3919
+ declare function makeDepsRegenDefault(options?: WorkspacesOptions): Layer.Layer<DepsRegen, never, FileSystem.FileSystem | Path.Path | ChildProcessSpawner.ChildProcessSpawner>;
3931
3920
  /**
3932
3921
  * Batteries-included {@link DepsRegen} layer: silk's opinionated default
3933
- * composition of the full dependency graph. Only the platform services
3934
- * remain — note that {@link PointInTimeWorkspace} reads git history, so
3935
- * this layer genuinely requires `CommandExecutor` in addition to
3922
+ * composition of the full dependency graph, root-bound to `process.cwd()`
3923
+ * (see {@link makeDepsRegenDefault} for an explicit root). Only the platform
3924
+ * services remain note that `WorkspaceSnapshots` reads git history, so
3925
+ * this layer genuinely requires `ChildProcessSpawner` in addition to
3936
3926
  * `FileSystem`/`Path`: provide a git-capable platform layer
3937
- * (`NodeContext.layer`), not a bare filesystem-only layer.
3927
+ * (`NodeServices.layer`), not a bare filesystem-only layer.
3938
3928
  *
3939
3929
  * Gating uses silk's adaptive publishability detector
3940
3930
  * ({@link PublishabilityDetectorAdaptiveLive}), so the default semantics
@@ -3945,61 +3935,61 @@ declare const DepsRegenLive: Layer.Layer<DepsRegen, never, PointInTimeWorkspace
3945
3935
  *
3946
3936
  * @example
3947
3937
  * ```typescript
3948
- * import { NodeContext } from "@effect/platform-node";
3938
+ * import { NodeServices } from "@effect/platform-node";
3949
3939
  * import { Layer } from "effect";
3950
3940
  * import { Changesets } from "@savvy-web/silk-effects";
3951
3941
  *
3952
- * const depsRegen = Changesets.DepsRegenDefault.pipe(Layer.provide(NodeContext.layer));
3942
+ * const depsRegen = Changesets.DepsRegenDefault.pipe(Layer.provide(NodeServices.layer));
3953
3943
  * ```
3954
3944
  *
3955
3945
  * @public
3956
3946
  */
3957
- declare const DepsRegenDefault: Layer.Layer<DepsRegen, never, FileSystem.FileSystem | Path.Path | CommandExecutor.CommandExecutor>;
3947
+ declare const DepsRegenDefault: Layer.Layer<DepsRegen, never, FileSystem.FileSystem | Path.Path | ChildProcessSpawner.ChildProcessSpawner>;
3958
3948
  //#endregion
3959
3949
  //#region src/changesets/schemas/release-plan.d.ts
3960
3950
  /** A semantic-version bump level (the `"none"` plan type is filtered out upstream). @public */
3961
- declare const BumpTypeSchema: Schema.Literal<["major", "minor", "patch"]>;
3951
+ declare const BumpTypeSchema: Schema.Literals<readonly ["major", "minor", "patch"]>;
3962
3952
  /** A semantic-version bump level. @public */
3963
3953
  type BumpType = Schema.Schema.Type<typeof BumpTypeSchema>;
3964
3954
  /** One package's previewed release: version transition + rendered changelog block. @public */
3965
3955
  declare const PreviewReleaseSchema: Schema.Struct<{
3966
- name: typeof Schema.String;
3967
- type: Schema.Literal<["major", "minor", "patch"]>;
3968
- oldVersion: typeof Schema.String;
3969
- newVersion: typeof Schema.String;
3970
- changesetIds: Schema.Array$<typeof Schema.String>;
3971
- changelogEntry: typeof Schema.String;
3956
+ readonly name: Schema.String;
3957
+ readonly type: Schema.Literals<readonly ["major", "minor", "patch"]>;
3958
+ readonly oldVersion: Schema.String;
3959
+ readonly newVersion: Schema.String;
3960
+ readonly changesetIds: Schema.$Array<Schema.String>;
3961
+ readonly changelogEntry: Schema.String;
3972
3962
  }>;
3973
3963
  /** One package's previewed release. @public */
3974
3964
  type PreviewRelease = Schema.Schema.Type<typeof PreviewReleaseSchema>;
3975
3965
  /** A parsed pending changeset (id + summary + the packages it bumps). @public */
3976
3966
  declare const PendingChangesetSchema: Schema.Struct<{
3977
- id: typeof Schema.String;
3978
- summary: typeof Schema.String;
3979
- releases: Schema.Array$<Schema.Struct<{
3980
- name: typeof Schema.String;
3981
- type: Schema.Literal<["major", "minor", "patch"]>;
3967
+ readonly id: Schema.String;
3968
+ readonly summary: Schema.String;
3969
+ readonly releases: Schema.$Array<Schema.Struct<{
3970
+ readonly name: Schema.String;
3971
+ readonly type: Schema.Literals<readonly ["major", "minor", "patch"]>;
3982
3972
  }>>;
3983
3973
  }>;
3984
3974
  /** A parsed pending changeset. @public */
3985
3975
  type PendingChangeset = Schema.Schema.Type<typeof PendingChangesetSchema>;
3986
3976
  /** Read-only preview of what the next release would produce. @public */
3987
3977
  declare const ChangesetPreviewSchema: Schema.Struct<{
3988
- preMode: Schema.NullOr<Schema.Literal<["exit", "pre"]>>;
3989
- releases: Schema.Array$<Schema.Struct<{
3990
- name: typeof Schema.String;
3991
- type: Schema.Literal<["major", "minor", "patch"]>;
3992
- oldVersion: typeof Schema.String;
3993
- newVersion: typeof Schema.String;
3994
- changesetIds: Schema.Array$<typeof Schema.String>;
3995
- changelogEntry: typeof Schema.String;
3978
+ readonly preMode: Schema.NullOr<Schema.Literals<readonly ["exit", "pre"]>>;
3979
+ readonly releases: Schema.$Array<Schema.Struct<{
3980
+ readonly name: Schema.String;
3981
+ readonly type: Schema.Literals<readonly ["major", "minor", "patch"]>;
3982
+ readonly oldVersion: Schema.String;
3983
+ readonly newVersion: Schema.String;
3984
+ readonly changesetIds: Schema.$Array<Schema.String>;
3985
+ readonly changelogEntry: Schema.String;
3996
3986
  }>>;
3997
- changesets: Schema.Array$<Schema.Struct<{
3998
- id: typeof Schema.String;
3999
- summary: typeof Schema.String;
4000
- releases: Schema.Array$<Schema.Struct<{
4001
- name: typeof Schema.String;
4002
- type: Schema.Literal<["major", "minor", "patch"]>;
3987
+ readonly changesets: Schema.$Array<Schema.Struct<{
3988
+ readonly id: Schema.String;
3989
+ readonly summary: Schema.String;
3990
+ readonly releases: Schema.$Array<Schema.Struct<{
3991
+ readonly name: Schema.String;
3992
+ readonly type: Schema.Literals<readonly ["major", "minor", "patch"]>;
4003
3993
  }>>;
4004
3994
  }>>;
4005
3995
  }>;
@@ -4007,29 +3997,29 @@ declare const ChangesetPreviewSchema: Schema.Struct<{
4007
3997
  type ChangesetPreview = Schema.Schema.Type<typeof ChangesetPreviewSchema>;
4008
3998
  /** One applied package release (version transition). @public */
4009
3999
  declare const AppliedReleaseEntrySchema: Schema.Struct<{
4010
- name: typeof Schema.String;
4011
- type: Schema.Literal<["major", "minor", "patch"]>;
4012
- oldVersion: typeof Schema.String;
4013
- newVersion: typeof Schema.String;
4000
+ readonly name: Schema.String;
4001
+ readonly type: Schema.Literals<readonly ["major", "minor", "patch"]>;
4002
+ readonly oldVersion: Schema.String;
4003
+ readonly newVersion: Schema.String;
4014
4004
  }>;
4015
4005
  /** A single versionFiles update applied (or planned, when dry). @public */
4016
4006
  declare const VersionFileUpdateRecordSchema: Schema.Struct<{
4017
- filePath: typeof Schema.String;
4018
- version: typeof Schema.String;
4007
+ readonly filePath: Schema.String;
4008
+ readonly version: Schema.String;
4019
4009
  }>;
4020
4010
  /** Result of {@link ReleasePlanner.apply}. @public */
4021
4011
  declare const AppliedReleaseSchema: Schema.Struct<{
4022
- dryRun: typeof Schema.Boolean;
4023
- touchedFiles: Schema.Array$<typeof Schema.String>;
4024
- releases: Schema.Array$<Schema.Struct<{
4025
- name: typeof Schema.String;
4026
- type: Schema.Literal<["major", "minor", "patch"]>;
4027
- oldVersion: typeof Schema.String;
4028
- newVersion: typeof Schema.String;
4012
+ readonly dryRun: Schema.Boolean;
4013
+ readonly touchedFiles: Schema.$Array<Schema.String>;
4014
+ readonly releases: Schema.$Array<Schema.Struct<{
4015
+ readonly name: Schema.String;
4016
+ readonly type: Schema.Literals<readonly ["major", "minor", "patch"]>;
4017
+ readonly oldVersion: Schema.String;
4018
+ readonly newVersion: Schema.String;
4029
4019
  }>>;
4030
- versionFileUpdates: Schema.Array$<Schema.Struct<{
4031
- filePath: typeof Schema.String;
4032
- version: typeof Schema.String;
4020
+ readonly versionFileUpdates: Schema.$Array<Schema.Struct<{
4021
+ readonly filePath: Schema.String;
4022
+ readonly version: Schema.String;
4033
4023
  }>>;
4034
4024
  }>;
4035
4025
  /** Result of a native apply. @public */
@@ -4054,15 +4044,9 @@ interface ReleasePlannerShape {
4054
4044
  readonly changelogModules?: Readonly<Record<string, string>>;
4055
4045
  }) => Effect.Effect<AppliedRelease, ReleasePlanError>;
4056
4046
  }
4057
- /**
4058
- * Base class for {@link ReleasePlanner}.
4059
- *
4060
- * @privateRemarks Required export for api-extractor (anonymous Context.Tag base). Do not delete.
4061
- * @internal
4062
- */
4063
- declare const ReleasePlannerBase: Context.TagClass<ReleasePlanner, "ReleasePlanner", ReleasePlannerShape>;
4047
+ declare const ReleasePlanner_base: Context.ServiceClass<ReleasePlanner, "ReleasePlanner", ReleasePlannerShape>;
4064
4048
  /** Effect service tag for the release planner. @public */
4065
- declare class ReleasePlanner extends ReleasePlannerBase {}
4049
+ declare class ReleasePlanner extends ReleasePlanner_base {}
4066
4050
  /** Production layer. Requires {@link ConfigInspector} (used by `apply`) and `FileSystem`. @public */
4067
4051
  declare const ReleasePlannerLive: Layer.Layer<ReleasePlanner, never, ConfigInspector | FileSystem.FileSystem>;
4068
4052
  /**
@@ -4102,7 +4086,7 @@ declare function makeReleasePlannerTest(fixed: {
4102
4086
  *
4103
4087
  * @public
4104
4088
  */
4105
- declare const ChangesetSummarySchema: Schema.filter<Schema.filter<typeof Schema.String>>;
4089
+ declare const ChangesetSummarySchema: Schema.String;
4106
4090
  /**
4107
4091
  * Schema for a changeset object.
4108
4092
  *
@@ -4133,11 +4117,11 @@ declare const ChangesetSummarySchema: Schema.filter<Schema.filter<typeof Schema.
4133
4117
  */
4134
4118
  declare const ChangesetSchema: Schema.Struct<{
4135
4119
  /** The changeset summary text. */
4136
- summary: Schema.filter<Schema.filter<typeof Schema.String>>;
4120
+ readonly summary: Schema.String;
4137
4121
  /** Unique changeset identifier. */
4138
- id: typeof Schema.String;
4122
+ readonly id: Schema.String;
4139
4123
  /** Git commit hash associated with this changeset. */
4140
- commit: Schema.optional<Schema.filter<typeof Schema.String>>;
4124
+ readonly commit: Schema.optional<Schema.String>;
4141
4125
  }>;
4142
4126
  /**
4143
4127
  * Inferred type for {@link ChangesetSchema}.
@@ -4174,7 +4158,7 @@ interface Changeset extends Schema.Schema.Type<typeof ChangesetSchema> {}
4174
4158
  *
4175
4159
  * @public
4176
4160
  */
4177
- declare const DependencyTypeSchema: Schema.Literal<["dependencies", "devDependencies", "peerDependencies", "optionalDependencies"]>;
4161
+ declare const DependencyTypeSchema: Schema.Literals<readonly ["dependencies", "devDependencies", "peerDependencies", "optionalDependencies"]>;
4178
4162
  /**
4179
4163
  * Inferred type for {@link DependencyTypeSchema}.
4180
4164
  *
@@ -4214,13 +4198,13 @@ type DependencyType = typeof DependencyTypeSchema.Type;
4214
4198
  */
4215
4199
  declare const DependencyUpdateSchema: Schema.Struct<{
4216
4200
  /** Package name (must be non-empty). */
4217
- name: Schema.refine<string, typeof Schema.String>;
4201
+ readonly name: Schema.String;
4218
4202
  /** npm dependency type. */
4219
- type: Schema.Literal<["dependencies", "devDependencies", "peerDependencies", "optionalDependencies"]>;
4203
+ readonly type: Schema.Literals<readonly ["dependencies", "devDependencies", "peerDependencies", "optionalDependencies"]>;
4220
4204
  /** Previous version string. */
4221
- oldVersion: typeof Schema.String;
4205
+ readonly oldVersion: Schema.String;
4222
4206
  /** New version string. */
4223
- newVersion: typeof Schema.String;
4207
+ readonly newVersion: Schema.String;
4224
4208
  }>;
4225
4209
  /**
4226
4210
  * Inferred type for {@link DependencyUpdateSchema}.
@@ -4267,7 +4251,7 @@ interface DependencyUpdate extends Schema.Schema.Type<typeof DependencyUpdateSch
4267
4251
  *
4268
4252
  * @public
4269
4253
  */
4270
- declare const CommitHashSchema: Schema.filter<typeof Schema.String>;
4254
+ declare const CommitHashSchema: Schema.String;
4271
4255
  /**
4272
4256
  * Semantic version bump type.
4273
4257
  *
@@ -4289,7 +4273,7 @@ declare const CommitHashSchema: Schema.filter<typeof Schema.String>;
4289
4273
  *
4290
4274
  * @public
4291
4275
  */
4292
- declare const VersionTypeSchema: Schema.Literal<["major", "minor", "patch", "none"]>;
4276
+ declare const VersionTypeSchema: Schema.Literals<readonly ["major", "minor", "patch", "none"]>;
4293
4277
  /**
4294
4278
  * Inferred type for {@link VersionTypeSchema}.
4295
4279
  *
@@ -4326,7 +4310,7 @@ type VersionType = typeof VersionTypeSchema.Type;
4326
4310
  *
4327
4311
  * @public
4328
4312
  */
4329
- declare const UsernameSchema: Schema.filter<typeof Schema.String>;
4313
+ declare const UsernameSchema: Schema.String;
4330
4314
  /**
4331
4315
  * Schema for a GitHub issue or PR number (positive integer).
4332
4316
  *
@@ -4351,7 +4335,7 @@ declare const UsernameSchema: Schema.filter<typeof Schema.String>;
4351
4335
  *
4352
4336
  * @public
4353
4337
  */
4354
- declare const IssueNumberSchema: Schema.refine<number, Schema.filter<typeof Schema.Number>>;
4338
+ declare const IssueNumberSchema: Schema.Number;
4355
4339
  /**
4356
4340
  * Schema accepting either a plain URL or a markdown link `[text](url)`.
4357
4341
  *
@@ -4385,7 +4369,7 @@ declare const IssueNumberSchema: Schema.refine<number, Schema.filter<typeof Sche
4385
4369
  *
4386
4370
  * @public
4387
4371
  */
4388
- declare const UrlOrMarkdownLinkSchema: Schema.filter<typeof Schema.String>;
4372
+ declare const UrlOrMarkdownLinkSchema: Schema.String;
4389
4373
  /**
4390
4374
  * Schema for a GitHub info response from `\@changesets/get-github-info`.
4391
4375
  *
@@ -4423,17 +4407,17 @@ declare const UrlOrMarkdownLinkSchema: Schema.filter<typeof Schema.String>;
4423
4407
  */
4424
4408
  declare const GitHubInfoSchema: Schema.Struct<{
4425
4409
  /** GitHub username of the commit author. */
4426
- user: Schema.optional<Schema.filter<typeof Schema.String>>;
4410
+ readonly user: Schema.optional<Schema.String>;
4427
4411
  /** Pull request number associated with the commit. */
4428
- pull: Schema.optional<Schema.refine<number, Schema.filter<typeof Schema.Number>>>;
4412
+ readonly pull: Schema.optional<Schema.Number>;
4429
4413
  /** Markdown-formatted links. */
4430
- links: Schema.Struct<{
4414
+ readonly links: Schema.Struct<{
4431
4415
  /** Link to the commit. */
4432
- commit: Schema.filter<typeof Schema.String>;
4416
+ readonly commit: Schema.String;
4433
4417
  /** Link to the associated pull request. */
4434
- pull: Schema.optional<Schema.filter<typeof Schema.String>>;
4418
+ readonly pull: Schema.optional<Schema.String>;
4435
4419
  /** Link to the author's GitHub profile. */
4436
- user: Schema.optional<Schema.filter<typeof Schema.String>>;
4420
+ readonly user: Schema.optional<Schema.String>;
4437
4421
  }>;
4438
4422
  }>;
4439
4423
  /**
@@ -4471,7 +4455,7 @@ interface GitHubInfo extends Schema.Schema.Type<typeof GitHubInfoSchema> {}
4471
4455
  *
4472
4456
  * @public
4473
4457
  */
4474
- declare const GlobSchema: Schema.filter<Schema.filter<typeof Schema.String>>;
4458
+ declare const GlobSchema: Schema.String;
4475
4459
  /**
4476
4460
  * Schema for a single entry in the `packages` record — the per-package
4477
4461
  * release-surface declaration.
@@ -4511,11 +4495,11 @@ declare const GlobSchema: Schema.filter<Schema.filter<typeof Schema.String>>;
4511
4495
  */
4512
4496
  declare const PackageScopeSchema: Schema.Struct<{
4513
4497
  /** Repo-relative globs naming files outside the package's workspace directory that belong to its release surface. */
4514
- additionalScopes: Schema.optional<Schema.Array$<Schema.filter<Schema.filter<typeof Schema.String>>>>;
4498
+ readonly additionalScopes: Schema.optional<Schema.$Array<Schema.String>>;
4515
4499
  /** Files whose JSON fields are bumped in lockstep with this package's version. */
4516
- versionFiles: Schema.optional<Schema.Array$<Schema.Struct<{
4517
- glob: Schema.filter<typeof Schema.String>;
4518
- paths: Schema.optional<Schema.Array$<Schema.filter<typeof Schema.String>>>;
4500
+ readonly versionFiles: Schema.optional<Schema.$Array<Schema.Struct<{
4501
+ readonly glob: Schema.String;
4502
+ readonly paths: Schema.optional<Schema.$Array<Schema.String>>;
4519
4503
  }>>>;
4520
4504
  }>;
4521
4505
  /**
@@ -4535,13 +4519,13 @@ interface PackageScope extends Schema.Schema.Type<typeof PackageScopeSchema> {}
4535
4519
  *
4536
4520
  * @public
4537
4521
  */
4538
- declare const PackagesRecordSchema: Schema.Record$<typeof Schema.String, Schema.Struct<{
4522
+ declare const PackagesRecordSchema: Schema.$Record<Schema.String, Schema.Struct<{
4539
4523
  /** Repo-relative globs naming files outside the package's workspace directory that belong to its release surface. */
4540
- additionalScopes: Schema.optional<Schema.Array$<Schema.filter<Schema.filter<typeof Schema.String>>>>;
4524
+ readonly additionalScopes: Schema.optional<Schema.$Array<Schema.String>>;
4541
4525
  /** Files whose JSON fields are bumped in lockstep with this package's version. */
4542
- versionFiles: Schema.optional<Schema.Array$<Schema.Struct<{
4543
- glob: Schema.filter<typeof Schema.String>;
4544
- paths: Schema.optional<Schema.Array$<Schema.filter<typeof Schema.String>>>;
4526
+ readonly versionFiles: Schema.optional<Schema.$Array<Schema.Struct<{
4527
+ readonly glob: Schema.String;
4528
+ readonly paths: Schema.optional<Schema.$Array<Schema.String>>;
4545
4529
  }>>>;
4546
4530
  }>>;
4547
4531
  //#endregion
@@ -4570,7 +4554,7 @@ declare const PackagesRecordSchema: Schema.Record$<typeof Schema.String, Schema.
4570
4554
  *
4571
4555
  * @public
4572
4556
  */
4573
- declare const NonEmptyString: Schema.filter<typeof Schema.String>;
4557
+ declare const NonEmptyString: Schema.String;
4574
4558
  /**
4575
4559
  * A positive integer schema.
4576
4560
  *
@@ -4598,7 +4582,7 @@ declare const NonEmptyString: Schema.filter<typeof Schema.String>;
4598
4582
  *
4599
4583
  * @public
4600
4584
  */
4601
- declare const PositiveInteger: Schema.filter<Schema.filter<typeof Schema.Number>>;
4585
+ declare const PositiveInteger: Schema.Number;
4602
4586
  //#endregion
4603
4587
  //#region src/changesets/schemas/version-files.d.ts
4604
4588
  /**
@@ -4628,7 +4612,7 @@ declare const PositiveInteger: Schema.filter<Schema.filter<typeof Schema.Number>
4628
4612
  *
4629
4613
  * @public
4630
4614
  */
4631
- declare const JsonPathSchema: Schema.filter<typeof Schema.String>;
4615
+ declare const JsonPathSchema: Schema.String;
4632
4616
  /**
4633
4617
  * Schema for a single version file configuration entry — **new shape**.
4634
4618
  *
@@ -4657,9 +4641,9 @@ declare const JsonPathSchema: Schema.filter<typeof Schema.String>;
4657
4641
  */
4658
4642
  declare const VersionFileConfigSchema: Schema.Struct<{
4659
4643
  /** Glob pattern to match JSON files. */
4660
- glob: Schema.filter<typeof Schema.String>;
4644
+ readonly glob: Schema.String;
4661
4645
  /** JSONPath expressions to locate version fields. Defaults to `["$.version"]`. */
4662
- paths: Schema.optional<Schema.Array$<Schema.filter<typeof Schema.String>>>;
4646
+ readonly paths: Schema.optional<Schema.$Array<Schema.String>>;
4663
4647
  }>;
4664
4648
  /**
4665
4649
  * Inferred type for {@link VersionFileConfigSchema} (new shape).
@@ -4672,11 +4656,11 @@ interface VersionFileConfig extends Schema.Schema.Type<typeof VersionFileConfigS
4672
4656
  *
4673
4657
  * @public
4674
4658
  */
4675
- declare const VersionFilesSchema: Schema.Array$<Schema.Struct<{
4659
+ declare const VersionFilesSchema: Schema.$Array<Schema.Struct<{
4676
4660
  /** Glob pattern to match JSON files. */
4677
- glob: Schema.filter<typeof Schema.String>;
4661
+ readonly glob: Schema.String;
4678
4662
  /** JSONPath expressions to locate version fields. Defaults to `["$.version"]`. */
4679
- paths: Schema.optional<Schema.Array$<Schema.filter<typeof Schema.String>>>;
4663
+ readonly paths: Schema.optional<Schema.$Array<Schema.String>>;
4680
4664
  }>>;
4681
4665
  /**
4682
4666
  * Schema for a single version file configuration entry — **legacy shape**.
@@ -4714,11 +4698,11 @@ declare const VersionFilesSchema: Schema.Array$<Schema.Struct<{
4714
4698
  */
4715
4699
  declare const LegacyVersionFileConfigSchema: Schema.Struct<{
4716
4700
  /** Glob pattern to match JSON files. */
4717
- glob: Schema.filter<typeof Schema.String>;
4701
+ readonly glob: Schema.String;
4718
4702
  /** JSONPath expressions to locate version fields. Defaults to `["$.version"]`. */
4719
- paths: Schema.optional<Schema.Array$<Schema.filter<typeof Schema.String>>>;
4703
+ readonly paths: Schema.optional<Schema.$Array<Schema.String>>;
4720
4704
  /** Workspace package name to source the version from, bypassing path-based resolution. */
4721
- package: Schema.optional<Schema.filter<typeof Schema.String>>;
4705
+ readonly package: Schema.optional<Schema.String>;
4722
4706
  }>;
4723
4707
  /**
4724
4708
  * Inferred type for {@link LegacyVersionFileConfigSchema} (deprecated shape).
@@ -4736,13 +4720,13 @@ interface LegacyVersionFileConfig extends Schema.Schema.Type<typeof LegacyVersio
4736
4720
  * `packages[*].versionFiles`. Removed in 1.0.0.
4737
4721
  * @public
4738
4722
  */
4739
- declare const LegacyVersionFilesSchema: Schema.Array$<Schema.Struct<{
4723
+ declare const LegacyVersionFilesSchema: Schema.$Array<Schema.Struct<{
4740
4724
  /** Glob pattern to match JSON files. */
4741
- glob: Schema.filter<typeof Schema.String>;
4725
+ readonly glob: Schema.String;
4742
4726
  /** JSONPath expressions to locate version fields. Defaults to `["$.version"]`. */
4743
- paths: Schema.optional<Schema.Array$<Schema.filter<typeof Schema.String>>>;
4727
+ readonly paths: Schema.optional<Schema.$Array<Schema.String>>;
4744
4728
  /** Workspace package name to source the version from, bypassing path-based resolution. */
4745
- package: Schema.optional<Schema.filter<typeof Schema.String>>;
4729
+ readonly package: Schema.optional<Schema.String>;
4746
4730
  }>>;
4747
4731
  //#endregion
4748
4732
  //#region src/changesets/utils/dependency-table.d.ts
@@ -4780,7 +4764,7 @@ declare function serializeDependencyTableToMarkdown(rows: DependencyTableRow[]):
4780
4764
  *
4781
4765
  * @internal
4782
4766
  */
4783
- declare function gitMergeBase(cwd: string, base: string): Effect.Effect<string, GitError>;
4767
+ declare function gitMergeBase(cwd: string, base: string): Effect.Effect<string, GitError, Git>;
4784
4768
  //#endregion
4785
4769
  //#region src/changesets/utils/publishability.d.ts
4786
4770
  /**
@@ -4790,24 +4774,22 @@ declare function gitMergeBase(cwd: string, base: string): Effect.Effect<string,
4790
4774
  * Uses the currently-active {@link SilkPublishability} — wire the
4791
4775
  * {@link SilkPublishabilityDetectorLive} layer to get silk semantics.
4792
4776
  *
4793
- * `root` is passed through verbatim to `detector.detect(pkg, root)` for every
4794
- * packageit must be the project root (the directory containing
4795
- * `.changeset/`), NOT the individual package's directory. The vanilla
4796
- * `PublishabilityDetectorLive` and plain `SilkPublishabilityDetectorLive`
4797
- * both ignore this argument, but the ignore/mode-aware
4798
- * `PublishabilityDetectorAdaptiveLive` reads `.changeset/config.json`
4799
- * relative to it, so passing a package subdirectory silently makes every
4800
- * package resolve to "not publishable". Mirrors
4801
- * {@link SilkPublishability.listPublishable}, which takes the same
4777
+ * The kit's `PublishabilityDetector.detect` contract no longer receives the
4778
+ * workspace root — the ignore/mode-aware `PublishabilityDetectorAdaptiveLive`
4779
+ * derives the `.changeset/config.json` root per package from the package's
4780
+ * own discovery coordinates (`pkg.path` ascended by `pkg.relativePath`).
4781
+ * The `root` parameter is retained for signature stability
4782
+ * but is no longer consulted. Mirrors
4783
+ * {@link SilkPublishability.listPublishable}, which keeps the same inert
4802
4784
  * single-root parameter for the same reason.
4803
4785
  *
4804
4786
  * @param packages - The workspace packages to evaluate
4805
- * @param root - Absolute path to the project root containing `.changeset/`
4787
+ * @param _root - Retained for signature stability; no longer consulted
4806
4788
  * @returns An Effect yielding a `Set` of publishable package names
4807
4789
  *
4808
4790
  * @public
4809
4791
  */
4810
- declare function listPublishablePackageNames(packages: ReadonlyArray<WorkspacePackage>, root: string): Effect.Effect<ReadonlySet<string>, never, PublishabilityDetector>;
4792
+ declare function listPublishablePackageNames(packages: ReadonlyArray<WorkspacePackage>, _root: string): Effect.Effect<ReadonlySet<string>, never, PublishabilityDetector>;
4811
4793
  //#endregion
4812
4794
  //#region src/changesets/utils/version-files.d.ts
4813
4795
  /**
@@ -4861,13 +4843,14 @@ interface WorkspaceVersion {
4861
4843
  *
4862
4844
  * @example
4863
4845
  * ```typescript
4846
+ * import { Effect } from "effect";
4864
4847
  * import { VersionFiles } from "../utils/version-files.js";
4865
4848
  *
4866
4849
  * const configs = VersionFiles.extractVersionFiles(parsedConfig);
4867
4850
  * if (configs) {
4868
- * const updates = VersionFiles.processVersionFiles("/path/to/project", configs);
4851
+ * const updates = yield* VersionFiles.processVersionFiles("/path/to/project", configs);
4869
4852
  * for (const update of updates) {
4870
- * console.log(`Updated ${update.filePath} to ${update.version}`);
4853
+ * yield* Effect.log(`Updated ${update.filePath} to ${update.version}`);
4871
4854
  * }
4872
4855
  * }
4873
4856
  * ```
@@ -4934,15 +4917,18 @@ declare class VersionFiles {
4934
4917
  * Resolve glob patterns to absolute file paths.
4935
4918
  *
4936
4919
  * @remarks
4937
- * Uses `tinyglobby` to expand each config's glob pattern relative to
4938
- * `cwd`. The `node_modules` directory is always ignored. Returns
4939
- * tuples pairing each resolved absolute path with its originating config.
4920
+ * Compiles each config's glob with `@effected/glob` and expands it against
4921
+ * a filesystem walk rooted at `cwd` via `@effected/walker`'s `descend`
4922
+ * (literal patterns fast-path a direct stat; magic patterns walk from
4923
+ * their literal prefix). The `node_modules` and `.git` directories are
4924
+ * always ignored. Returns tuples pairing each resolved absolute path with
4925
+ * its originating config, per-glob results sorted by relative path.
4940
4926
  *
4941
4927
  * @param configs - Version file configurations
4942
4928
  * @param cwd - Project root directory
4943
- * @returns Array of `[filePath, config]` tuples
4929
+ * @returns Effect of `[filePath, config]` tuples
4944
4930
  */
4945
- static resolveGlobs(configs: readonly LegacyVersionFileConfig[], cwd: string): Array<[string, LegacyVersionFileConfig]>;
4931
+ static resolveGlobs(configs: readonly LegacyVersionFileConfig[], cwd: string): Effect.Effect<Array<[string, LegacyVersionFileConfig]>, DescendError, FileSystem.FileSystem>;
4946
4932
  /**
4947
4933
  * Detect indentation from file content.
4948
4934
  *
@@ -5007,9 +4993,9 @@ declare class VersionFiles {
5007
4993
  * the updated document, or `undefined` when nothing changed.
5008
4994
  *
5009
4995
  * @remarks
5010
- * Delegates to `jsonc-effect`'s {@link modify} + {@link applyEdits}
5011
- * (requires `jsonc-effect >= 0.3.1`, whose edit spans touch only the target
5012
- * value), so every other byte of the document is preserved. When the leaf
4996
+ * Delegates to `@effected/jsonc`'s `JsoncModifier.modify` +
4997
+ * `JsoncEdit.applyAll` (whose edit spans touch only the target value), so
4998
+ * every other byte of the document is preserved. When the leaf
5013
4999
  * of a wildcard-free path does not exist, `modify` inserts the property
5014
5000
  * after the last sibling using the supplied formatting options — the only
5015
5001
  * case where the detected indent matters. A path whose parent is missing or
@@ -5036,14 +5022,15 @@ declare class VersionFiles {
5036
5022
  * @param cwd - Project root directory
5037
5023
  * @param configs - Validated version file configurations
5038
5024
  * @param dryRun - If true, do not write files (default: `false`)
5039
- * @returns Array of update results
5040
- * @throws If any file cannot be read or parsed
5025
+ * @returns Effect of update results; a file that cannot be read or parsed
5026
+ * is a defect (the legacy path treats it as a caller bug, as the
5027
+ * previous synchronous `throw` did)
5041
5028
  */
5042
5029
  static processVersionFiles(cwd: string, configs: readonly LegacyVersionFileConfig[], dryRun?: boolean, packages?: ReadonlyArray<{
5043
5030
  name: string;
5044
5031
  version: string;
5045
5032
  path: string;
5046
- }>): VersionFileUpdate[];
5033
+ }>): Effect.Effect<VersionFileUpdate[], DescendError, FileSystem.FileSystem>;
5047
5034
  /**
5048
5035
  * Apply version-file updates from the resolved (post-`ConfigInspector`)
5049
5036
  * representation. Each {@link ResolvedPackageScope} already names the
@@ -5187,7 +5174,7 @@ interface TokenTypeMap {
5187
5174
  chunkString: 'chunkString';
5188
5175
  }
5189
5176
  //#endregion
5190
- //#region ../../node_modules/.pnpm/markdownlint@0.41.0/node_modules/markdownlint/lib/markdownlint.d.mts
5177
+ //#region ../../node_modules/.pnpm/markdownlint@0.41.1/node_modules/markdownlint/lib/markdownlint.d.mts
5191
5178
  /**
5192
5179
  * Function to implement rule logic.
5193
5180
  */
@@ -5460,7 +5447,7 @@ type Rule$2 = {
5460
5447
  */
5461
5448
  type RuleConfiguration = boolean | any;
5462
5449
  //#endregion
5463
- //#region ../../node_modules/.pnpm/markdownlint@0.41.0/node_modules/markdownlint/lib/exports.d.mts
5450
+ //#region ../../node_modules/.pnpm/markdownlint@0.41.1/node_modules/markdownlint/lib/exports.d.mts
5464
5451
  type Rule$1 = Rule$2;
5465
5452
  //#endregion
5466
5453
  //#region src/changesets/markdownlint/rules/content-structure.d.ts
@@ -5742,7 +5729,7 @@ declare const RequiredSectionsRule: import("unified-lint-rule").Plugin<Root, unk
5742
5729
  //#region src/changesets/remark/rules/uncategorized-content.d.ts
5743
5730
  declare const UncategorizedContentRule: import("unified-lint-rule").Plugin<Root, unknown>;
5744
5731
  declare namespace index_d_exports {
5745
- export { AggregateDependencyTablesPlugin, AppliedRelease, AppliedReleaseEntrySchema, AppliedReleaseSchema, BranchAnalysis, BranchAnalysisSchema, BranchAnalyzer, BranchAnalyzerBase, BranchAnalyzerLive, BranchAnalyzerShape, BranchFileEntry, BranchFileEntrySchema, BumpType, BumpTypeSchema, Categories, Changelog, ChangelogService, ChangelogServiceBase, ChangelogServiceShape, ChangelogTransformer, Changeset, ChangesetIOError, ChangesetIOErrorBase, ChangesetLinter, ChangesetOptions, ChangesetOptionsSchema, ChangesetPreview, ChangesetPreviewSchema, ChangesetSchema, ChangesetSummarySchema, ChangesetValidationError, ChangesetValidationErrorBase, Classification, ClassificationReason, ClassificationReasonSchema, ClassificationSchema, CommitHashSchema, ConfigInspector, ConfigInspectorBase, ConfigInspectorLive, ConfigInspectorShape, ConfigurationError, ConfigurationErrorBase, ContentStructureRule, ContributorFootnotesPlugin, DeduplicateItemsPlugin, DependencyAction, DependencyActionSchema, DependencyTable, DependencyTableFormatRule, DependencyTableRow, DependencyTableRowSchema, DependencyTableSchema, DependencyTableType, DependencyTableTypeSchema, DependencyType, DependencyTypeSchema, DependencyUpdate, DependencyUpdateSchema, DepsRegen, DepsRegenBase, DepsRegenDefault, DepsRegenLive, DepsRegenOptions, DepsRegenShape, FileStatus, FileStatusSchema, GitError, GitErrorBase, GitHubApiError, GitHubApiErrorBase, GitHubCommitInfo, GitHubInfo, GitHubInfoSchema, GitHubLive, GitHubService, GitHubServiceBase, GitHubServiceShape, GlobSchema, HeadingHierarchyRule, InspectedConfig, InspectedConfigSchema, IssueLinkRefsPlugin, IssueNumberSchema, JsonPathSchema, LegacyVersionFileConfig, LegacyVersionFileConfigSchema, LegacyVersionFilesSchema, LintMessage, MaintenanceNoteOptions, MaintenanceNotePlugin, MaintenanceReason, MaintenanceReasonSchema, MaintenanceTrigger, MaintenanceTriggerSchema, MarkdownLive, MarkdownParseError, MarkdownParseErrorBase, MarkdownService, MarkdownServiceBase, MarkdownServiceShape, ContentStructureRule$1 as MarkdownlintContentStructureRule, DependencyTableFormatRule$1 as MarkdownlintDependencyTableFormatRule, HeadingHierarchyRule$1 as MarkdownlintHeadingHierarchyRule, RequiredSectionsRule$1 as MarkdownlintRequiredSectionsRule, UncategorizedContentRule$1 as MarkdownlintUncategorizedContentRule, MergeSectionsPlugin, NonEmptyString, NormalizeFormatPlugin, PackageScope, PackageScopeSchema, PackagesRecordSchema, PendingChangeset, PendingChangesetSchema, PositiveInteger, PreviewRelease, PreviewReleaseSchema, RegenPlan, RegenResult, ReleasePlanError, ReleasePlanErrorBase, ReleasePlanner, ReleasePlannerBase, ReleasePlannerLive, ReleasePlannerShape, ReorderSectionsPlugin, RepoSchema, RequiredSectionsRule, ResolvedPackageScope, ResolvedPackageScopeSchema, ResolvedVersionFile, ResolvedVersionFileSchema, SectionCategory, SectionCategorySchema, SilkChangesetPreset, SilkChangesetTransformPreset, SilkChangesetsRules, TransformOptions, UncategorizedContentRule, UrlOrMarkdownLinkSchema, UsernameSchema, VERSION_RE, VersionFileConfig, VersionFileConfigSchema, VersionFileError, VersionFileErrorBase, VersionFileUpdate, VersionFileUpdateRecordSchema, VersionFiles, VersionFilesSchema, VersionOrEmptySchema, VersionType, VersionTypeSchema, WorkspaceDependencyDiff, WorkspaceVersion, changelogFunctions, computeWorkspaceDependencyDiffs, deriveMaintenanceReason, gitMergeBase, isPureDependencyChangeset, listPublishablePackageNames, makeBranchAnalyzerTest, makeConfigInspectorTest, makeGitHubTest, makeReleasePlannerTest, serializeDependencyTableToMarkdown };
5732
+ export { AggregateDependencyTablesPlugin, AppliedRelease, AppliedReleaseEntrySchema, AppliedReleaseSchema, BranchAnalysis, BranchAnalysisSchema, BranchAnalyzer, BranchAnalyzerLive, BranchAnalyzerShape, BranchFileEntry, BranchFileEntrySchema, BumpType, BumpTypeSchema, Categories, Changelog, ChangelogService, ChangelogServiceShape, ChangelogTransformer, Changeset, ChangesetIOError, ChangesetLinter, ChangesetOptions, ChangesetOptionsSchema, ChangesetPreview, ChangesetPreviewSchema, ChangesetSchema, ChangesetSummarySchema, ChangesetValidationError, Classification, ClassificationReason, ClassificationReasonSchema, ClassificationSchema, CommitHashSchema, ConfigInspector, ConfigInspectorLive, ConfigInspectorShape, ConfigurationError, ContentStructureRule, ContributorFootnotesPlugin, DeduplicateItemsPlugin, DependencyAction, DependencyActionSchema, DependencyTable, DependencyTableFormatRule, DependencyTableRow, DependencyTableRowSchema, DependencyTableSchema, DependencyTableType, DependencyTableTypeSchema, DependencyType, DependencyTypeSchema, DependencyUpdate, DependencyUpdateSchema, DepsRegen, DepsRegenDefault, DepsRegenLive, DepsRegenOptions, DepsRegenPlanError, DepsRegenShape, FileStatus, FileStatusSchema, GitError, GitHubApiError, GitHubCommitInfo, GitHubInfo, GitHubInfoSchema, GitHubLive, GitHubService, GitHubServiceShape, GlobSchema, HeadingHierarchyRule, InspectedConfig, InspectedConfigSchema, IssueLinkRefsPlugin, IssueNumberSchema, JsonPathSchema, LegacyVersionFileConfig, LegacyVersionFileConfigSchema, LegacyVersionFilesSchema, LintMessage, MaintenanceNoteOptions, MaintenanceNotePlugin, MaintenanceReason, MaintenanceReasonSchema, MaintenanceTrigger, MaintenanceTriggerSchema, MarkdownLive, MarkdownParseError, MarkdownService, MarkdownServiceShape, ContentStructureRule$1 as MarkdownlintContentStructureRule, DependencyTableFormatRule$1 as MarkdownlintDependencyTableFormatRule, HeadingHierarchyRule$1 as MarkdownlintHeadingHierarchyRule, RequiredSectionsRule$1 as MarkdownlintRequiredSectionsRule, UncategorizedContentRule$1 as MarkdownlintUncategorizedContentRule, MergeSectionsPlugin, NonEmptyString, NormalizeFormatPlugin, PackageScope, PackageScopeSchema, PackagesRecordSchema, PendingChangeset, PendingChangesetSchema, PositiveInteger, PreviewRelease, PreviewReleaseSchema, RegenPlan, RegenResult, ReleasePlanError, ReleasePlanner, ReleasePlannerLive, ReleasePlannerShape, ReorderSectionsPlugin, RepoSchema, RequiredSectionsRule, ResolvedPackageScope, ResolvedPackageScopeSchema, ResolvedVersionFile, ResolvedVersionFileSchema, SectionCategory, SectionCategorySchema, SilkChangesetPreset, SilkChangesetTransformPreset, SilkChangesetsRules, TransformOptions, UncategorizedContentRule, UrlOrMarkdownLinkSchema, UsernameSchema, VERSION_RE, VersionFileConfig, VersionFileConfigSchema, VersionFileError, VersionFileUpdate, VersionFileUpdateRecordSchema, VersionFiles, VersionFilesSchema, VersionOrEmptySchema, VersionType, VersionTypeSchema, WorkspaceDependencyDiff, WorkspaceVersion, changelogFunctions, computeWorkspaceDependencyDiffs, deriveMaintenanceReason, gitMergeBase, isPureDependencyChangeset, listPublishablePackageNames, makeBranchAnalyzerTest, makeConfigInspectorTest, makeDepsRegenDefault, makeGitHubTest, makeReleasePlannerTest, serializeDependencyTableToMarkdown };
5746
5733
  }
5747
5734
  //#endregion
5748
5735
  //#region src/commitlint/config/schema.d.ts
@@ -5858,11 +5845,6 @@ interface ConfigOptions {
5858
5845
  }
5859
5846
  //#endregion
5860
5847
  //#region src/commitlint/config/types.d.ts
5861
- /**
5862
- * TypeScript type definitions for commitlint configuration.
5863
- *
5864
- * @internal
5865
- */
5866
5848
  /**
5867
5849
  * Rule severity level.
5868
5850
  * - 0: Disabled
@@ -6120,11 +6102,6 @@ interface FormatterResult {
6120
6102
  declare function format(formatterResult: FormatterResult): string;
6121
6103
  //#endregion
6122
6104
  //#region src/commitlint/formatter/messages.d.ts
6123
- /**
6124
- * Error message templates for the formatter.
6125
- *
6126
- * @internal
6127
- */
6128
6105
  /**
6129
6106
  * Detailed error explanations for common rule failures.
6130
6107
  *
@@ -6433,7 +6410,7 @@ declare function detectDCO(cwd?: string): boolean;
6433
6410
  * Detect package scopes from workspace configuration.
6434
6411
  *
6435
6412
  * @remarks
6436
- * Uses workspaces-effect to find all packages in the workspace and extracts
6413
+ * Uses `@effected/workspaces` to find all packages in the workspace and extracts
6437
6414
  * their names as potential commit scopes. For scoped packages like
6438
6415
  * `@scope/package-name`, only the package name portion is used as the scope.
6439
6416
  *
@@ -6441,30 +6418,30 @@ declare function detectDCO(cwd?: string): boolean;
6441
6418
  *
6442
6419
  * @public
6443
6420
  */
6444
- declare const detectScopes: Effect.Effect<string[], WorkspaceDiscoveryError, WorkspaceDiscovery>;
6421
+ declare const detectScopes: Effect.Effect<string[], WorkspaceDiscoveryFailure, WorkspaceDiscovery>;
6445
6422
  //#endregion
6446
6423
  //#region src/commitlint/hook/envelope.d.ts
6447
6424
  declare const PreToolUseEnvelope: Schema.Struct<{
6448
- hook_event_name: Schema.Literal<["PreToolUse"]>;
6449
- tool_name: typeof Schema.String;
6450
- tool_input: Schema.Record$<typeof Schema.String, typeof Schema.Unknown>;
6425
+ readonly hook_event_name: Schema.Literal<"PreToolUse">;
6426
+ readonly tool_name: Schema.String;
6427
+ readonly tool_input: Schema.$Record<Schema.String, Schema.Unknown>;
6451
6428
  }>;
6452
6429
  type PreToolUseEnvelope = Schema.Schema.Type<typeof PreToolUseEnvelope>;
6453
6430
  declare const PostToolUseEnvelope: Schema.Struct<{
6454
- hook_event_name: Schema.Literal<["PostToolUse"]>;
6455
- tool_name: typeof Schema.String;
6456
- tool_input: Schema.Record$<typeof Schema.String, typeof Schema.Unknown>;
6457
- tool_response: Schema.Struct<{
6458
- interrupted: Schema.optional<typeof Schema.Boolean>;
6459
- exit_code: Schema.optional<typeof Schema.Number>;
6460
- stdout: Schema.optional<typeof Schema.String>;
6461
- stderr: Schema.optional<typeof Schema.String>;
6431
+ readonly hook_event_name: Schema.Literal<"PostToolUse">;
6432
+ readonly tool_name: Schema.String;
6433
+ readonly tool_input: Schema.$Record<Schema.String, Schema.Unknown>;
6434
+ readonly tool_response: Schema.Struct<{
6435
+ readonly interrupted: Schema.optional<Schema.Boolean>;
6436
+ readonly exit_code: Schema.optional<Schema.Number>;
6437
+ readonly stdout: Schema.optional<Schema.String>;
6438
+ readonly stderr: Schema.optional<Schema.String>;
6462
6439
  }>;
6463
6440
  }>;
6464
6441
  type PostToolUseEnvelope = Schema.Schema.Type<typeof PostToolUseEnvelope>;
6465
6442
  declare const SessionStartEnvelope: Schema.Struct<{
6466
- hook_event_name: Schema.Literal<["SessionStart"]>;
6467
- source: Schema.optional<typeof Schema.String>;
6443
+ readonly hook_event_name: Schema.Literal<"SessionStart">;
6444
+ readonly source: Schema.optional<Schema.String>;
6468
6445
  }>;
6469
6446
  type SessionStartEnvelope = Schema.Schema.Type<typeof SessionStartEnvelope>;
6470
6447
  //#endregion
@@ -6498,7 +6475,7 @@ declare function parseBashCommand(command: string): ParsedCommit;
6498
6475
  //#endregion
6499
6476
  //#region src/commitlint/hook/silence-logger.d.ts
6500
6477
  /**
6501
- * Combined hook logger layer: stderr redirect merged with the Warning minimum
6478
+ * Combined hook logger layer: stderr redirect merged with the Warn minimum
6502
6479
  * log level. Provided by hook command wrappers to keep stdout corruption-proof.
6503
6480
  */
6504
6481
  declare const HookSilencer: Layer.Layer<never, never, never>;
@@ -6509,7 +6486,7 @@ interface BranchInfo {
6509
6486
  inferredTicketId: number | null;
6510
6487
  }
6511
6488
  declare function inferTicketId(branch: string): number | null;
6512
- declare function readBranchInfo(): Effect.Effect<BranchInfo>;
6489
+ declare function readBranchInfo(): Effect.Effect<BranchInfo, never, Git>;
6513
6490
  //#endregion
6514
6491
  //#region src/commitlint/hook/diagnostics/cache.d.ts
6515
6492
  declare function readCache<T>(path: string, ttlSeconds: number): Effect.Effect<T | null>;
@@ -6528,8 +6505,8 @@ declare const ISSUES_CACHE_TTL_SECONDS = 600;
6528
6505
  /** Relative path under CLAUDE_PROJECT_DIR where the open-issues cache lives. */
6529
6506
  declare const ISSUES_CACHE_RELATIVE_PATH = ".claude/cache/issues.json";
6530
6507
  declare function readOpenIssuesFromCache(cachePath: string, ttlSeconds?: number): Effect.Effect<OpenIssue[] | null>;
6531
- declare function fetchAndCacheOpenIssues(cachePath: string): Effect.Effect<OpenIssue[] | null>;
6532
- declare function readOrFetchOpenIssues(cachePath: string): Effect.Effect<OpenIssue[] | null>;
6508
+ declare function fetchAndCacheOpenIssues(cachePath: string): Effect.Effect<OpenIssue[] | null, never, ChildProcessSpawner.ChildProcessSpawner>;
6509
+ declare function readOrFetchOpenIssues(cachePath: string): Effect.Effect<OpenIssue[] | null, never, ChildProcessSpawner.ChildProcessSpawner>;
6533
6510
  //#endregion
6534
6511
  //#region src/commitlint/hook/diagnostics/package-manager.d.ts
6535
6512
  type PackageManager$1 = "pnpm" | "yarn" | "bun" | "npm";
@@ -6562,7 +6539,7 @@ interface RawSigningInputs {
6562
6539
  }
6563
6540
  declare function parseGpgKeyExpiry(colonsOutput: string): string | null;
6564
6541
  declare function buildSigningDiagnostic(raw: RawSigningInputs): SigningDiagnostic;
6565
- declare function readSigningDiagnostic(): Effect.Effect<SigningDiagnostic>;
6542
+ declare function readSigningDiagnostic(): Effect.Effect<SigningDiagnostic, never, Git | ChildProcessSpawner.ChildProcessSpawner>;
6566
6543
  //#endregion
6567
6544
  //#region src/commitlint/hook/rules/types.d.ts
6568
6545
  type RuleSeverity$1 = "deny" | "advise";
@@ -6890,9 +6867,6 @@ declare class WorkspaceAnalysisError extends WorkspaceAnalysisError_base<{
6890
6867
  }
6891
6868
  //#endregion
6892
6869
  //#region src/lint/types.d.ts
6893
- /**
6894
- * Type definitions for \@savvy-web/lint-staged.
6895
- */
6896
6870
  /**
6897
6871
  * A lint-staged handler function.
6898
6872
  * Receives an array of staged filenames and returns command(s) to execute.
@@ -7904,7 +7878,7 @@ interface ToolSearchResult {
7904
7878
  /**
7905
7879
  * Static utility class for shell command operations.
7906
7880
  */
7907
- declare class Command$1 {
7881
+ declare class Command {
7908
7882
  /** Cached package manager detection result */
7909
7883
  private static cachedPackageManager;
7910
7884
  /** Cached project root path */
@@ -8051,19 +8025,6 @@ declare class Command$1 {
8051
8025
  }
8052
8026
  //#endregion
8053
8027
  //#region src/lint/utils/Filter.d.ts
8054
- /**
8055
- * Utilities for filtering staged file lists.
8056
- *
8057
- * @example
8058
- * ```typescript
8059
- * import { Filter } from '@savvy-web/silk/lint';
8060
- *
8061
- * const handler = (filenames: readonly string[]) => {
8062
- * const filtered = Filter.exclude(filenames, ['dist/', '__fixtures__']);
8063
- * return filtered.length > 0 ? `biome check ${Filter.shellEscape(filtered)}` : [];
8064
- * };
8065
- * ```
8066
- */
8067
8028
  /**
8068
8029
  * Static utility class for filtering file lists.
8069
8030
  */
@@ -8143,9 +8104,12 @@ declare class Filter {
8143
8104
  * Workspace-aware discovery utilities.
8144
8105
  *
8145
8106
  * @remarks
8146
- * Wraps the synchronous APIs from `workspaces-effect` with caching.
8147
- * Workspace layout does not change during a lint-staged run, so
8148
- * results are cached on first access. Use `resetWorkspaceCache()`
8107
+ * Wraps the synchronous APIs from `@effected/workspaces` with caching.
8108
+ * The kit's sync entry points never import `node:*` themselves — the
8109
+ * Node binding is the kit's own `@effected/workspaces/node-sync` preset
8110
+ * (`nodeSyncOps`), which replaced this module's hand-wired ops in kit
8111
+ * round 3. Workspace layout does not change during a lint-staged run,
8112
+ * so results are cached on first access. Use `resetWorkspaceCache()`
8149
8113
  * in tests to clear state between runs.
8150
8114
  */
8151
8115
  /**
@@ -8153,7 +8117,7 @@ declare class Filter {
8153
8117
  *
8154
8118
  * @remarks
8155
8119
  * Avoids importing the full WorkspacePackage Schema.Class from
8156
- * workspaces-effect, keeping the sync boundary clean.
8120
+ * `@effected/workspaces`, keeping the sync boundary clean.
8157
8121
  */
8158
8122
  interface WorkspacePackageInfo {
8159
8123
  readonly name: string;
@@ -8234,7 +8198,7 @@ declare const SectionDiff: {
8234
8198
  readonly _tag: Tag;
8235
8199
  }>;
8236
8200
  readonly $match: {
8237
- <const Cases extends {
8201
+ <Cases extends {
8238
8202
  readonly Changed: (args: {
8239
8203
  readonly _tag: "Changed";
8240
8204
  readonly added: ReadonlyArray<string>;
@@ -8243,14 +8207,14 @@ declare const SectionDiff: {
8243
8207
  readonly Unchanged: (args: {
8244
8208
  readonly _tag: "Unchanged";
8245
8209
  }) => any;
8246
- }>(cases: Cases & { [K in Exclude<keyof Cases, "Changed" | "Unchanged">]: never; }): (value: {
8210
+ }>(cases: Cases): (value: {
8247
8211
  readonly _tag: "Changed";
8248
8212
  readonly added: ReadonlyArray<string>;
8249
8213
  readonly removed: ReadonlyArray<string>;
8250
8214
  } | {
8251
8215
  readonly _tag: "Unchanged";
8252
8216
  }) => import("effect/Unify").Unify<ReturnType<Cases["Changed" | "Unchanged"]>>;
8253
- <const Cases extends {
8217
+ <Cases extends {
8254
8218
  readonly Changed: (args: {
8255
8219
  readonly _tag: "Changed";
8256
8220
  readonly added: ReadonlyArray<string>;
@@ -8265,14 +8229,14 @@ declare const SectionDiff: {
8265
8229
  readonly removed: ReadonlyArray<string>;
8266
8230
  } | {
8267
8231
  readonly _tag: "Unchanged";
8268
- }, cases: Cases & { [K in Exclude<keyof Cases, "Changed" | "Unchanged">]: never; }): import("effect/Unify").Unify<ReturnType<Cases["Changed" | "Unchanged"]>>;
8232
+ }, cases: Cases): import("effect/Unify").Unify<ReturnType<Cases["Changed" | "Unchanged"]>>;
8269
8233
  };
8270
- readonly Changed: Data.Case.Constructor<{
8234
+ readonly Changed: Data.TaggedEnum.ConstructorFrom<{
8271
8235
  readonly _tag: "Changed";
8272
8236
  readonly added: ReadonlyArray<string>;
8273
8237
  readonly removed: ReadonlyArray<string>;
8274
8238
  }, "_tag">;
8275
- readonly Unchanged: Data.Case.Constructor<{
8239
+ readonly Unchanged: Data.TaggedEnum.ConstructorFrom<{
8276
8240
  readonly _tag: "Unchanged";
8277
8241
  }, "_tag">;
8278
8242
  };
@@ -8314,7 +8278,7 @@ declare const SyncResult: {
8314
8278
  readonly _tag: Tag;
8315
8279
  }>;
8316
8280
  readonly $match: {
8317
- <const Cases extends {
8281
+ <Cases extends {
8318
8282
  readonly Created: (args: {
8319
8283
  readonly _tag: "Created";
8320
8284
  }) => any;
@@ -8325,7 +8289,7 @@ declare const SyncResult: {
8325
8289
  readonly _tag: "Updated";
8326
8290
  readonly diff: SectionDiff;
8327
8291
  }) => any;
8328
- }>(cases: Cases & { [K in Exclude<keyof Cases, "Created" | "Unchanged" | "Updated">]: never; }): (value: {
8292
+ }>(cases: Cases): (value: {
8329
8293
  readonly _tag: "Created";
8330
8294
  } | {
8331
8295
  readonly _tag: "Unchanged";
@@ -8333,7 +8297,7 @@ declare const SyncResult: {
8333
8297
  readonly _tag: "Updated";
8334
8298
  readonly diff: SectionDiff;
8335
8299
  }) => import("effect/Unify").Unify<ReturnType<Cases["Created" | "Unchanged" | "Updated"]>>;
8336
- <const Cases extends {
8300
+ <Cases extends {
8337
8301
  readonly Created: (args: {
8338
8302
  readonly _tag: "Created";
8339
8303
  }) => any;
@@ -8351,15 +8315,15 @@ declare const SyncResult: {
8351
8315
  } | {
8352
8316
  readonly _tag: "Updated";
8353
8317
  readonly diff: SectionDiff;
8354
- }, cases: Cases & { [K in Exclude<keyof Cases, "Created" | "Unchanged" | "Updated">]: never; }): import("effect/Unify").Unify<ReturnType<Cases["Created" | "Unchanged" | "Updated"]>>;
8318
+ }, cases: Cases): import("effect/Unify").Unify<ReturnType<Cases["Created" | "Unchanged" | "Updated"]>>;
8355
8319
  };
8356
- readonly Created: Data.Case.Constructor<{
8320
+ readonly Created: Data.TaggedEnum.ConstructorFrom<{
8357
8321
  readonly _tag: "Created";
8358
8322
  }, "_tag">;
8359
- readonly Unchanged: Data.Case.Constructor<{
8323
+ readonly Unchanged: Data.TaggedEnum.ConstructorFrom<{
8360
8324
  readonly _tag: "Unchanged";
8361
8325
  }, "_tag">;
8362
- readonly Updated: Data.Case.Constructor<{
8326
+ readonly Updated: Data.TaggedEnum.ConstructorFrom<{
8363
8327
  readonly _tag: "Updated";
8364
8328
  readonly diff: SectionDiff;
8365
8329
  }, "_tag">;
@@ -8399,7 +8363,7 @@ declare const CheckResult: {
8399
8363
  readonly _tag: Tag;
8400
8364
  }>;
8401
8365
  readonly $match: {
8402
- <const Cases extends {
8366
+ <Cases extends {
8403
8367
  readonly Found: (args: {
8404
8368
  readonly _tag: "Found";
8405
8369
  readonly isUpToDate: boolean;
@@ -8408,14 +8372,14 @@ declare const CheckResult: {
8408
8372
  readonly NotFound: (args: {
8409
8373
  readonly _tag: "NotFound";
8410
8374
  }) => any;
8411
- }>(cases: Cases & { [K in Exclude<keyof Cases, "Found" | "NotFound">]: never; }): (value: {
8375
+ }>(cases: Cases): (value: {
8412
8376
  readonly _tag: "Found";
8413
8377
  readonly isUpToDate: boolean;
8414
8378
  readonly diff: SectionDiff;
8415
8379
  } | {
8416
8380
  readonly _tag: "NotFound";
8417
8381
  }) => import("effect/Unify").Unify<ReturnType<Cases["Found" | "NotFound"]>>;
8418
- <const Cases extends {
8382
+ <Cases extends {
8419
8383
  readonly Found: (args: {
8420
8384
  readonly _tag: "Found";
8421
8385
  readonly isUpToDate: boolean;
@@ -8430,26 +8394,24 @@ declare const CheckResult: {
8430
8394
  readonly diff: SectionDiff;
8431
8395
  } | {
8432
8396
  readonly _tag: "NotFound";
8433
- }, cases: Cases & { [K in Exclude<keyof Cases, "Found" | "NotFound">]: never; }): import("effect/Unify").Unify<ReturnType<Cases["Found" | "NotFound"]>>;
8397
+ }, cases: Cases): import("effect/Unify").Unify<ReturnType<Cases["Found" | "NotFound"]>>;
8434
8398
  };
8435
- readonly Found: Data.Case.Constructor<{
8399
+ readonly Found: Data.TaggedEnum.ConstructorFrom<{
8436
8400
  readonly _tag: "Found";
8437
8401
  readonly isUpToDate: boolean;
8438
8402
  readonly diff: SectionDiff;
8439
8403
  }, "_tag">;
8440
- readonly NotFound: Data.Case.Constructor<{
8404
+ readonly NotFound: Data.TaggedEnum.ConstructorFrom<{
8441
8405
  readonly _tag: "NotFound";
8442
8406
  }, "_tag">;
8443
8407
  };
8444
8408
  //#endregion
8445
8409
  //#region src/schemas/SectionBlock.d.ts
8446
- declare const SectionBlock_base: Schema.TaggedClass<SectionBlock, "SectionBlock", {
8447
- readonly _tag: Schema.tag<"SectionBlock">;
8448
- } & {
8449
- toolName: typeof Schema.String;
8450
- commentStyle: Schema.Literal<["#", "//"]>;
8451
- content: typeof Schema.String;
8452
- }>;
8410
+ declare const SectionBlock_base: Schema.Class<SectionBlock, Schema.TaggedStruct<"SectionBlock", {
8411
+ readonly toolName: Schema.String;
8412
+ readonly commentStyle: Schema.Literals<readonly ["#", "//"]>;
8413
+ readonly content: Schema.String;
8414
+ }>, {}>;
8453
8415
  /**
8454
8416
  * The content between managed section markers.
8455
8417
  *
@@ -8493,7 +8455,7 @@ declare class SectionBlock extends SectionBlock_base {
8493
8455
  * @since 0.1.0
8494
8456
  * @public
8495
8457
  */
8496
- declare const CommentStyle: Schema.Literal<["#", "//"]>;
8458
+ declare const CommentStyle: Schema.Literals<readonly ["#", "//"]>;
8497
8459
  /**
8498
8460
  * @since 0.1.0
8499
8461
  * @public
@@ -8501,14 +8463,10 @@ declare const CommentStyle: Schema.Literal<["#", "//"]>;
8501
8463
  type CommentStyle = typeof CommentStyle.Type;
8502
8464
  //#endregion
8503
8465
  //#region src/schemas/SectionDefinition.d.ts
8504
- declare const SectionDefinition_base: Schema.TaggedClass<SectionDefinition, "SectionDefinition", {
8505
- readonly _tag: Schema.tag<"SectionDefinition">;
8506
- } & {
8507
- toolName: typeof Schema.String;
8508
- commentStyle: Schema.optionalWith<Schema.Literal<["#", "//"]>, {
8509
- default: () => "#";
8510
- }>;
8511
- }>;
8466
+ declare const SectionDefinition_base: Schema.Class<SectionDefinition, Schema.TaggedStruct<"SectionDefinition", {
8467
+ readonly toolName: Schema.String;
8468
+ readonly commentStyle: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.Literals<readonly ["#", "//"]>, never>>;
8469
+ }>, {}>;
8512
8470
  /**
8513
8471
  * Identity envelope for a managed section type.
8514
8472
  *
@@ -8546,11 +8504,9 @@ declare class SectionDefinition extends SectionDefinition_base {
8546
8504
  [Equal.symbol](that: Equal.Equal): boolean;
8547
8505
  [Hash.symbol](): number;
8548
8506
  }
8549
- declare const ShellSectionDefinition_base: Schema.TaggedClass<ShellSectionDefinition, "ShellSectionDefinition", {
8550
- readonly _tag: Schema.tag<"ShellSectionDefinition">;
8551
- } & {
8552
- toolName: typeof Schema.String;
8553
- }>;
8507
+ declare const ShellSectionDefinition_base: Schema.Class<ShellSectionDefinition, Schema.TaggedStruct<"ShellSectionDefinition", {
8508
+ readonly toolName: Schema.String;
8509
+ }>, {}>;
8554
8510
  /**
8555
8511
  * Convenience section definition for shell hooks.
8556
8512
  *
@@ -8614,15 +8570,6 @@ declare function savvyLintBlock(configPath: string): SectionBlock;
8614
8570
  declare function generateManagedContent(configPath: string): string;
8615
8571
  //#endregion
8616
8572
  //#region src/lint/cli/templates/markdownlint.gen.d.ts
8617
- /**
8618
- * Markdownlint template data.
8619
- *
8620
- * Originally generated in the now-deprecated `@savvy-web/lint-staged` package;
8621
- * the generator does not live in this repo, so this file is maintained by hand.
8622
- * Edit the `MARKDOWNLINT_TEMPLATE` / `MARKDOWNLINT_CONFIG` objects directly.
8623
- *
8624
- * @internal
8625
- */
8626
8573
  /** Full markdownlint-cli2 config template. */
8627
8574
  declare const MARKDOWNLINT_TEMPLATE: {
8628
8575
  readonly $schema: "https://raw.githubusercontent.com/DavidAnson/markdownlint-cli2/v0.22.0/schema/markdownlint-cli2-config-schema.json";
@@ -8789,7 +8736,7 @@ declare const MARKDOWNLINT_CONFIG: {
8789
8736
  readonly "changeset-dependency-table-format": false;
8790
8737
  };
8791
8738
  declare namespace index_d_exports$2 {
8792
- export { BaseHandlerOptions, Biome, BiomeOptions, Command$1 as Command, CreateConfigOptions, DEFAULT_CONFIG_PATH, Filter, HUSKY_HOOK_PATH, Handler, LegacySavvyLintHygieneDef, LintStagedConfig, LintStagedEntry, LintStagedHandler, MARKDOWNLINT_CONFIG, MARKDOWNLINT_CONFIG_PATH, MARKDOWNLINT_SCHEMA, MARKDOWNLINT_TEMPLATE, Markdown, MarkdownOptions, POST_CHECKOUT_HOOK_PATH, POST_COMMIT_HOOK_PATH, POST_MERGE_HOOK_PATH, PackageJson, PackageJsonOptions, PackageManager, PnpmWorkspace, PnpmWorkspaceContent, PnpmWorkspaceOptions, Preset, PresetExtendOptions, PresetType, SavvyLintSectionDef, ShellScripts, ShellScriptsOptions, ToolSearchResult, TypeScript, TypeScriptCompiler, TypeScriptOptions, WorkspacePackageInfo, Yaml, YamlOptions, createConfig, generateManagedContent, getWorkspacePackagePaths, getWorkspacePackages, getWorkspaceRoot, isWorkspacePackagePath, resetWorkspaceCache, savvyLintBlock };
8739
+ export { BaseHandlerOptions, Biome, BiomeOptions, Command, CreateConfigOptions, DEFAULT_CONFIG_PATH, Filter, HUSKY_HOOK_PATH, Handler, LegacySavvyLintHygieneDef, LintStagedConfig, LintStagedEntry, LintStagedHandler, MARKDOWNLINT_CONFIG, MARKDOWNLINT_CONFIG_PATH, MARKDOWNLINT_SCHEMA, MARKDOWNLINT_TEMPLATE, Markdown, MarkdownOptions, POST_CHECKOUT_HOOK_PATH, POST_COMMIT_HOOK_PATH, POST_MERGE_HOOK_PATH, PackageJson, PackageJsonOptions, PackageManager, PnpmWorkspace, PnpmWorkspaceContent, PnpmWorkspaceOptions, Preset, PresetExtendOptions, PresetType, SavvyLintSectionDef, ShellScripts, ShellScriptsOptions, ToolSearchResult, TypeScript, TypeScriptCompiler, TypeScriptOptions, WorkspacePackageInfo, Yaml, YamlOptions, createConfig, generateManagedContent, getWorkspacePackagePaths, getWorkspacePackages, getWorkspaceRoot, isWorkspacePackagePath, resetWorkspaceCache, savvyLintBlock };
8793
8740
  }
8794
8741
  //#endregion
8795
8742
  //#region src/repos/constants.d.ts
@@ -8876,7 +8823,7 @@ declare class NoteNotFoundError extends NoteNotFoundErrorBase<{
8876
8823
  * (`.repos/<name>`) without escaping the `.repos/` directory.
8877
8824
  * @public
8878
8825
  */
8879
- declare const RepoName: Schema.refine<string, typeof Schema.String>;
8826
+ declare const RepoName: Schema.String;
8880
8827
  /** @public */
8881
8828
  type RepoName = typeof RepoName.Type;
8882
8829
  /**
@@ -8884,10 +8831,10 @@ type RepoName = typeof RepoName.Type;
8884
8831
  * @public
8885
8832
  */
8886
8833
  declare const RepoNote: Schema.Struct<{
8887
- id: typeof Schema.String;
8888
- date: typeof Schema.String;
8889
- ref: typeof Schema.String;
8890
- note: Schema.filter<typeof Schema.String>;
8834
+ readonly id: Schema.String;
8835
+ readonly date: Schema.String;
8836
+ readonly ref: Schema.String;
8837
+ readonly note: Schema.String;
8891
8838
  }>;
8892
8839
  /** @public */
8893
8840
  type RepoNote = typeof RepoNote.Type;
@@ -8896,9 +8843,9 @@ type RepoNote = typeof RepoNote.Type;
8896
8843
  * @public
8897
8844
  */
8898
8845
  declare const RepoOrientation: Schema.Struct<{
8899
- layout: Schema.optional<typeof Schema.String>;
8900
- keyPaths: Schema.optional<Schema.Record$<typeof Schema.String, typeof Schema.String>>;
8901
- startHere: Schema.optional<typeof Schema.String>;
8846
+ readonly layout: Schema.optional<Schema.String>;
8847
+ readonly keyPaths: Schema.optional<Schema.$Record<Schema.String, Schema.String>>;
8848
+ readonly startHere: Schema.optional<Schema.String>;
8902
8849
  }>;
8903
8850
  /** @public */
8904
8851
  type RepoOrientation = typeof RepoOrientation.Type;
@@ -8907,20 +8854,20 @@ type RepoOrientation = typeof RepoOrientation.Type;
8907
8854
  * @public
8908
8855
  */
8909
8856
  declare const RepoEntry: Schema.Struct<{
8910
- url: Schema.filter<typeof Schema.String>;
8911
- ref: Schema.filter<typeof Schema.String>;
8912
- purpose: Schema.filter<typeof Schema.String>;
8913
- sparse: Schema.optional<Schema.Array$<typeof Schema.String>>;
8914
- orientation: Schema.optional<Schema.Struct<{
8915
- layout: Schema.optional<typeof Schema.String>;
8916
- keyPaths: Schema.optional<Schema.Record$<typeof Schema.String, typeof Schema.String>>;
8917
- startHere: Schema.optional<typeof Schema.String>;
8857
+ readonly url: Schema.String;
8858
+ readonly ref: Schema.String;
8859
+ readonly purpose: Schema.String;
8860
+ readonly sparse: Schema.optional<Schema.$Array<Schema.String>>;
8861
+ readonly orientation: Schema.optional<Schema.Struct<{
8862
+ readonly layout: Schema.optional<Schema.String>;
8863
+ readonly keyPaths: Schema.optional<Schema.$Record<Schema.String, Schema.String>>;
8864
+ readonly startHere: Schema.optional<Schema.String>;
8918
8865
  }>>;
8919
- notes: Schema.optional<Schema.Array$<Schema.Struct<{
8920
- id: typeof Schema.String;
8921
- date: typeof Schema.String;
8922
- ref: typeof Schema.String;
8923
- note: Schema.filter<typeof Schema.String>;
8866
+ readonly notes: Schema.optional<Schema.$Array<Schema.Struct<{
8867
+ readonly id: Schema.String;
8868
+ readonly date: Schema.String;
8869
+ readonly ref: Schema.String;
8870
+ readonly note: Schema.String;
8924
8871
  }>>>;
8925
8872
  }>;
8926
8873
  /** @public */
@@ -8930,23 +8877,23 @@ type RepoEntry = typeof RepoEntry.Type;
8930
8877
  * @public
8931
8878
  */
8932
8879
  declare const ReposManifestFile: Schema.Struct<{
8933
- repos: Schema.filter<Schema.Record$<typeof Schema.String, Schema.Struct<{
8934
- url: Schema.filter<typeof Schema.String>;
8935
- ref: Schema.filter<typeof Schema.String>;
8936
- purpose: Schema.filter<typeof Schema.String>;
8937
- sparse: Schema.optional<Schema.Array$<typeof Schema.String>>;
8938
- orientation: Schema.optional<Schema.Struct<{
8939
- layout: Schema.optional<typeof Schema.String>;
8940
- keyPaths: Schema.optional<Schema.Record$<typeof Schema.String, typeof Schema.String>>;
8941
- startHere: Schema.optional<typeof Schema.String>;
8880
+ readonly repos: Schema.$Record<Schema.String, Schema.Struct<{
8881
+ readonly url: Schema.String;
8882
+ readonly ref: Schema.String;
8883
+ readonly purpose: Schema.String;
8884
+ readonly sparse: Schema.optional<Schema.$Array<Schema.String>>;
8885
+ readonly orientation: Schema.optional<Schema.Struct<{
8886
+ readonly layout: Schema.optional<Schema.String>;
8887
+ readonly keyPaths: Schema.optional<Schema.$Record<Schema.String, Schema.String>>;
8888
+ readonly startHere: Schema.optional<Schema.String>;
8942
8889
  }>>;
8943
- notes: Schema.optional<Schema.Array$<Schema.Struct<{
8944
- id: typeof Schema.String;
8945
- date: typeof Schema.String;
8946
- ref: typeof Schema.String;
8947
- note: Schema.filter<typeof Schema.String>;
8890
+ readonly notes: Schema.optional<Schema.$Array<Schema.Struct<{
8891
+ readonly id: Schema.String;
8892
+ readonly date: Schema.String;
8893
+ readonly ref: Schema.String;
8894
+ readonly note: Schema.String;
8948
8895
  }>>>;
8949
- }>>>;
8896
+ }>>;
8950
8897
  }>;
8951
8898
  /** @public */
8952
8899
  type ReposManifestFile = typeof ReposManifestFile.Type;
@@ -8958,13 +8905,13 @@ type ReposManifestFile = typeof ReposManifestFile.Type;
8958
8905
  * @public
8959
8906
  */
8960
8907
  declare const RepoStatusEntry: Schema.Struct<{
8961
- name: typeof Schema.String;
8962
- ref: typeof Schema.String;
8963
- purpose: typeof Schema.String;
8964
- present: typeof Schema.Boolean;
8965
- commit: Schema.NullOr<typeof Schema.String>;
8966
- dirty: typeof Schema.Boolean;
8967
- staleNoteIds: Schema.Array$<typeof Schema.String>;
8908
+ readonly name: Schema.String;
8909
+ readonly ref: Schema.String;
8910
+ readonly purpose: Schema.String;
8911
+ readonly present: Schema.Boolean;
8912
+ readonly commit: Schema.NullOr<Schema.String>;
8913
+ readonly dirty: Schema.Boolean;
8914
+ readonly staleNoteIds: Schema.$Array<Schema.String>;
8968
8915
  }>;
8969
8916
  /** @public */
8970
8917
  type RepoStatusEntry = typeof RepoStatusEntry.Type;
@@ -8973,16 +8920,16 @@ type RepoStatusEntry = typeof RepoStatusEntry.Type;
8973
8920
  * @public
8974
8921
  */
8975
8922
  declare const ReposStatusReport: Schema.Struct<{
8976
- repos: Schema.Array$<Schema.Struct<{
8977
- name: typeof Schema.String;
8978
- ref: typeof Schema.String;
8979
- purpose: typeof Schema.String;
8980
- present: typeof Schema.Boolean;
8981
- commit: Schema.NullOr<typeof Schema.String>;
8982
- dirty: typeof Schema.Boolean;
8983
- staleNoteIds: Schema.Array$<typeof Schema.String>;
8923
+ readonly repos: Schema.$Array<Schema.Struct<{
8924
+ readonly name: Schema.String;
8925
+ readonly ref: Schema.String;
8926
+ readonly purpose: Schema.String;
8927
+ readonly present: Schema.Boolean;
8928
+ readonly commit: Schema.NullOr<Schema.String>;
8929
+ readonly dirty: Schema.Boolean;
8930
+ readonly staleNoteIds: Schema.$Array<Schema.String>;
8984
8931
  }>>;
8985
- clean: typeof Schema.Boolean;
8932
+ readonly clean: Schema.Boolean;
8986
8933
  }>;
8987
8934
  /** @public */
8988
8935
  type ReposStatusReport = typeof ReposStatusReport.Type;
@@ -8993,10 +8940,10 @@ type ReposStatusReport = typeof ReposStatusReport.Type;
8993
8940
  * @public
8994
8941
  */
8995
8942
  declare const ReposSyncReport: Schema.Struct<{
8996
- initialized: Schema.Array$<typeof Schema.String>;
8997
- sparseApplied: Schema.Array$<typeof Schema.String>;
8998
- upToDate: Schema.Array$<typeof Schema.String>;
8999
- clearedLocks: Schema.Array$<typeof Schema.String>;
8943
+ readonly initialized: Schema.$Array<Schema.String>;
8944
+ readonly sparseApplied: Schema.$Array<Schema.String>;
8945
+ readonly upToDate: Schema.$Array<Schema.String>;
8946
+ readonly clearedLocks: Schema.$Array<Schema.String>;
9000
8947
  }>;
9001
8948
  /** @public */
9002
8949
  type ReposSyncReport = typeof ReposSyncReport.Type;
@@ -9005,12 +8952,12 @@ type ReposSyncReport = typeof ReposSyncReport.Type;
9005
8952
  * @public
9006
8953
  */
9007
8954
  declare const ReposPinResult: Schema.Struct<{
9008
- name: typeof Schema.String;
9009
- ref: typeof Schema.String;
9010
- oldCommit: Schema.NullOr<typeof Schema.String>;
9011
- newCommit: typeof Schema.String;
9012
- commitMessage: typeof Schema.String;
9013
- staleNoteIds: Schema.Array$<typeof Schema.String>;
8955
+ readonly name: Schema.String;
8956
+ readonly ref: Schema.String;
8957
+ readonly oldCommit: Schema.NullOr<Schema.String>;
8958
+ readonly newCommit: Schema.String;
8959
+ readonly commitMessage: Schema.String;
8960
+ readonly staleNoteIds: Schema.$Array<Schema.String>;
9014
8961
  }>;
9015
8962
  /** @public */
9016
8963
  type ReposPinResult = typeof ReposPinResult.Type;
@@ -9019,9 +8966,9 @@ type ReposPinResult = typeof ReposPinResult.Type;
9019
8966
  * @public
9020
8967
  */
9021
8968
  declare const ReposAddResult: Schema.Struct<{
9022
- name: typeof Schema.String;
9023
- ref: typeof Schema.String;
9024
- path: typeof Schema.String;
8969
+ readonly name: Schema.String;
8970
+ readonly ref: Schema.String;
8971
+ readonly path: Schema.String;
9025
8972
  }>;
9026
8973
  /** @public */
9027
8974
  type ReposAddResult = typeof ReposAddResult.Type;
@@ -9030,30 +8977,32 @@ type ReposAddResult = typeof ReposAddResult.Type;
9030
8977
  * @public
9031
8978
  */
9032
8979
  declare const ReposNoteResult: Schema.Struct<{
9033
- name: typeof Schema.String;
9034
- op: Schema.Literal<["add", "remove", "promote"]>;
9035
- id: typeof Schema.String;
9036
- noteCount: typeof Schema.Number;
8980
+ readonly name: Schema.String;
8981
+ readonly op: Schema.Literals<readonly ["add", "remove", "promote"]>;
8982
+ readonly id: Schema.String;
8983
+ readonly noteCount: Schema.Number;
9037
8984
  }>;
9038
8985
  /** @public */
9039
8986
  type ReposNoteResult = typeof ReposNoteResult.Type;
9040
8987
  //#endregion
9041
8988
  //#region src/repos/services/config-store.d.ts
9042
- /** @internal */
8989
+ /**
8990
+ * The {@link ReposConfigStore} service shape.
8991
+ * @public
8992
+ */
9043
8993
  interface ReposConfigStoreShape {
9044
8994
  readonly exists: (root: string) => Effect.Effect<boolean>;
9045
8995
  readonly read: (root: string) => Effect.Effect<ReposManifestFile, ReposConfigError>;
9046
8996
  readonly write: (root: string, manifest: ReposManifestFile) => Effect.Effect<void, ReposConfigError>;
9047
8997
  }
9048
- /** @internal */
9049
- declare const ReposConfigStoreBase: Context.TagClass<ReposConfigStore, "@savvy-web/silk-effects/ReposConfigStore", ReposConfigStoreShape>;
8998
+ declare const ReposConfigStore_base: Context.ServiceClass<ReposConfigStore, "@savvy-web/silk-effects/ReposConfigStore", ReposConfigStoreShape>;
9050
8999
  /**
9051
9000
  * Reads, validates, and writes the .repos/config.json manifest.
9052
9001
  * @public
9053
9002
  */
9054
- declare class ReposConfigStore extends ReposConfigStoreBase {}
9003
+ declare class ReposConfigStore extends ReposConfigStore_base {}
9055
9004
  /**
9056
- * Live layer over the platform FileSystem.
9005
+ * Live layer over the core FileSystem.
9057
9006
  * @public
9058
9007
  */
9059
9008
  declare const ReposConfigStoreLive: Layer.Layer<ReposConfigStore, never, FileSystem.FileSystem | Path.Path>;
@@ -9103,8 +9052,7 @@ interface ReposManagerShape {
9103
9052
  readonly into: "layout" | "startHere";
9104
9053
  }) => Effect.Effect<ReposNoteResult, ReposConfigError | RepoNotFoundError | NoteNotFoundError>;
9105
9054
  }
9106
- /** @internal */
9107
- declare const ReposManagerBase: Context.TagClass<ReposManager, "@savvy-web/silk-effects/ReposManager", ReposManagerShape>;
9055
+ declare const ReposManager_base: Context.ServiceClass<ReposManager, "@savvy-web/silk-effects/ReposManager", ReposManagerShape>;
9108
9056
  /**
9109
9057
  * Drives the vendored `.repos/` submodules over git: reports status
9110
9058
  * (presence, dirtiness, stale notes), reconciles the working tree with the
@@ -9112,19 +9060,21 @@ declare const ReposManagerBase: Context.TagClass<ReposManager, "@savvy-web/silk-
9112
9060
  * ref (`pin`), and adds, removes, or promotes agent notes (`note`).
9113
9061
  * @public
9114
9062
  */
9115
- declare class ReposManager extends ReposManagerBase {}
9063
+ declare class ReposManager extends ReposManager_base {}
9116
9064
  /**
9117
9065
  * Live implementation of {@link ReposManager}.
9118
9066
  *
9119
9067
  * @remarks
9120
- * Mirrors `TurboInspector`: the `CommandExecutor` is captured once at layer
9121
- * construction and discharged onto each git invocation via
9122
- * `Effect.provideService`, so the public method effects stay at `R = never`.
9068
+ * All git plumbing runs through `@effected/git`'s `Git` service (captured once
9069
+ * at layer construction; `Git.layer` requires `ChildProcessSpawner` at the app
9070
+ * edge), so the public method effects stay at `R = never`. The kit classifies
9071
+ * git's exit-code/stderr taxonomy into typed failures, which are mapped onto
9072
+ * this module's {@link GitSubmoduleError} to keep the declared error unions.
9123
9073
  * @public
9124
9074
  */
9125
- declare const ReposManagerLive: Layer.Layer<ReposManager, never, ReposConfigStore | CommandExecutor.CommandExecutor | FileSystem.FileSystem | Path.Path>;
9075
+ declare const ReposManagerLive: Layer.Layer<ReposManager, never, ReposConfigStore | Git | FileSystem.FileSystem | Path.Path>;
9126
9076
  declare namespace index_d_exports$3 {
9127
- export { GitSubmoduleError, GitSubmoduleErrorBase, MANIFEST_PATH, NOTE_LIMIT, NoteNotFoundError, NoteNotFoundErrorBase, REPOS_DIR, RepoEntry, RepoName, RepoNotFoundError, RepoNotFoundErrorBase, RepoNote, RepoOrientation, RepoStatusEntry, ReposAddResult, ReposConfigError, ReposConfigErrorBase, ReposConfigStore, ReposConfigStoreBase, ReposConfigStoreLive, ReposConfigStoreShape, ReposManager, ReposManagerBase, ReposManagerLive, ReposManagerShape, ReposManifestFile, ReposNoteResult, ReposPinResult, ReposStatusReport, ReposSyncReport, STALE_LOCK_MAX_AGE_MS };
9077
+ export { GitSubmoduleError, GitSubmoduleErrorBase, MANIFEST_PATH, NOTE_LIMIT, NoteNotFoundError, NoteNotFoundErrorBase, REPOS_DIR, RepoEntry, RepoName, RepoNotFoundError, RepoNotFoundErrorBase, RepoNote, RepoOrientation, RepoStatusEntry, ReposAddResult, ReposConfigError, ReposConfigErrorBase, ReposConfigStore, ReposConfigStoreLive, ReposConfigStoreShape, ReposManager, ReposManagerLive, ReposManagerShape, ReposManifestFile, ReposNoteResult, ReposPinResult, ReposStatusReport, ReposSyncReport, STALE_LOCK_MAX_AGE_MS };
9128
9078
  }
9129
9079
  //#endregion
9130
9080
  //#region src/schemas/BiomeConfig.d.ts
@@ -9140,9 +9090,9 @@ declare namespace index_d_exports$3 {
9140
9090
  * @public
9141
9091
  */
9142
9092
  declare const BiomeSyncResult: Schema.Struct<{
9143
- updated: Schema.Array$<typeof Schema.String>;
9144
- skipped: Schema.Array$<typeof Schema.String>;
9145
- current: Schema.Array$<typeof Schema.String>;
9093
+ readonly updated: Schema.$Array<Schema.String>;
9094
+ readonly skipped: Schema.$Array<Schema.String>;
9095
+ readonly current: Schema.$Array<Schema.String>;
9146
9096
  }>;
9147
9097
  /**
9148
9098
  * @since 0.1.0
@@ -9160,10 +9110,8 @@ type BiomeSyncResult = typeof BiomeSyncResult.Type;
9160
9110
  * @public
9161
9111
  */
9162
9112
  declare const BiomeSyncOptions: Schema.Struct<{
9163
- cwd: Schema.optional<typeof Schema.String>;
9164
- gitignore: Schema.optionalWith<typeof Schema.Boolean, {
9165
- default: () => true;
9166
- }>;
9113
+ readonly cwd: Schema.optional<Schema.String>;
9114
+ readonly gitignore: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.Boolean, never>>;
9167
9115
  }>;
9168
9116
  /**
9169
9117
  * @since 0.1.0
@@ -9183,7 +9131,7 @@ type BiomeSyncOptions = typeof BiomeSyncOptions.Type;
9183
9131
  * @since 0.1.0
9184
9132
  * @public
9185
9133
  */
9186
- declare const ConfigSource: Schema.Literal<["lib", "root", "cosmiconfig"]>;
9134
+ declare const ConfigSource: Schema.Literals<readonly ["lib", "root", "cosmiconfig"]>;
9187
9135
  /**
9188
9136
  * @since 0.1.0
9189
9137
  * @public
@@ -9200,8 +9148,8 @@ type ConfigSource = typeof ConfigSource.Type;
9200
9148
  * @public
9201
9149
  */
9202
9150
  declare const ConfigLocation: Schema.Struct<{
9203
- path: typeof Schema.String;
9204
- source: Schema.Literal<["lib", "root", "cosmiconfig"]>;
9151
+ readonly path: Schema.String;
9152
+ readonly source: Schema.Literals<readonly ["lib", "root", "cosmiconfig"]>;
9205
9153
  }>;
9206
9154
  /**
9207
9155
  * @since 0.1.0
@@ -9219,8 +9167,8 @@ type ConfigLocation = typeof ConfigLocation.Type;
9219
9167
  * @public
9220
9168
  */
9221
9169
  declare const ConfigDiscoveryOptions: Schema.Struct<{
9222
- cwd: Schema.optional<typeof Schema.String>;
9223
- tool: Schema.optional<typeof Schema.String>;
9170
+ readonly cwd: Schema.optional<Schema.String>;
9171
+ readonly tool: Schema.optional<Schema.String>;
9224
9172
  }>;
9225
9173
  /**
9226
9174
  * @since 0.1.0
@@ -9230,37 +9178,35 @@ type ConfigDiscoveryOptions = typeof ConfigDiscoveryOptions.Type;
9230
9178
  //#endregion
9231
9179
  //#region src/utils/ToolCommand.d.ts
9232
9180
  /**
9233
- * Wraps `@effect/platform` `Command.Command` with instance method ergonomics.
9181
+ * Wraps `effect/unstable/process` `ChildProcess.Command` with instance method ergonomics.
9234
9182
  *
9235
- * Use `yield* cmd.string()` instead of `yield* Command.string(cmd)`.
9183
+ * Use `yield* cmd.string()` instead of resolving the `ChildProcessSpawner` service by hand.
9236
9184
  *
9237
9185
  * @since 0.2.0
9238
9186
  * @public
9239
9187
  */
9240
9188
  declare class ToolCommand {
9241
- readonly command: Command.Command;
9242
- constructor(command: Command.Command);
9243
- string(encoding?: string): Effect.Effect<string, PlatformError, CommandExecutor.CommandExecutor>;
9244
- exitCode(): Effect.Effect<number, PlatformError, CommandExecutor.CommandExecutor>;
9245
- lines(encoding?: string): Effect.Effect<Array<string>, PlatformError, CommandExecutor.CommandExecutor>;
9246
- stream(): Stream.Stream<Uint8Array, PlatformError, CommandExecutor.CommandExecutor>;
9189
+ readonly command: ChildProcess.Command;
9190
+ constructor(command: ChildProcess.Command);
9191
+ string(): Effect.Effect<string, PlatformError.PlatformError, ChildProcessSpawner.ChildProcessSpawner>;
9192
+ exitCode(): Effect.Effect<number, PlatformError.PlatformError, ChildProcessSpawner.ChildProcessSpawner>;
9193
+ lines(): Effect.Effect<Array<string>, PlatformError.PlatformError, ChildProcessSpawner.ChildProcessSpawner>;
9194
+ stream(): Stream.Stream<string, PlatformError.PlatformError, ChildProcessSpawner.ChildProcessSpawner>;
9247
9195
  env(environment: Record<string, string | undefined>): ToolCommand;
9248
9196
  workingDirectory(cwd: string): ToolCommand;
9249
9197
  stdin(input: string): ToolCommand;
9250
9198
  }
9251
9199
  //#endregion
9252
9200
  //#region src/schemas/ResolvedTool.d.ts
9253
- declare const ResolvedTool_base: Schema.TaggedClass<ResolvedTool, "ResolvedTool", {
9254
- readonly _tag: Schema.tag<"ResolvedTool">;
9255
- } & {
9256
- name: typeof Schema.String;
9257
- source: Schema.Literal<["global", "local"]>;
9258
- version: Schema.OptionFromSelf<typeof Schema.String>;
9259
- globalVersion: Schema.OptionFromSelf<typeof Schema.String>;
9260
- localVersion: Schema.OptionFromSelf<typeof Schema.String>;
9261
- packageManager: Schema.Literal<["npm", "pnpm", "yarn", "bun"]>;
9262
- mismatch: typeof Schema.Boolean;
9263
- }>;
9201
+ declare const ResolvedTool_base: Schema.Class<ResolvedTool, Schema.TaggedStruct<"ResolvedTool", {
9202
+ readonly name: Schema.String;
9203
+ readonly source: Schema.Literals<readonly ["global", "local"]>;
9204
+ readonly version: Schema.Option<Schema.String>;
9205
+ readonly globalVersion: Schema.Option<Schema.String>;
9206
+ readonly localVersion: Schema.Option<Schema.String>;
9207
+ readonly packageManager: Schema.Literals<readonly ["npm", "pnpm", "yarn", "bun"]>;
9208
+ readonly mismatch: Schema.Boolean;
9209
+ }>, {}>;
9264
9210
  /**
9265
9211
  * Result of resolving a {@link ToolDefinition}.
9266
9212
  *
@@ -9374,7 +9320,7 @@ declare function savvyToolSection(toolName: string, command: string): SectionBlo
9374
9320
  * @since 0.1.0
9375
9321
  * @public
9376
9322
  */
9377
- declare const TagStrategyType: Schema.Literal<["single", "scoped"]>;
9323
+ declare const TagStrategyType: Schema.Literals<readonly ["single", "scoped"]>;
9378
9324
  /**
9379
9325
  * @since 0.1.0
9380
9326
  * @public
@@ -9388,7 +9334,7 @@ type TagStrategyType = typeof TagStrategyType.Type;
9388
9334
  * @since 0.2.0
9389
9335
  * @public
9390
9336
  */
9391
- declare const ToolSource: Schema.Literal<["global", "local"]>;
9337
+ declare const ToolSource: Schema.Literals<readonly ["global", "local"]>;
9392
9338
  /**
9393
9339
  * @since 0.2.0
9394
9340
  * @public
@@ -9439,7 +9385,7 @@ declare const VersionExtractor: {
9439
9385
  readonly _tag: Tag;
9440
9386
  }>;
9441
9387
  readonly $match: {
9442
- <const Cases extends {
9388
+ <Cases extends {
9443
9389
  readonly Flag: (args: {
9444
9390
  readonly _tag: "Flag";
9445
9391
  readonly flag: string;
@@ -9453,7 +9399,7 @@ declare const VersionExtractor: {
9453
9399
  readonly None: (args: {
9454
9400
  readonly _tag: "None";
9455
9401
  }) => any;
9456
- }>(cases: Cases & { [K in Exclude<keyof Cases, "Flag" | "Json" | "None">]: never; }): (value: {
9402
+ }>(cases: Cases): (value: {
9457
9403
  readonly _tag: "Flag";
9458
9404
  readonly flag: string;
9459
9405
  readonly parse?: ((output: string) => string) | undefined | undefined;
@@ -9464,7 +9410,7 @@ declare const VersionExtractor: {
9464
9410
  } | {
9465
9411
  readonly _tag: "None";
9466
9412
  }) => import("effect/Unify").Unify<ReturnType<Cases["Flag" | "Json" | "None"]>>;
9467
- <const Cases extends {
9413
+ <Cases extends {
9468
9414
  readonly Flag: (args: {
9469
9415
  readonly _tag: "Flag";
9470
9416
  readonly flag: string;
@@ -9488,19 +9434,19 @@ declare const VersionExtractor: {
9488
9434
  readonly path: string;
9489
9435
  } | {
9490
9436
  readonly _tag: "None";
9491
- }, cases: Cases & { [K in Exclude<keyof Cases, "Flag" | "Json" | "None">]: never; }): import("effect/Unify").Unify<ReturnType<Cases["Flag" | "Json" | "None"]>>;
9437
+ }, cases: Cases): import("effect/Unify").Unify<ReturnType<Cases["Flag" | "Json" | "None"]>>;
9492
9438
  };
9493
- readonly Flag: Data.Case.Constructor<{
9439
+ readonly Flag: Data.TaggedEnum.ConstructorFrom<{
9494
9440
  readonly _tag: "Flag";
9495
9441
  readonly flag: string;
9496
9442
  readonly parse?: ((output: string) => string) | undefined | undefined;
9497
9443
  }, "_tag">;
9498
- readonly Json: Data.Case.Constructor<{
9444
+ readonly Json: Data.TaggedEnum.ConstructorFrom<{
9499
9445
  readonly _tag: "Json";
9500
9446
  readonly flag: string;
9501
9447
  readonly path: string;
9502
9448
  }, "_tag">;
9503
- readonly None: Data.Case.Constructor<{
9449
+ readonly None: Data.TaggedEnum.ConstructorFrom<{
9504
9450
  readonly _tag: "None";
9505
9451
  }, "_tag">;
9506
9452
  };
@@ -9544,7 +9490,7 @@ declare const ResolutionPolicy: {
9544
9490
  readonly _tag: Tag;
9545
9491
  }>;
9546
9492
  readonly $match: {
9547
- <const Cases extends {
9493
+ <Cases extends {
9548
9494
  readonly PreferGlobal: (args: {
9549
9495
  readonly _tag: "PreferGlobal";
9550
9496
  }) => any;
@@ -9557,7 +9503,7 @@ declare const ResolutionPolicy: {
9557
9503
  readonly RequireMatch: (args: {
9558
9504
  readonly _tag: "RequireMatch";
9559
9505
  }) => any;
9560
- }>(cases: Cases & { [K in Exclude<keyof Cases, "PreferGlobal" | "PreferLocal" | "Report" | "RequireMatch">]: never; }): (value: {
9506
+ }>(cases: Cases): (value: {
9561
9507
  readonly _tag: "PreferGlobal";
9562
9508
  } | {
9563
9509
  readonly _tag: "PreferLocal";
@@ -9566,7 +9512,7 @@ declare const ResolutionPolicy: {
9566
9512
  } | {
9567
9513
  readonly _tag: "RequireMatch";
9568
9514
  }) => import("effect/Unify").Unify<ReturnType<Cases["PreferGlobal" | "PreferLocal" | "Report" | "RequireMatch"]>>;
9569
- <const Cases extends {
9515
+ <Cases extends {
9570
9516
  readonly PreferGlobal: (args: {
9571
9517
  readonly _tag: "PreferGlobal";
9572
9518
  }) => any;
@@ -9587,18 +9533,18 @@ declare const ResolutionPolicy: {
9587
9533
  readonly _tag: "Report";
9588
9534
  } | {
9589
9535
  readonly _tag: "RequireMatch";
9590
- }, cases: Cases & { [K in Exclude<keyof Cases, "PreferGlobal" | "PreferLocal" | "Report" | "RequireMatch">]: never; }): import("effect/Unify").Unify<ReturnType<Cases["PreferGlobal" | "PreferLocal" | "Report" | "RequireMatch"]>>;
9536
+ }, cases: Cases): import("effect/Unify").Unify<ReturnType<Cases["PreferGlobal" | "PreferLocal" | "Report" | "RequireMatch"]>>;
9591
9537
  };
9592
- readonly PreferGlobal: Data.Case.Constructor<{
9538
+ readonly PreferGlobal: Data.TaggedEnum.ConstructorFrom<{
9593
9539
  readonly _tag: "PreferGlobal";
9594
9540
  }, "_tag">;
9595
- readonly PreferLocal: Data.Case.Constructor<{
9541
+ readonly PreferLocal: Data.TaggedEnum.ConstructorFrom<{
9596
9542
  readonly _tag: "PreferLocal";
9597
9543
  }, "_tag">;
9598
- readonly Report: Data.Case.Constructor<{
9544
+ readonly Report: Data.TaggedEnum.ConstructorFrom<{
9599
9545
  readonly _tag: "Report";
9600
9546
  }, "_tag">;
9601
- readonly RequireMatch: Data.Case.Constructor<{
9547
+ readonly RequireMatch: Data.TaggedEnum.ConstructorFrom<{
9602
9548
  readonly _tag: "RequireMatch";
9603
9549
  }, "_tag">;
9604
9550
  };
@@ -9642,7 +9588,7 @@ declare const SourceRequirement: {
9642
9588
  readonly _tag: Tag;
9643
9589
  }>;
9644
9590
  readonly $match: {
9645
- <const Cases extends {
9591
+ <Cases extends {
9646
9592
  readonly Any: (args: {
9647
9593
  readonly _tag: "Any";
9648
9594
  }) => any;
@@ -9655,7 +9601,7 @@ declare const SourceRequirement: {
9655
9601
  readonly OnlyLocal: (args: {
9656
9602
  readonly _tag: "OnlyLocal";
9657
9603
  }) => any;
9658
- }>(cases: Cases & { [K in Exclude<keyof Cases, "Any" | "Both" | "OnlyGlobal" | "OnlyLocal">]: never; }): (value: {
9604
+ }>(cases: Cases): (value: {
9659
9605
  readonly _tag: "Any";
9660
9606
  } | {
9661
9607
  readonly _tag: "Both";
@@ -9664,7 +9610,7 @@ declare const SourceRequirement: {
9664
9610
  } | {
9665
9611
  readonly _tag: "OnlyLocal";
9666
9612
  }) => import("effect/Unify").Unify<ReturnType<Cases["Any" | "Both" | "OnlyGlobal" | "OnlyLocal"]>>;
9667
- <const Cases extends {
9613
+ <Cases extends {
9668
9614
  readonly Any: (args: {
9669
9615
  readonly _tag: "Any";
9670
9616
  }) => any;
@@ -9685,18 +9631,18 @@ declare const SourceRequirement: {
9685
9631
  readonly _tag: "OnlyGlobal";
9686
9632
  } | {
9687
9633
  readonly _tag: "OnlyLocal";
9688
- }, cases: Cases & { [K in Exclude<keyof Cases, "Any" | "Both" | "OnlyGlobal" | "OnlyLocal">]: never; }): import("effect/Unify").Unify<ReturnType<Cases["Any" | "Both" | "OnlyGlobal" | "OnlyLocal"]>>;
9634
+ }, cases: Cases): import("effect/Unify").Unify<ReturnType<Cases["Any" | "Both" | "OnlyGlobal" | "OnlyLocal"]>>;
9689
9635
  };
9690
- readonly Any: Data.Case.Constructor<{
9636
+ readonly Any: Data.TaggedEnum.ConstructorFrom<{
9691
9637
  readonly _tag: "Any";
9692
9638
  }, "_tag">;
9693
- readonly Both: Data.Case.Constructor<{
9639
+ readonly Both: Data.TaggedEnum.ConstructorFrom<{
9694
9640
  readonly _tag: "Both";
9695
9641
  }, "_tag">;
9696
- readonly OnlyGlobal: Data.Case.Constructor<{
9642
+ readonly OnlyGlobal: Data.TaggedEnum.ConstructorFrom<{
9697
9643
  readonly _tag: "OnlyGlobal";
9698
9644
  }, "_tag">;
9699
- readonly OnlyLocal: Data.Case.Constructor<{
9645
+ readonly OnlyLocal: Data.TaggedEnum.ConstructorFrom<{
9700
9646
  readonly _tag: "OnlyLocal";
9701
9647
  }, "_tag">;
9702
9648
  };
@@ -9728,88 +9674,50 @@ declare class ToolDefinition implements Equal.Equal {
9728
9674
  }
9729
9675
  //#endregion
9730
9676
  //#region src/schemas/WorkspaceAnalysisSchemas.d.ts
9731
- declare const SilkPublishConfig_base: Schema.Class<SilkPublishConfig, {
9732
- access: Schema.optional<Schema.Literal<["public", "restricted"]>>;
9733
- registry: Schema.optional<typeof Schema.String>;
9734
- directory: Schema.optional<typeof Schema.String>;
9735
- tag: Schema.optional<typeof Schema.String>;
9736
- linkDirectory: Schema.optional<typeof Schema.Boolean>;
9737
- } & {
9738
- targets: Schema.optional<Schema.Array$<Schema.Union<[Schema.Literal<["npm", "github", "jsr"]>, Schema.Struct<{
9739
- protocol: Schema.optionalWith<Schema.Literal<["npm", "jsr"]>, {
9740
- default: () => "npm";
9741
- }>;
9742
- registry: Schema.optional<typeof Schema.String>;
9743
- directory: Schema.optional<typeof Schema.String>;
9744
- access: Schema.optional<Schema.Literal<["public", "restricted"]>>;
9745
- provenance: Schema.optional<typeof Schema.Boolean>;
9746
- tag: Schema.optional<typeof Schema.String>;
9677
+ declare const SilkPublishConfig_base: Schema.Class<SilkPublishConfig, Schema.Struct<{
9678
+ readonly access: Schema.optionalKey<Schema.Literals<readonly ["public", "restricted"]>>;
9679
+ readonly registry: Schema.optionalKey<Schema.String>;
9680
+ readonly directory: Schema.optionalKey<Schema.String>;
9681
+ readonly linkDirectory: Schema.optionalKey<Schema.Boolean>;
9682
+ readonly tag: Schema.optionalKey<Schema.String>;
9683
+ targets: Schema.optional<Schema.$Array<Schema.Union<readonly [Schema.Literals<readonly ["npm", "github", "jsr"]>, Schema.Struct<{
9684
+ readonly protocol: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.Literals<readonly ["npm", "jsr"]>, never>>;
9685
+ readonly registry: Schema.optional<Schema.String>;
9686
+ readonly directory: Schema.optional<Schema.String>;
9687
+ readonly access: Schema.optional<Schema.Literals<readonly ["public", "restricted"]>>;
9688
+ readonly provenance: Schema.optional<Schema.Boolean>;
9689
+ readonly tag: Schema.optional<Schema.String>;
9747
9690
  }>]>>>;
9748
- }, {} & {
9749
- readonly access?: "public" | "restricted" | undefined;
9750
- readonly directory?: string | undefined;
9751
- readonly linkDirectory?: boolean | undefined;
9752
- readonly registry?: string | undefined;
9753
- readonly tag?: string | undefined;
9754
- } & {} & {
9755
- readonly targets?: readonly ("github" | "jsr" | "npm" | {
9756
- readonly access?: "public" | "restricted" | undefined;
9757
- readonly directory?: string | undefined;
9758
- readonly protocol?: "jsr" | "npm" | undefined;
9759
- readonly provenance?: boolean | undefined;
9760
- readonly registry?: string | undefined;
9761
- readonly tag?: string | undefined;
9762
- })[] | undefined;
9763
- }, never, {
9764
- readonly access?: "public" | "restricted" | undefined;
9765
- } & {
9766
- readonly directory?: string | undefined;
9767
- } & {
9768
- readonly linkDirectory?: boolean | undefined;
9769
- } & {
9770
- readonly registry?: string | undefined;
9771
- } & {
9772
- readonly tag?: string | undefined;
9773
- } & {
9774
- readonly targets?: readonly ("github" | "jsr" | "npm" | {
9775
- readonly protocol: "jsr" | "npm";
9776
- readonly registry?: string | undefined;
9777
- readonly directory?: string | undefined;
9778
- readonly access?: "public" | "restricted" | undefined;
9779
- readonly provenance?: boolean | undefined;
9780
- readonly tag?: string | undefined;
9781
- })[] | undefined;
9782
- }, PublishConfig, {}>;
9691
+ }>, PublishConfig> & Pick<{}, never>;
9783
9692
  /**
9784
9693
  * Silk-extended publishConfig schema.
9785
9694
  *
9786
9695
  * @remarks
9787
- * Extends the base PublishConfig from workspaces-effect (which covers npm
9788
- * standard fields: access, registry, directory, tag, linkDirectory) with the
9789
- * Silk `targets` extension for multi-registry publishing.
9696
+ * Extends the base PublishConfig from `@effected/workspaces` (which covers the
9697
+ * npm standard fields access, registry, directory, tag — and, as of kit
9698
+ * round 3, `linkDirectory`) with the Silk `targets` extension for
9699
+ * multi-registry publishing.
9790
9700
  *
9791
9701
  * @since 0.2.0
9792
9702
  * @public
9793
9703
  */
9794
9704
  declare class SilkPublishConfig extends SilkPublishConfig_base {}
9795
- declare const AnalyzedWorkspace_base: Schema.TaggedClass<AnalyzedWorkspace, "AnalyzedWorkspace", {
9796
- readonly _tag: Schema.tag<"AnalyzedWorkspace">;
9797
- } & {
9798
- name: typeof Schema.String;
9799
- version: Schema.Struct<{
9800
- current: typeof Schema.String;
9705
+ declare const AnalyzedWorkspace_base: Schema.Class<AnalyzedWorkspace, Schema.TaggedStruct<"AnalyzedWorkspace", {
9706
+ readonly name: Schema.String;
9707
+ readonly version: Schema.Struct<{
9708
+ readonly current: Schema.String;
9801
9709
  }>;
9802
- path: typeof Schema.String;
9803
- root: typeof Schema.Boolean;
9804
- publishConfig: Schema.NullOr<typeof SilkPublishConfig>;
9805
- publishable: typeof Schema.Boolean;
9806
- targets: Schema.Array$<typeof PublishTarget>;
9807
- versioned: typeof Schema.Boolean;
9808
- tagged: typeof Schema.Boolean;
9809
- released: typeof Schema.Boolean;
9810
- linked: Schema.Array$<Schema.suspend<unknown, unknown, unknown>>;
9811
- fixed: Schema.Array$<Schema.suspend<unknown, unknown, unknown>>;
9812
- }>;
9710
+ readonly path: Schema.String;
9711
+ readonly root: Schema.Boolean;
9712
+ readonly publishConfig: Schema.NullOr<typeof SilkPublishConfig>;
9713
+ readonly publishable: Schema.Boolean;
9714
+ readonly targets: Schema.$Array<typeof PublishTarget>;
9715
+ readonly versioned: Schema.Boolean;
9716
+ readonly tagged: Schema.Boolean;
9717
+ readonly released: Schema.Boolean;
9718
+ readonly linked: Schema.$Array<Schema.suspend<any>>;
9719
+ readonly fixed: Schema.$Array<Schema.suspend<any>>;
9720
+ }>, {}>;
9813
9721
  /**
9814
9722
  * A fully analyzed workspace with publish targets, versioning status,
9815
9723
  * and release group membership.
@@ -9839,68 +9747,63 @@ declare class AnalyzedWorkspace extends AnalyzedWorkspace_base {
9839
9747
  /** Pretty-print an AnalyzedWorkspace instance. */
9840
9748
  static pretty: (self: AnalyzedWorkspace) => string;
9841
9749
  }
9842
- declare const WorkspaceAnalysis_base: Schema.TaggedClass<WorkspaceAnalysis, "WorkspaceAnalysis", {
9843
- readonly _tag: Schema.tag<"WorkspaceAnalysis">;
9844
- } & {
9845
- root: typeof Schema.String;
9846
- runtime: Schema.Literal<["node", "bun"]>;
9847
- packageManager: Schema.Struct<{
9848
- type: Schema.Literal<["npm", "pnpm", "yarn", "bun"]>;
9849
- version: Schema.optional<typeof Schema.String>;
9750
+ declare const WorkspaceAnalysis_base: Schema.Class<WorkspaceAnalysis, Schema.TaggedStruct<"WorkspaceAnalysis", {
9751
+ readonly root: Schema.String;
9752
+ readonly runtime: Schema.Literals<readonly ["node", "bun"]>;
9753
+ readonly packageManager: Schema.Struct<{
9754
+ readonly type: Schema.Literals<readonly ["npm", "pnpm", "yarn", "bun"]>;
9755
+ readonly version: Schema.optional<Schema.String>;
9850
9756
  }>;
9851
- workspaces: Schema.Array$<typeof AnalyzedWorkspace>;
9852
- changesetConfig: Schema.NullOr<Schema.Union<[Schema.extend<Schema.Struct<{
9853
- changelog: Schema.optional<Schema.Union<[typeof Schema.String, Schema.Array$<typeof Schema.Unknown>, Schema.Literal<[false]>]>>;
9854
- commit: Schema.optional<Schema.Union<[typeof Schema.Boolean, typeof Schema.String, Schema.Array$<typeof Schema.Unknown>]>>;
9855
- fixed: Schema.optional<Schema.Array$<Schema.Array$<typeof Schema.String>>>;
9856
- linked: Schema.optional<Schema.Array$<Schema.Array$<typeof Schema.String>>>;
9857
- access: Schema.optional<Schema.Literal<["public", "restricted"]>>;
9858
- baseBranch: Schema.optional<typeof Schema.String>;
9859
- updateInternalDependencies: Schema.optional<Schema.Literal<["patch", "minor", "major"]>>;
9860
- ignore: Schema.optional<Schema.Array$<typeof Schema.String>>;
9861
- privatePackages: Schema.optional<Schema.Union<[Schema.Struct<{
9862
- tag: Schema.optional<typeof Schema.Boolean>;
9863
- version: Schema.optional<typeof Schema.Boolean>;
9864
- }>, Schema.Literal<[false]>]>>;
9865
- prettier: Schema.optional<typeof Schema.Boolean>;
9866
- changedFilePatterns: Schema.optional<Schema.Array$<typeof Schema.String>>;
9867
- bumpVersionsWithWorkspaceProtocolOnly: Schema.optional<typeof Schema.Boolean>;
9868
- snapshot: Schema.optional<Schema.Struct<{
9869
- useCalculatedVersion: Schema.optional<typeof Schema.Boolean>;
9870
- prereleaseTemplate: Schema.optional<typeof Schema.String>;
9757
+ readonly workspaces: Schema.$Array<typeof AnalyzedWorkspace>;
9758
+ readonly changesetConfig: Schema.NullOr<Schema.Union<readonly [Schema.Struct<{
9759
+ readonly changelog: Schema.optional<Schema.Union<readonly [Schema.String, Schema.$Array<Schema.Unknown>, Schema.Literal<false>]>>;
9760
+ readonly commit: Schema.optional<Schema.Union<readonly [Schema.Boolean, Schema.String, Schema.$Array<Schema.Unknown>]>>;
9761
+ readonly fixed: Schema.optional<Schema.$Array<Schema.$Array<Schema.String>>>;
9762
+ readonly linked: Schema.optional<Schema.$Array<Schema.$Array<Schema.String>>>;
9763
+ readonly access: Schema.optional<Schema.Literals<readonly ["public", "restricted"]>>;
9764
+ readonly baseBranch: Schema.optional<Schema.String>;
9765
+ readonly updateInternalDependencies: Schema.optional<Schema.Literals<readonly ["patch", "minor", "major"]>>;
9766
+ readonly ignore: Schema.optional<Schema.$Array<Schema.String>>;
9767
+ readonly privatePackages: Schema.optional<Schema.Union<readonly [Schema.Struct<{
9768
+ readonly tag: Schema.optional<Schema.Boolean>;
9769
+ readonly version: Schema.optional<Schema.Boolean>;
9770
+ }>, Schema.Literal<false>]>>;
9771
+ readonly prettier: Schema.optional<Schema.Boolean>;
9772
+ readonly changedFilePatterns: Schema.optional<Schema.$Array<Schema.String>>;
9773
+ readonly bumpVersionsWithWorkspaceProtocolOnly: Schema.optional<Schema.Boolean>;
9774
+ readonly snapshot: Schema.optional<Schema.Struct<{
9775
+ readonly useCalculatedVersion: Schema.optional<Schema.Boolean>;
9776
+ readonly prereleaseTemplate: Schema.optional<Schema.String>;
9871
9777
  }>>;
9778
+ readonly _isSilk: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.Boolean, never>>;
9872
9779
  }>, Schema.Struct<{
9873
- _isSilk: Schema.optionalWith<typeof Schema.Boolean, {
9874
- default: () => true;
9875
- }>;
9876
- }>>, Schema.Struct<{
9877
- changelog: Schema.optional<Schema.Union<[typeof Schema.String, Schema.Array$<typeof Schema.Unknown>, Schema.Literal<[false]>]>>;
9878
- commit: Schema.optional<Schema.Union<[typeof Schema.Boolean, typeof Schema.String, Schema.Array$<typeof Schema.Unknown>]>>;
9879
- fixed: Schema.optional<Schema.Array$<Schema.Array$<typeof Schema.String>>>;
9880
- linked: Schema.optional<Schema.Array$<Schema.Array$<typeof Schema.String>>>;
9881
- access: Schema.optional<Schema.Literal<["public", "restricted"]>>;
9882
- baseBranch: Schema.optional<typeof Schema.String>;
9883
- updateInternalDependencies: Schema.optional<Schema.Literal<["patch", "minor", "major"]>>;
9884
- ignore: Schema.optional<Schema.Array$<typeof Schema.String>>;
9885
- privatePackages: Schema.optional<Schema.Union<[Schema.Struct<{
9886
- tag: Schema.optional<typeof Schema.Boolean>;
9887
- version: Schema.optional<typeof Schema.Boolean>;
9888
- }>, Schema.Literal<[false]>]>>;
9889
- prettier: Schema.optional<typeof Schema.Boolean>;
9890
- changedFilePatterns: Schema.optional<Schema.Array$<typeof Schema.String>>;
9891
- bumpVersionsWithWorkspaceProtocolOnly: Schema.optional<typeof Schema.Boolean>;
9892
- snapshot: Schema.optional<Schema.Struct<{
9893
- useCalculatedVersion: Schema.optional<typeof Schema.Boolean>;
9894
- prereleaseTemplate: Schema.optional<typeof Schema.String>;
9780
+ readonly changelog: Schema.optional<Schema.Union<readonly [Schema.String, Schema.$Array<Schema.Unknown>, Schema.Literal<false>]>>;
9781
+ readonly commit: Schema.optional<Schema.Union<readonly [Schema.Boolean, Schema.String, Schema.$Array<Schema.Unknown>]>>;
9782
+ readonly fixed: Schema.optional<Schema.$Array<Schema.$Array<Schema.String>>>;
9783
+ readonly linked: Schema.optional<Schema.$Array<Schema.$Array<Schema.String>>>;
9784
+ readonly access: Schema.optional<Schema.Literals<readonly ["public", "restricted"]>>;
9785
+ readonly baseBranch: Schema.optional<Schema.String>;
9786
+ readonly updateInternalDependencies: Schema.optional<Schema.Literals<readonly ["patch", "minor", "major"]>>;
9787
+ readonly ignore: Schema.optional<Schema.$Array<Schema.String>>;
9788
+ readonly privatePackages: Schema.optional<Schema.Union<readonly [Schema.Struct<{
9789
+ readonly tag: Schema.optional<Schema.Boolean>;
9790
+ readonly version: Schema.optional<Schema.Boolean>;
9791
+ }>, Schema.Literal<false>]>>;
9792
+ readonly prettier: Schema.optional<Schema.Boolean>;
9793
+ readonly changedFilePatterns: Schema.optional<Schema.$Array<Schema.String>>;
9794
+ readonly bumpVersionsWithWorkspaceProtocolOnly: Schema.optional<Schema.Boolean>;
9795
+ readonly snapshot: Schema.optional<Schema.Struct<{
9796
+ readonly useCalculatedVersion: Schema.optional<Schema.Boolean>;
9797
+ readonly prereleaseTemplate: Schema.optional<Schema.String>;
9895
9798
  }>>;
9896
9799
  }>]>>;
9897
- versioning: Schema.NullOr<Schema.Struct<{
9898
- type: Schema.Literal<["single", "fixed-group", "independent"]>;
9899
- fixedGroups: Schema.Array$<Schema.Array$<typeof Schema.String>>;
9900
- publishablePackages: Schema.Array$<typeof Schema.String>;
9800
+ readonly versioning: Schema.NullOr<Schema.Struct<{
9801
+ readonly type: Schema.Literals<readonly ["single", "fixed-group", "independent"]>;
9802
+ readonly fixedGroups: Schema.$Array<Schema.$Array<Schema.String>>;
9803
+ readonly publishablePackages: Schema.$Array<Schema.String>;
9901
9804
  }>>;
9902
- tagStrategy: Schema.NullOr<Schema.Literal<["single", "scoped"]>>;
9903
- }>;
9805
+ readonly tagStrategy: Schema.NullOr<Schema.Literals<readonly ["single", "scoped"]>>;
9806
+ }>, {}>;
9904
9807
  /**
9905
9808
  * Full workspace analysis result containing all analyzed workspaces
9906
9809
  * and project-level configuration.
@@ -9945,13 +9848,19 @@ declare function extractSemver(version: string): string;
9945
9848
  * @public
9946
9849
  */
9947
9850
  declare function buildSchemaUrl(version: string): string;
9948
- declare const BiomeSchemaSync_base: Context.TagClass<BiomeSchemaSync, "@savvy-web/silk-effects/BiomeSchemaSync", {
9851
+ /**
9852
+ * The {@link BiomeSchemaSync} service shape.
9853
+ *
9854
+ * @since 3.2.0
9855
+ * @public
9856
+ */
9857
+ interface BiomeSchemaSyncShape {
9949
9858
  /**
9950
9859
  * Update the `$schema` URL in all located Biome config files to match `version`.
9951
9860
  *
9952
9861
  * @param version - Target Biome version (range operators are stripped automatically).
9953
9862
  * @param options - Optional `cwd` and `gitignore` overrides.
9954
- * @returns An `Effect` that succeeds with a {@link BiomeSyncResult} or fails with {@link BiomeSyncError}.
9863
+ * @returns An `Effect` that succeeds with a {@link (BiomeSyncResult:type)} or fails with {@link BiomeSyncError}.
9955
9864
  *
9956
9865
  * @since 0.1.0
9957
9866
  */
@@ -9964,7 +9873,7 @@ declare const BiomeSchemaSync_base: Context.TagClass<BiomeSchemaSync, "@savvy-we
9964
9873
  *
9965
9874
  * @param version - Target Biome version (range operators are stripped automatically).
9966
9875
  * @param options - Optional `cwd` and `gitignore` overrides.
9967
- * @returns An `Effect` that succeeds with a {@link BiomeSyncResult} or fails with {@link BiomeSyncError}.
9876
+ * @returns An `Effect` that succeeds with a {@link (BiomeSyncResult:type)} or fails with {@link BiomeSyncError}.
9968
9877
  * Files that would be updated appear in `updated`; no disk writes occur.
9969
9878
  *
9970
9879
  * @since 0.1.0
@@ -9973,7 +9882,8 @@ declare const BiomeSchemaSync_base: Context.TagClass<BiomeSchemaSync, "@savvy-we
9973
9882
  cwd?: string;
9974
9883
  gitignore?: boolean;
9975
9884
  }) => Effect.Effect<BiomeSyncResult, BiomeSyncError>;
9976
- }>;
9885
+ }
9886
+ declare const BiomeSchemaSync_base: Context.ServiceClass<BiomeSchemaSync, "@savvy-web/silk-effects/BiomeSchemaSync", BiomeSchemaSyncShape>;
9977
9887
  /**
9978
9888
  * Service that keeps the `$schema` URL in Biome config files in sync with a target version.
9979
9889
  *
@@ -9990,7 +9900,7 @@ declare const BiomeSchemaSync_base: Context.TagClass<BiomeSchemaSync, "@savvy-we
9990
9900
  * return yield* syncer.sync("^1.9.3");
9991
9901
  * }).pipe(
9992
9902
  * Effect.provide(BiomeSchemaSyncLive),
9993
- * Effect.provide(NodeContext.layer),
9903
+ * Effect.provide(NodeServices.layer),
9994
9904
  * )
9995
9905
  * );
9996
9906
  * ```
@@ -10003,8 +9913,8 @@ declare class BiomeSchemaSync extends BiomeSchemaSync_base {}
10003
9913
  * Live implementation of {@link BiomeSchemaSync}.
10004
9914
  *
10005
9915
  * @remarks
10006
- * Requires `FileSystem` from `@effect/platform`. Provide `NodeContext.layer` or
10007
- * `BunContext.layer` to satisfy this dependency.
9916
+ * Requires the core `FileSystem` service. Provide `NodeServices.layer` (or
9917
+ * `NodeFileSystem.layer`) from `@effect/platform-node` to satisfy this dependency.
10008
9918
  *
10009
9919
  * @since 0.1.0
10010
9920
  * @public
@@ -10012,14 +9922,20 @@ declare class BiomeSchemaSync extends BiomeSchemaSync_base {}
10012
9922
  declare const BiomeSchemaSyncLive: Layer.Layer<BiomeSchemaSync, never, FileSystem.FileSystem>;
10013
9923
  //#endregion
10014
9924
  //#region src/services/ConfigDiscovery.d.ts
10015
- declare const ConfigDiscovery_base: Context.TagClass<ConfigDiscovery, "@savvy-web/silk-effects/ConfigDiscovery", {
9925
+ /**
9926
+ * The {@link ConfigDiscovery} service shape.
9927
+ *
9928
+ * @since 3.2.0
9929
+ * @public
9930
+ */
9931
+ interface ConfigDiscoveryShape {
10016
9932
  /**
10017
- * Return the highest-priority {@link ConfigLocation} for the given config file name,
9933
+ * Return the highest-priority {@link (ConfigLocation:type)} for the given config file name,
10018
9934
  * or `null` when none of the candidate paths exist.
10019
9935
  *
10020
9936
  * @param name - Config file name (e.g. `"biome.json"`).
10021
9937
  * @param options - Optional `cwd` override for path resolution.
10022
- * @returns An `Effect` that always succeeds with a {@link ConfigLocation} or `null`.
9938
+ * @returns An `Effect` that always succeeds with a {@link (ConfigLocation:type)} or `null`.
10023
9939
  *
10024
9940
  * @since 0.1.0
10025
9941
  */
@@ -10027,19 +9943,20 @@ declare const ConfigDiscovery_base: Context.TagClass<ConfigDiscovery, "@savvy-we
10027
9943
  cwd?: string;
10028
9944
  }) => Effect.Effect<ConfigLocation | null>;
10029
9945
  /**
10030
- * Return all existing {@link ConfigLocation} entries for the given config file name,
9946
+ * Return all existing {@link (ConfigLocation:type)} entries for the given config file name,
10031
9947
  * ordered from highest to lowest priority.
10032
9948
  *
10033
9949
  * @param name - Config file name (e.g. `"biome.json"`).
10034
9950
  * @param options - Optional `cwd` override for path resolution.
10035
- * @returns An `Effect` that always succeeds with an array of {@link ConfigLocation} records.
9951
+ * @returns An `Effect` that always succeeds with an array of {@link (ConfigLocation:type)} records.
10036
9952
  *
10037
9953
  * @since 0.1.0
10038
9954
  */
10039
9955
  readonly findAll: (name: string, options?: {
10040
9956
  cwd?: string;
10041
9957
  }) => Effect.Effect<ReadonlyArray<ConfigLocation>>;
10042
- }>;
9958
+ }
9959
+ declare const ConfigDiscovery_base: Context.ServiceClass<ConfigDiscovery, "@savvy-web/silk-effects/ConfigDiscovery", ConfigDiscoveryShape>;
10043
9960
  /**
10044
9961
  * Service that locates named config files within a workspace using priority-ordered search paths.
10045
9962
  *
@@ -10058,7 +9975,7 @@ declare const ConfigDiscovery_base: Context.TagClass<ConfigDiscovery, "@savvy-we
10058
9975
  * return yield* discovery.find("biome.json");
10059
9976
  * }).pipe(
10060
9977
  * Effect.provide(ConfigDiscoveryLive),
10061
- * Effect.provide(NodeContext.layer),
9978
+ * Effect.provide(NodeServices.layer),
10062
9979
  * )
10063
9980
  * );
10064
9981
  * ```
@@ -10071,8 +9988,8 @@ declare class ConfigDiscovery extends ConfigDiscovery_base {}
10071
9988
  * Live implementation of {@link ConfigDiscovery}.
10072
9989
  *
10073
9990
  * @remarks
10074
- * Requires `FileSystem` from `@effect/platform`. Provide `NodeContext.layer` or
10075
- * `BunContext.layer` to satisfy this dependency.
9991
+ * Requires the core `FileSystem` service. Provide `NodeServices.layer` (or
9992
+ * `NodeFileSystem.layer`) from `@effect/platform-node` to satisfy this dependency.
10076
9993
  *
10077
9994
  * @since 0.1.0
10078
9995
  * @public
@@ -10080,7 +9997,13 @@ declare class ConfigDiscovery extends ConfigDiscovery_base {}
10080
9997
  declare const ConfigDiscoveryLive: Layer.Layer<ConfigDiscovery, never, FileSystem.FileSystem>;
10081
9998
  //#endregion
10082
9999
  //#region src/services/ManagedSection.d.ts
10083
- declare const ManagedSection_base: Context.TagClass<ManagedSection, "@savvy-web/silk-effects/ManagedSection", {
10000
+ /**
10001
+ * The {@link ManagedSection} service shape.
10002
+ *
10003
+ * @since 3.2.0
10004
+ * @public
10005
+ */
10006
+ interface ManagedSectionShape {
10084
10007
  readonly read: {
10085
10008
  (definition: SectionDefinition): (path: string) => Effect.Effect<SectionBlock | null, SectionParseError>;
10086
10009
  (path: string, definition: SectionDefinition): Effect.Effect<SectionBlock | null, SectionParseError>;
@@ -10109,7 +10032,8 @@ declare const ManagedSection_base: Context.TagClass<ManagedSection, "@savvy-web/
10109
10032
  (definition: SectionDefinition): (path: string) => Effect.Effect<boolean, SectionWriteError>;
10110
10033
  (path: string, definition: SectionDefinition): Effect.Effect<boolean, SectionWriteError>;
10111
10034
  };
10112
- }>;
10035
+ }
10036
+ declare const ManagedSection_base: Context.ServiceClass<ManagedSection, "@savvy-web/silk-effects/ManagedSection", ManagedSectionShape>;
10113
10037
  /**
10114
10038
  * Service for managing delimited sections in user-editable files.
10115
10039
  *
@@ -10122,7 +10046,7 @@ declare const ManagedSection_base: Context.TagClass<ManagedSection, "@savvy-web/
10122
10046
  */
10123
10047
  declare class ManagedSection extends ManagedSection_base {}
10124
10048
  /**
10125
- * Live implementation of {@link ManagedSection} backed by `@effect/platform` FileSystem.
10049
+ * Live implementation of {@link ManagedSection} backed by the core `FileSystem` service.
10126
10050
  *
10127
10051
  * @since 0.2.0
10128
10052
  * @public
@@ -10228,7 +10152,7 @@ interface PublishablePackage {
10228
10152
  readonly targetCount: number;
10229
10153
  }
10230
10154
  /**
10231
- * Silk publishability rules over `workspaces-effect`'s `PublishTarget`.
10155
+ * Silk publishability rules over `@effected/workspaces`' `PublishTarget`.
10232
10156
  *
10233
10157
  * @remarks
10234
10158
  * In silk mode `private: true` is the norm on workspace `package.json`; publishability is
@@ -10276,12 +10200,12 @@ declare class SilkPublishability {
10276
10200
  * Before the prod build runs there is no binding, and the detector's
10277
10201
  * placeholder directories are left alone.
10278
10202
  */
10279
- static resolveTargets(pkg: WorkspacePackage, root: string): Effect.Effect<ReadonlyArray<PublishTarget>, PublishTargetBindingError, PublishabilityDetector | FileSystem.FileSystem>;
10203
+ static resolveTargets(pkg: WorkspacePackage, _root: string): Effect.Effect<ReadonlyArray<PublishTarget>, PublishTargetBindingError, PublishabilityDetector | FileSystem.FileSystem>;
10280
10204
  /**
10281
10205
  * The publishable, non-ignored packages, resolved through the single
10282
10206
  * {@link SilkPublishability} (which already honors changeset ignore in adaptive mode).
10283
10207
  */
10284
- static listPublishable(root: string): Effect.Effect<ReadonlyArray<PublishablePackage>, never, WorkspaceDiscovery | PublishabilityDetector>;
10208
+ static listPublishable(_root: string): Effect.Effect<ReadonlyArray<PublishablePackage>, never, WorkspaceDiscovery | PublishabilityDetector>;
10285
10209
  }
10286
10210
  /**
10287
10211
  * Read the bundler's `<pkgPath>/dist/prod/targets.json` binding via FileSystem.
@@ -10298,7 +10222,7 @@ declare class SilkPublishability {
10298
10222
  */
10299
10223
  declare const readTargetsBinding: (fs: FileSystem.FileSystem, pkgPath: string) => Effect.Effect<TargetsBinding | null>;
10300
10224
  /**
10301
- * Override of `workspaces-effect`'s {@link SilkPublishability} Tag with pure silk rules.
10225
+ * Override of `@effected/workspaces`' `PublishabilityDetector` Tag with pure silk rules.
10302
10226
  *
10303
10227
  * @remarks Requires `FileSystem` (captured at layer build); `detect` reads the raw
10304
10228
  * `package.json` from `pkg.packageJsonPath` and applies `SilkPublishability.detect`.
@@ -10308,11 +10232,15 @@ declare const readTargetsBinding: (fs: FileSystem.FileSystem, pkgPath: string) =
10308
10232
  */
10309
10233
  declare const SilkPublishabilityDetectorLive: Layer.Layer<PublishabilityDetector, never, FileSystem.FileSystem>;
10310
10234
  /**
10311
- * Ignore-aware override of {@link SilkPublishability}. `detect` short-circuits to `[]`
10235
+ * Ignore-aware override of `PublishabilityDetector`. `detect` short-circuits to `[]`
10312
10236
  * for changeset-ignored packages, then dispatches on `ChangesetConfig.mode`:
10313
10237
  * `none` → `[]`; `silk` → `SilkPublishability.detect`; `vanilla` → the library default.
10314
10238
  *
10315
- * @remarks Requires `FileSystem` + {@link ChangesetConfig} at build.
10239
+ * @remarks Requires `FileSystem` and {@link ChangesetConfig} at build.
10240
+ * The kit's `detect` contract no longer receives the workspace root, so the changeset
10241
+ * lookups derive it per package from the package's own discovery coordinates
10242
+ * (`pkg.path` ascended by `pkg.relativePath` — never a filesystem marker walk,
10243
+ * which could escape an unmarked root and read the wrong `.changeset/config.json`).
10316
10244
  *
10317
10245
  * @since 0.4.0
10318
10246
  * @public
@@ -10320,12 +10248,18 @@ declare const SilkPublishabilityDetectorLive: Layer.Layer<PublishabilityDetector
10320
10248
  declare const PublishabilityDetectorAdaptiveLive: Layer.Layer<PublishabilityDetector, never, FileSystem.FileSystem | ChangesetConfig>;
10321
10249
  //#endregion
10322
10250
  //#region src/services/TagStrategy.d.ts
10323
- declare const TagStrategy_base: Context.TagClass<TagStrategy, "@savvy-web/silk-effects/TagStrategy", {
10251
+ /**
10252
+ * The {@link TagStrategy} service shape.
10253
+ *
10254
+ * @since 3.2.0
10255
+ * @public
10256
+ */
10257
+ interface TagStrategyShape {
10324
10258
  /**
10325
10259
  * Determine the appropriate tag strategy type from a versioning strategy result.
10326
10260
  *
10327
10261
  * @param versioningResult - The result of `VersioningStrategy.detect`.
10328
- * @returns An `Effect` that always succeeds with a {@link TagStrategyType}.
10262
+ * @returns An `Effect` that always succeeds with a {@link (TagStrategyType:type)}.
10329
10263
  *
10330
10264
  * @since 0.1.0
10331
10265
  */
@@ -10335,14 +10269,15 @@ declare const TagStrategy_base: Context.TagClass<TagStrategy, "@savvy-web/silk-e
10335
10269
  *
10336
10270
  * @param name - The package name (e.g. `"@my-org/pkg"` or `"my-pkg"`).
10337
10271
  * @param version - The semver version string (e.g. `"1.2.3"`). Must not be empty.
10338
- * @param strategy - The {@link TagStrategyType} to apply.
10272
+ * @param strategy - The {@link (TagStrategyType:type)} to apply.
10339
10273
  * @returns An `Effect` that resolves to the formatted tag string, or fails with
10340
10274
  * {@link TagFormatError} when `version` is empty.
10341
10275
  *
10342
10276
  * @since 0.1.0
10343
10277
  */
10344
10278
  readonly formatTag: (name: string, version: string, strategy: TagStrategyType) => Effect.Effect<string, TagFormatError>;
10345
- }>;
10279
+ }
10280
+ declare const TagStrategy_base: Context.ServiceClass<TagStrategy, "@savvy-web/silk-effects/TagStrategy", TagStrategyShape>;
10346
10281
  /**
10347
10282
  * Service that determines and applies the git-tag naming strategy for a release.
10348
10283
  *
@@ -10379,7 +10314,13 @@ declare class TagStrategy extends TagStrategy_base {}
10379
10314
  declare const TagStrategyLive: Layer.Layer<TagStrategy>;
10380
10315
  //#endregion
10381
10316
  //#region src/services/VersioningStrategy.d.ts
10382
- declare const VersioningStrategy_base: Context.TagClass<VersioningStrategy, "@savvy-web/silk-effects/VersioningStrategy", {
10317
+ /**
10318
+ * The {@link VersioningStrategy} service shape.
10319
+ *
10320
+ * @since 3.2.0
10321
+ * @public
10322
+ */
10323
+ interface VersioningStrategyShape {
10383
10324
  /**
10384
10325
  * Classify the versioning strategy for a list of publishable package names.
10385
10326
  *
@@ -10391,7 +10332,8 @@ declare const VersioningStrategy_base: Context.TagClass<VersioningStrategy, "@sa
10391
10332
  * @since 0.1.0
10392
10333
  */
10393
10334
  readonly detect: (publishablePackages: ReadonlyArray<string>, root: string) => Effect.Effect<VersioningStrategyResult, VersioningDetectionError>;
10394
- }>;
10335
+ }
10336
+ declare const VersioningStrategy_base: Context.ServiceClass<VersioningStrategy, "@savvy-web/silk-effects/VersioningStrategy", VersioningStrategyShape>;
10395
10337
  /**
10396
10338
  * Service that classifies the versioning strategy used by a workspace.
10397
10339
  *
@@ -10409,7 +10351,7 @@ declare const VersioningStrategy_base: Context.TagClass<VersioningStrategy, "@sa
10409
10351
  * }).pipe(
10410
10352
  * Effect.provide(VersioningStrategyLive),
10411
10353
  * Effect.provide(ChangesetConfigReaderLive),
10412
- * Effect.provide(NodeContext.layer),
10354
+ * Effect.provide(NodeServices.layer),
10413
10355
  * )
10414
10356
  * );
10415
10357
  * ```
@@ -10431,12 +10373,18 @@ declare class VersioningStrategy extends VersioningStrategy_base {}
10431
10373
  declare const VersioningStrategyLive: Layer.Layer<VersioningStrategy, never, ChangesetConfigReader>;
10432
10374
  //#endregion
10433
10375
  //#region src/services/SilkWorkspaceAnalyzer.d.ts
10434
- declare const SilkWorkspaceAnalyzer_base: Context.TagClass<SilkWorkspaceAnalyzer, "@savvy-web/silk-effects/SilkWorkspaceAnalyzer", {
10376
+ /**
10377
+ * The {@link SilkWorkspaceAnalyzer} service shape.
10378
+ *
10379
+ * @since 3.2.0
10380
+ * @public
10381
+ */
10382
+ interface SilkWorkspaceAnalyzerShape {
10435
10383
  /**
10436
10384
  * Analyze a workspace root and produce a full {@link WorkspaceAnalysis}.
10437
10385
  *
10438
10386
  * @param root - Absolute path to the workspace root directory. Must match
10439
- * the root that the `WorkspaceRoot` layer was initialised with. The analyzer
10387
+ * the root that the `WorkspaceDiscovery` layer was initialised with. The analyzer
10440
10388
  * is single-root by design — build a fresh layer per workspace root.
10441
10389
  * @returns An `Effect` that succeeds with a {@link WorkspaceAnalysis}, or
10442
10390
  * fails with {@link WorkspaceAnalysisError}.
@@ -10444,7 +10392,8 @@ declare const SilkWorkspaceAnalyzer_base: Context.TagClass<SilkWorkspaceAnalyzer
10444
10392
  * @since 0.2.0
10445
10393
  */
10446
10394
  readonly analyze: (root: string) => Effect.Effect<WorkspaceAnalysis, WorkspaceAnalysisError>;
10447
- }>;
10395
+ }
10396
+ declare const SilkWorkspaceAnalyzer_base: Context.ServiceClass<SilkWorkspaceAnalyzer, "@savvy-web/silk-effects/SilkWorkspaceAnalyzer", SilkWorkspaceAnalyzerShape>;
10448
10397
  /**
10449
10398
  * Service that performs a full workspace analysis — discovering packages,
10450
10399
  * detecting publishability, computing versioning/tag strategies, and
@@ -10483,10 +10432,16 @@ declare class SilkWorkspaceAnalyzer extends SilkWorkspaceAnalyzer_base {}
10483
10432
  * @since 0.2.0
10484
10433
  * @public
10485
10434
  */
10486
- declare const SilkWorkspaceAnalyzerLive: Layer.Layer<SilkWorkspaceAnalyzer, never, FileSystem.FileSystem | WorkspaceDiscovery | TopologicalSorter | PackageManagerDetector | ChangesetConfigReader | VersioningStrategy | TagStrategy>;
10435
+ declare const SilkWorkspaceAnalyzerLive: Layer.Layer<SilkWorkspaceAnalyzer, never, FileSystem.FileSystem | WorkspaceDiscovery | PackageManagerDetector | ChangesetConfigReader | VersioningStrategy | TagStrategy>;
10487
10436
  //#endregion
10488
10437
  //#region src/services/ToolDiscovery.d.ts
10489
- declare const ToolDiscovery_base: Context.TagClass<ToolDiscovery, "@savvy-web/silk-effects/ToolDiscovery", {
10438
+ /**
10439
+ * The {@link ToolDiscovery} service shape.
10440
+ *
10441
+ * @since 3.2.0
10442
+ * @public
10443
+ */
10444
+ interface ToolDiscoveryShape {
10490
10445
  /**
10491
10446
  * Resolve a tool definition to a {@link ResolvedTool}, enforcing source
10492
10447
  * requirements and resolution policies. Results are cached by tool name.
@@ -10495,7 +10450,7 @@ declare const ToolDiscovery_base: Context.TagClass<ToolDiscovery, "@savvy-web/si
10495
10450
  */
10496
10451
  readonly resolve: (definition: ToolDefinition) => Effect.Effect<ResolvedTool, ToolResolutionError>;
10497
10452
  /**
10498
- * Like {@link resolve} but maps failures to {@link ToolNotFoundError}.
10453
+ * Like {@link ToolDiscoveryShape.resolve} but maps failures to {@link ToolNotFoundError}.
10499
10454
  * Accepts an optional custom error message.
10500
10455
  *
10501
10456
  * @since 0.2.0
@@ -10517,7 +10472,8 @@ declare const ToolDiscovery_base: Context.TagClass<ToolDiscovery, "@savvy-web/si
10517
10472
  * @since 0.2.0
10518
10473
  */
10519
10474
  readonly clearCache: Effect.Effect<void>;
10520
- }>;
10475
+ }
10476
+ declare const ToolDiscovery_base: Context.ServiceClass<ToolDiscovery, "@savvy-web/silk-effects/ToolDiscovery", ToolDiscoveryShape>;
10521
10477
  /**
10522
10478
  * Service that resolves CLI tools — locating them globally (PATH) or locally
10523
10479
  * (via package manager), extracting versions, enforcing source and version
@@ -10533,7 +10489,7 @@ declare const ToolDiscovery_base: Context.TagClass<ToolDiscovery, "@savvy-web/si
10533
10489
  * );
10534
10490
  * }).pipe(
10535
10491
  * Effect.provide(ToolDiscoveryLive),
10536
- * Effect.provide(NodeContext.layer),
10492
+ * Effect.provide(NodeServices.layer),
10537
10493
  * )
10538
10494
  * );
10539
10495
  * ```
@@ -10546,117 +10502,118 @@ declare class ToolDiscovery extends ToolDiscovery_base {}
10546
10502
  * Live implementation of {@link ToolDiscovery}.
10547
10503
  *
10548
10504
  * @remarks
10549
- * Requires `CommandExecutor` from `@effect/platform`, `PackageManagerDetector`
10550
- * and `WorkspaceRoot` from `workspaces-effect`.
10505
+ * Requires `ChildProcessSpawner` from `effect/unstable/process` (provide
10506
+ * `NodeServices.layer` at the app edge), plus `PackageManagerDetector`
10507
+ * and `WorkspaceRoot` from `@effected/workspaces`.
10551
10508
  *
10552
10509
  * @since 0.2.0
10553
10510
  * @public
10554
10511
  */
10555
- declare const ToolDiscoveryLive: Layer.Layer<ToolDiscovery, never, CommandExecutor.CommandExecutor | PackageManagerDetector | WorkspaceRoot>;
10512
+ declare const ToolDiscoveryLive: Layer.Layer<ToolDiscovery, never, ChildProcessSpawner.ChildProcessSpawner | PackageManagerDetector | WorkspaceRoot>;
10556
10513
  //#endregion
10557
10514
  //#region src/turbo/schemas/DryRun.d.ts
10558
10515
  /** turbo's per-target cache descriptor in `--dry=json`. */
10559
10516
  declare const TurboCache: Schema.Struct<{
10560
- local: typeof Schema.Boolean;
10561
- remote: typeof Schema.Boolean;
10562
- status: Schema.Literal<["HIT", "MISS"]>;
10563
- timeSaved: typeof Schema.Number;
10517
+ readonly local: Schema.Boolean;
10518
+ readonly remote: Schema.Boolean;
10519
+ readonly status: Schema.Literals<readonly ["HIT", "MISS"]>;
10520
+ readonly timeSaved: Schema.Number;
10564
10521
  }>;
10565
10522
  /** turbo's environment-variable contribution block (per-task and global). */
10566
10523
  declare const TurboEnvVars: Schema.Struct<{
10567
- specified: Schema.Struct<{
10568
- env: Schema.Array$<typeof Schema.String>;
10569
- passThroughEnv: Schema.NullOr<Schema.Array$<typeof Schema.String>>;
10524
+ readonly specified: Schema.Struct<{
10525
+ readonly env: Schema.$Array<Schema.String>;
10526
+ readonly passThroughEnv: Schema.NullOr<Schema.$Array<Schema.String>>;
10570
10527
  }>;
10571
- configured: Schema.Array$<typeof Schema.String>;
10572
- inferred: Schema.Array$<typeof Schema.String>;
10573
- passthrough: Schema.NullOr<Schema.Array$<typeof Schema.String>>;
10528
+ readonly configured: Schema.$Array<Schema.String>;
10529
+ readonly inferred: Schema.$Array<Schema.String>;
10530
+ readonly passthrough: Schema.NullOr<Schema.$Array<Schema.String>>;
10574
10531
  }>;
10575
10532
  /** A single task entry from `turbo run <task> --dry=json`. */
10576
10533
  declare const TurboDryTask: Schema.Struct<{
10577
- taskId: typeof Schema.String;
10578
- task: typeof Schema.String;
10579
- package: typeof Schema.String;
10580
- directory: typeof Schema.String;
10581
- hash: typeof Schema.String;
10582
- inputs: Schema.Record$<typeof Schema.String, typeof Schema.String>;
10583
- hashOfExternalDependencies: typeof Schema.String;
10584
- cache: Schema.Struct<{
10585
- local: typeof Schema.Boolean;
10586
- remote: typeof Schema.Boolean;
10587
- status: Schema.Literal<["HIT", "MISS"]>;
10588
- timeSaved: typeof Schema.Number;
10534
+ readonly taskId: Schema.String;
10535
+ readonly task: Schema.String;
10536
+ readonly package: Schema.String;
10537
+ readonly directory: Schema.String;
10538
+ readonly hash: Schema.String;
10539
+ readonly inputs: Schema.$Record<Schema.String, Schema.String>;
10540
+ readonly hashOfExternalDependencies: Schema.String;
10541
+ readonly cache: Schema.Struct<{
10542
+ readonly local: Schema.Boolean;
10543
+ readonly remote: Schema.Boolean;
10544
+ readonly status: Schema.Literals<readonly ["HIT", "MISS"]>;
10545
+ readonly timeSaved: Schema.Number;
10589
10546
  }>;
10590
- dependencies: Schema.Array$<typeof Schema.String>;
10591
- dependents: Schema.Array$<typeof Schema.String>;
10592
- environmentVariables: Schema.Struct<{
10593
- specified: Schema.Struct<{
10594
- env: Schema.Array$<typeof Schema.String>;
10595
- passThroughEnv: Schema.NullOr<Schema.Array$<typeof Schema.String>>;
10547
+ readonly dependencies: Schema.$Array<Schema.String>;
10548
+ readonly dependents: Schema.$Array<Schema.String>;
10549
+ readonly environmentVariables: Schema.Struct<{
10550
+ readonly specified: Schema.Struct<{
10551
+ readonly env: Schema.$Array<Schema.String>;
10552
+ readonly passThroughEnv: Schema.NullOr<Schema.$Array<Schema.String>>;
10596
10553
  }>;
10597
- configured: Schema.Array$<typeof Schema.String>;
10598
- inferred: Schema.Array$<typeof Schema.String>;
10599
- passthrough: Schema.NullOr<Schema.Array$<typeof Schema.String>>;
10554
+ readonly configured: Schema.$Array<Schema.String>;
10555
+ readonly inferred: Schema.$Array<Schema.String>;
10556
+ readonly passthrough: Schema.NullOr<Schema.$Array<Schema.String>>;
10600
10557
  }>;
10601
10558
  }>;
10602
10559
  /** The `globalCacheInputs` block — the components of the global hash. */
10603
10560
  declare const TurboGlobalCacheInputs: Schema.Struct<{
10604
- rootKey: typeof Schema.String;
10605
- files: Schema.Record$<typeof Schema.String, typeof Schema.String>;
10606
- hashOfExternalDependencies: typeof Schema.String;
10607
- hashOfInternalDependencies: typeof Schema.String;
10608
- environmentVariables: Schema.Struct<{
10609
- specified: Schema.Struct<{
10610
- env: Schema.Array$<typeof Schema.String>;
10611
- passThroughEnv: Schema.NullOr<Schema.Array$<typeof Schema.String>>;
10561
+ readonly rootKey: Schema.String;
10562
+ readonly files: Schema.$Record<Schema.String, Schema.String>;
10563
+ readonly hashOfExternalDependencies: Schema.String;
10564
+ readonly hashOfInternalDependencies: Schema.String;
10565
+ readonly environmentVariables: Schema.Struct<{
10566
+ readonly specified: Schema.Struct<{
10567
+ readonly env: Schema.$Array<Schema.String>;
10568
+ readonly passThroughEnv: Schema.NullOr<Schema.$Array<Schema.String>>;
10612
10569
  }>;
10613
- configured: Schema.Array$<typeof Schema.String>;
10614
- inferred: Schema.Array$<typeof Schema.String>;
10615
- passthrough: Schema.NullOr<Schema.Array$<typeof Schema.String>>;
10570
+ readonly configured: Schema.$Array<Schema.String>;
10571
+ readonly inferred: Schema.$Array<Schema.String>;
10572
+ readonly passthrough: Schema.NullOr<Schema.$Array<Schema.String>>;
10616
10573
  }>;
10617
10574
  }>;
10618
10575
  /** The subset of `turbo run <task> --dry=json` the Turbo namespace reads. */
10619
10576
  declare const TurboDryRun: Schema.Struct<{
10620
- turboVersion: typeof Schema.String;
10621
- globalCacheInputs: Schema.Struct<{
10622
- rootKey: typeof Schema.String;
10623
- files: Schema.Record$<typeof Schema.String, typeof Schema.String>;
10624
- hashOfExternalDependencies: typeof Schema.String;
10625
- hashOfInternalDependencies: typeof Schema.String;
10626
- environmentVariables: Schema.Struct<{
10627
- specified: Schema.Struct<{
10628
- env: Schema.Array$<typeof Schema.String>;
10629
- passThroughEnv: Schema.NullOr<Schema.Array$<typeof Schema.String>>;
10577
+ readonly turboVersion: Schema.String;
10578
+ readonly globalCacheInputs: Schema.Struct<{
10579
+ readonly rootKey: Schema.String;
10580
+ readonly files: Schema.$Record<Schema.String, Schema.String>;
10581
+ readonly hashOfExternalDependencies: Schema.String;
10582
+ readonly hashOfInternalDependencies: Schema.String;
10583
+ readonly environmentVariables: Schema.Struct<{
10584
+ readonly specified: Schema.Struct<{
10585
+ readonly env: Schema.$Array<Schema.String>;
10586
+ readonly passThroughEnv: Schema.NullOr<Schema.$Array<Schema.String>>;
10630
10587
  }>;
10631
- configured: Schema.Array$<typeof Schema.String>;
10632
- inferred: Schema.Array$<typeof Schema.String>;
10633
- passthrough: Schema.NullOr<Schema.Array$<typeof Schema.String>>;
10588
+ readonly configured: Schema.$Array<Schema.String>;
10589
+ readonly inferred: Schema.$Array<Schema.String>;
10590
+ readonly passthrough: Schema.NullOr<Schema.$Array<Schema.String>>;
10634
10591
  }>;
10635
10592
  }>;
10636
- tasks: Schema.Array$<Schema.Struct<{
10637
- taskId: typeof Schema.String;
10638
- task: typeof Schema.String;
10639
- package: typeof Schema.String;
10640
- directory: typeof Schema.String;
10641
- hash: typeof Schema.String;
10642
- inputs: Schema.Record$<typeof Schema.String, typeof Schema.String>;
10643
- hashOfExternalDependencies: typeof Schema.String;
10644
- cache: Schema.Struct<{
10645
- local: typeof Schema.Boolean;
10646
- remote: typeof Schema.Boolean;
10647
- status: Schema.Literal<["HIT", "MISS"]>;
10648
- timeSaved: typeof Schema.Number;
10593
+ readonly tasks: Schema.$Array<Schema.Struct<{
10594
+ readonly taskId: Schema.String;
10595
+ readonly task: Schema.String;
10596
+ readonly package: Schema.String;
10597
+ readonly directory: Schema.String;
10598
+ readonly hash: Schema.String;
10599
+ readonly inputs: Schema.$Record<Schema.String, Schema.String>;
10600
+ readonly hashOfExternalDependencies: Schema.String;
10601
+ readonly cache: Schema.Struct<{
10602
+ readonly local: Schema.Boolean;
10603
+ readonly remote: Schema.Boolean;
10604
+ readonly status: Schema.Literals<readonly ["HIT", "MISS"]>;
10605
+ readonly timeSaved: Schema.Number;
10649
10606
  }>;
10650
- dependencies: Schema.Array$<typeof Schema.String>;
10651
- dependents: Schema.Array$<typeof Schema.String>;
10652
- environmentVariables: Schema.Struct<{
10653
- specified: Schema.Struct<{
10654
- env: Schema.Array$<typeof Schema.String>;
10655
- passThroughEnv: Schema.NullOr<Schema.Array$<typeof Schema.String>>;
10607
+ readonly dependencies: Schema.$Array<Schema.String>;
10608
+ readonly dependents: Schema.$Array<Schema.String>;
10609
+ readonly environmentVariables: Schema.Struct<{
10610
+ readonly specified: Schema.Struct<{
10611
+ readonly env: Schema.$Array<Schema.String>;
10612
+ readonly passThroughEnv: Schema.NullOr<Schema.$Array<Schema.String>>;
10656
10613
  }>;
10657
- configured: Schema.Array$<typeof Schema.String>;
10658
- inferred: Schema.Array$<typeof Schema.String>;
10659
- passthrough: Schema.NullOr<Schema.Array$<typeof Schema.String>>;
10614
+ readonly configured: Schema.$Array<Schema.String>;
10615
+ readonly inferred: Schema.$Array<Schema.String>;
10616
+ readonly passthrough: Schema.NullOr<Schema.$Array<Schema.String>>;
10660
10617
  }>;
10661
10618
  }>>;
10662
10619
  }>;
@@ -10666,82 +10623,82 @@ type TurboDryTaskType = Schema.Schema.Type<typeof TurboDryTask>;
10666
10623
  //#region src/turbo/schemas/results.d.ts
10667
10624
  /** Per-package cache outcome for one task. */
10668
10625
  declare const PackageCacheStatus: Schema.Struct<{
10669
- package: typeof Schema.String;
10670
- taskId: typeof Schema.String;
10671
- hash: typeof Schema.String;
10672
- status: Schema.Literal<["HIT", "MISS"]>;
10673
- timeSaved: typeof Schema.Number;
10626
+ readonly package: Schema.String;
10627
+ readonly taskId: Schema.String;
10628
+ readonly hash: Schema.String;
10629
+ readonly status: Schema.Literals<readonly ["HIT", "MISS"]>;
10630
+ readonly timeSaved: Schema.Number;
10674
10631
  }>;
10675
10632
  /** The hash-contributor breakdown explaining a single MISS. */
10676
10633
  declare const MissExplanation: Schema.Struct<{
10677
- package: typeof Schema.String;
10678
- taskId: typeof Schema.String;
10679
- hash: typeof Schema.String;
10680
- inputFileCount: typeof Schema.Number;
10681
- hashedEnvVars: Schema.Array$<typeof Schema.String>;
10682
- externalDependenciesHash: typeof Schema.String;
10683
- dependsOn: Schema.Array$<typeof Schema.String>;
10634
+ readonly package: Schema.String;
10635
+ readonly taskId: Schema.String;
10636
+ readonly hash: Schema.String;
10637
+ readonly inputFileCount: Schema.Number;
10638
+ readonly hashedEnvVars: Schema.$Array<Schema.String>;
10639
+ readonly externalDependenciesHash: Schema.String;
10640
+ readonly dependsOn: Schema.$Array<Schema.String>;
10684
10641
  }>;
10685
10642
  /** Global-hash component summary (every task inherits this). */
10686
10643
  declare const GlobalHashSummary: Schema.Struct<{
10687
- rootKey: typeof Schema.String;
10688
- globalFileCount: typeof Schema.Number;
10689
- externalDependenciesHash: typeof Schema.String;
10690
- internalDependenciesHash: typeof Schema.String;
10691
- globalEnvVars: Schema.Array$<typeof Schema.String>;
10644
+ readonly rootKey: Schema.String;
10645
+ readonly globalFileCount: Schema.Number;
10646
+ readonly externalDependenciesHash: Schema.String;
10647
+ readonly internalDependenciesHash: Schema.String;
10648
+ readonly globalEnvVars: Schema.$Array<Schema.String>;
10692
10649
  }>;
10693
10650
  /** Result of `TurboInspector.diagnoseCache`. */
10694
10651
  declare const CacheDiagnosis: Schema.Struct<{
10695
- task: typeof Schema.String;
10696
- totalTasks: typeof Schema.Number;
10697
- hits: typeof Schema.Number;
10698
- misses: typeof Schema.Number;
10699
- statuses: Schema.Array$<Schema.Struct<{
10700
- package: typeof Schema.String;
10701
- taskId: typeof Schema.String;
10702
- hash: typeof Schema.String;
10703
- status: Schema.Literal<["HIT", "MISS"]>;
10704
- timeSaved: typeof Schema.Number;
10652
+ readonly task: Schema.String;
10653
+ readonly totalTasks: Schema.Number;
10654
+ readonly hits: Schema.Number;
10655
+ readonly misses: Schema.Number;
10656
+ readonly statuses: Schema.$Array<Schema.Struct<{
10657
+ readonly package: Schema.String;
10658
+ readonly taskId: Schema.String;
10659
+ readonly hash: Schema.String;
10660
+ readonly status: Schema.Literals<readonly ["HIT", "MISS"]>;
10661
+ readonly timeSaved: Schema.Number;
10705
10662
  }>>;
10706
- explanations: Schema.Array$<Schema.Struct<{
10707
- package: typeof Schema.String;
10708
- taskId: typeof Schema.String;
10709
- hash: typeof Schema.String;
10710
- inputFileCount: typeof Schema.Number;
10711
- hashedEnvVars: Schema.Array$<typeof Schema.String>;
10712
- externalDependenciesHash: typeof Schema.String;
10713
- dependsOn: Schema.Array$<typeof Schema.String>;
10663
+ readonly explanations: Schema.$Array<Schema.Struct<{
10664
+ readonly package: Schema.String;
10665
+ readonly taskId: Schema.String;
10666
+ readonly hash: Schema.String;
10667
+ readonly inputFileCount: Schema.Number;
10668
+ readonly hashedEnvVars: Schema.$Array<Schema.String>;
10669
+ readonly externalDependenciesHash: Schema.String;
10670
+ readonly dependsOn: Schema.$Array<Schema.String>;
10714
10671
  }>>;
10715
- global: Schema.Struct<{
10716
- rootKey: typeof Schema.String;
10717
- globalFileCount: typeof Schema.Number;
10718
- externalDependenciesHash: typeof Schema.String;
10719
- internalDependenciesHash: typeof Schema.String;
10720
- globalEnvVars: Schema.Array$<typeof Schema.String>;
10672
+ readonly global: Schema.Struct<{
10673
+ readonly rootKey: Schema.String;
10674
+ readonly globalFileCount: Schema.Number;
10675
+ readonly externalDependenciesHash: Schema.String;
10676
+ readonly internalDependenciesHash: Schema.String;
10677
+ readonly globalEnvVars: Schema.$Array<Schema.String>;
10721
10678
  }>;
10722
10679
  }>;
10723
10680
  /** One node in the task graph. */
10724
10681
  declare const GraphNode: Schema.Struct<{
10725
- taskId: typeof Schema.String;
10726
- package: typeof Schema.String;
10727
- dependsOn: Schema.Array$<typeof Schema.String>;
10682
+ readonly taskId: Schema.String;
10683
+ readonly package: Schema.String;
10684
+ readonly dependsOn: Schema.$Array<Schema.String>;
10728
10685
  }>;
10729
10686
  /** Result of `TurboInspector.taskGraph`. */
10730
10687
  declare const TaskGraphResult: Schema.Struct<{
10731
- task: Schema.optional<typeof Schema.String>;
10732
- nodeCount: typeof Schema.Number;
10733
- nodes: Schema.Array$<Schema.Struct<{
10734
- taskId: typeof Schema.String;
10735
- package: typeof Schema.String;
10736
- dependsOn: Schema.Array$<typeof Schema.String>;
10688
+ readonly task: Schema.optional<Schema.String>;
10689
+ readonly nodeCount: Schema.Number;
10690
+ readonly nodes: Schema.$Array<Schema.Struct<{
10691
+ readonly taskId: Schema.String;
10692
+ readonly package: Schema.String;
10693
+ readonly dependsOn: Schema.$Array<Schema.String>;
10737
10694
  }>>;
10738
- criticalPath: Schema.Array$<typeof Schema.String>;
10695
+ readonly criticalPath: Schema.$Array<Schema.String>;
10739
10696
  }>;
10740
10697
  /** Result of `TurboInspector.affected`. */
10741
10698
  declare const AffectedResult: Schema.Struct<{
10742
- base: typeof Schema.String;
10743
- packages: Schema.Array$<typeof Schema.String>;
10744
- dependents: Schema.Array$<typeof Schema.String>;
10699
+ readonly base: Schema.String;
10700
+ readonly packages: Schema.$Array<Schema.String>;
10701
+ readonly dependents: Schema.$Array<Schema.String>;
10745
10702
  }>;
10746
10703
  type CacheDiagnosisType = Schema.Schema.Type<typeof CacheDiagnosis>;
10747
10704
  type TaskGraphResultType = Schema.Schema.Type<typeof TaskGraphResult>;
@@ -10845,7 +10802,13 @@ declare class TurboExecError extends TurboExecError_base<{
10845
10802
  type TurboError = TurboNotInstalledError | NotATurboRepoError | DryRunParseError | TurboExecError;
10846
10803
  //#endregion
10847
10804
  //#region src/turbo/services/TurboInspector.d.ts
10848
- declare const TurboInspector_base: Context.TagClass<TurboInspector, "@savvy-web/silk-effects/TurboInspector", {
10805
+ /**
10806
+ * The {@link TurboInspector} service shape.
10807
+ *
10808
+ * @since 3.2.0
10809
+ * @public
10810
+ */
10811
+ interface TurboInspectorShape {
10849
10812
  /**
10850
10813
  * Diagnose the cache state of `task` by running `turbo run <task> --dry=json`
10851
10814
  * in `cwd` and digesting the per-package HIT/MISS breakdown.
@@ -10870,7 +10833,8 @@ declare const TurboInspector_base: Context.TagClass<TurboInspector, "@savvy-web/
10870
10833
  * @since 0.7.0
10871
10834
  */
10872
10835
  readonly affected: (cwd: string, base?: string) => Effect.Effect<AffectedResultType, TurboError>;
10873
- }>;
10836
+ }
10837
+ declare const TurboInspector_base: Context.ServiceClass<TurboInspector, "@savvy-web/silk-effects/TurboInspector", TurboInspectorShape>;
10874
10838
  /**
10875
10839
  * Read-only Turborepo inspector. All operations use `--dry` and never execute tasks.
10876
10840
  * Surfaced through the MCP `turbo_inspect` tool.
@@ -10888,17 +10852,18 @@ declare class TurboInspector extends TurboInspector_base {}
10888
10852
  *
10889
10853
  * @remarks
10890
10854
  * Requires {@link ToolDiscovery} to resolve the `turbo` binary, plus
10891
- * `CommandExecutor` and `FileSystem` from `@effect/platform`. Mirrors
10892
- * `ToolDiscoveryLive`: the executor is captured at layer construction and
10893
- * discharged onto each command effect with `Effect.provideService`, keeping
10894
- * the public method effects at `R = never`.
10855
+ * `ChildProcessSpawner` and `FileSystem` from core (provide `NodeServices.layer`
10856
+ * at the app edge) and `Git` from `@effected/git`. Mirrors `ToolDiscoveryLive`:
10857
+ * the spawner is captured at layer construction and discharged onto each command
10858
+ * effect with `Effect.provideService`, keeping the public method effects at
10859
+ * `R = never`.
10895
10860
  *
10896
10861
  * @since 0.7.0
10897
10862
  */
10898
- declare const TurboInspectorLive: Layer.Layer<TurboInspector, never, ToolDiscovery | CommandExecutor.CommandExecutor | FileSystem.FileSystem>;
10863
+ declare const TurboInspectorLive: Layer.Layer<TurboInspector, never, ToolDiscovery | ChildProcessSpawner.ChildProcessSpawner | FileSystem.FileSystem | Git>;
10899
10864
  declare namespace index_d_exports$4 {
10900
- export { AffectedResult, AffectedResultType, CacheDiagnosis, CacheDiagnosisType, DryRunParseError, GlobalHashSummary, GraphNode, MissExplanation, NotATurboRepoError, PackageCacheStatus, TaskGraphResult, TaskGraphResultType, TurboCache, TurboDigest, TurboDryRun, TurboDryRunType, TurboDryTask, TurboDryTaskType, TurboEnvVars, TurboError, TurboExecError, TurboGlobalCacheInputs, TurboInspector, TurboInspectorLive, TurboNotInstalledError };
10865
+ export { AffectedResult, AffectedResultType, CacheDiagnosis, CacheDiagnosisType, DryRunParseError, GlobalHashSummary, GraphNode, MissExplanation, NotATurboRepoError, PackageCacheStatus, TaskGraphResult, TaskGraphResultType, TurboCache, TurboDigest, TurboDryRun, TurboDryRunType, TurboDryTask, TurboDryTaskType, TurboEnvVars, TurboError, TurboExecError, TurboGlobalCacheInputs, TurboInspector, TurboInspectorLive, TurboInspectorShape, TurboNotInstalledError };
10901
10866
  }
10902
10867
  //#endregion
10903
- export { AnalyzedWorkspace, BiomeSchemaSync, BiomeSchemaSyncLive, BiomeSyncError, type BiomeSyncOptions, type BiomeSyncResult, ChangesetConfig, ChangesetConfigError, type ChangesetConfigFile, ChangesetConfigLive, ChangesetConfigReader, ChangesetConfigReaderLive, type ChangesetMode, index_d_exports as Changesets, CheckResult, type CheckResultDefinition, type CommentStyle, index_d_exports$1 as Commitlint, type CommitlintPlugin, type CommitlintUserConfig, ConfigDiscovery, ConfigDiscoveryLive, type ConfigDiscoveryOptions, type ConfigLocation, ConfigNotFoundError, type ConfigSource, index_d_exports$2 as Lint, ManagedSection, ManagedSectionLive, type PromptConfig, type PromptSettings, PublishTargetBindingError, PublishabilityDetectorAdaptiveLive, type PublishablePackage, type RawPackageJson, type RawPublishConfig, type RawPublishTargets, type RawTargetObject, type RawTargetValue, index_d_exports$3 as Repos, ResolutionPolicy, type ResolutionPolicyDefinition, ResolvedTool, type RuleApplicability, type RuleConfigTuple, type RuleSeverity, type RulesConfig, SavvyBaseSection, SavvyHooksSection, SectionBlock, SectionDefinition, SectionDiff, type SectionDiffDefinition, SectionParseError, SectionValidationError, SectionWriteError, ShellSectionDefinition, type SilkChangesetConfigFile, SilkPublishConfig, SilkPublishability, SilkPublishabilityDetectorLive, SilkWorkspaceAnalyzer, SilkWorkspaceAnalyzerLive, SourceRequirement, type SourceRequirementDefinition, SyncResult, type SyncResultDefinition, TagFormatError, TagStrategy, TagStrategyLive, type TagStrategyType, type TargetBinding, type TargetGroupBinding, type TargetsBinding, ToolCommand, ToolDefinition, ToolDiscovery, ToolDiscoveryLive, ToolNotFoundError, ToolResolutionError, ToolSource, ToolVersionMismatchError, index_d_exports$4 as Turbo, VersionExtractor, type VersionExtractorDefinition, VersioningDetectionError, VersioningStrategy, VersioningStrategyLive, type VersioningStrategyResult, type VersioningStrategyType, WorkspaceAnalysis, WorkspaceAnalysisError, buildSchemaUrl, extractSemver, readTargetsBinding, savvyBasePreamble, savvyHooksHygiene, savvyToolSection };
10868
+ export { AnalyzedWorkspace, BiomeSchemaSync, BiomeSchemaSyncLive, type BiomeSchemaSyncShape, BiomeSyncError, type BiomeSyncOptions, type BiomeSyncResult, ChangesetConfig, ChangesetConfigError, type ChangesetConfigFile, ChangesetConfigLive, ChangesetConfigReader, ChangesetConfigReaderLive, type ChangesetConfigReaderShape, type ChangesetConfigShape, type ChangesetMode, index_d_exports as Changesets, CheckResult, type CheckResultDefinition, type CommentStyle, index_d_exports$1 as Commitlint, type CommitlintPlugin, type CommitlintUserConfig, ConfigDiscovery, ConfigDiscoveryLive, type ConfigDiscoveryOptions, type ConfigDiscoveryShape, type ConfigLocation, ConfigNotFoundError, type ConfigSource, index_d_exports$2 as Lint, ManagedSection, ManagedSectionLive, type ManagedSectionShape, type PromptConfig, type PromptSettings, PublishTargetBindingError, PublishabilityDetectorAdaptiveLive, type PublishablePackage, type RawPackageJson, type RawPublishConfig, type RawPublishTargets, type RawTargetObject, type RawTargetValue, index_d_exports$3 as Repos, ResolutionPolicy, type ResolutionPolicyDefinition, ResolvedTool, type RuleApplicability, type RuleConfigTuple, type RuleSeverity, type RulesConfig, SavvyBaseSection, SavvyHooksSection, SectionBlock, SectionDefinition, SectionDiff, type SectionDiffDefinition, SectionParseError, SectionValidationError, SectionWriteError, ShellSectionDefinition, type SilkChangesetConfigFile, SilkPublishConfig, SilkPublishability, SilkPublishabilityDetectorLive, SilkWorkspaceAnalyzer, SilkWorkspaceAnalyzerLive, type SilkWorkspaceAnalyzerShape, SourceRequirement, type SourceRequirementDefinition, SyncResult, type SyncResultDefinition, TagFormatError, TagStrategy, TagStrategyLive, type TagStrategyShape, type TagStrategyType, type TargetBinding, type TargetGroupBinding, type TargetsBinding, ToolCommand, ToolDefinition, ToolDiscovery, ToolDiscoveryLive, type ToolDiscoveryShape, ToolNotFoundError, ToolResolutionError, ToolSource, ToolVersionMismatchError, index_d_exports$4 as Turbo, VersionExtractor, type VersionExtractorDefinition, VersioningDetectionError, VersioningStrategy, VersioningStrategyLive, type VersioningStrategyResult, type VersioningStrategyShape, type VersioningStrategyType, WorkspaceAnalysis, WorkspaceAnalysisError, buildSchemaUrl, extractSemver, readTargetsBinding, savvyBasePreamble, savvyHooksHygiene, savvyToolSection };
10904
10869
  //# sourceMappingURL=index.d.ts.map