@vibe-validate/config 0.12.1 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/schema.d.ts +65 -0
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.js +26 -0
- package/package.json +1 -1
- package/vibe-validate.schema.json +25 -0
package/dist/schema.d.ts
CHANGED
|
@@ -369,6 +369,36 @@ export declare const HooksConfigSchema: z.ZodObject<{
|
|
|
369
369
|
} | undefined;
|
|
370
370
|
}>;
|
|
371
371
|
export type HooksConfig = z.infer<typeof HooksConfigSchema>;
|
|
372
|
+
/**
|
|
373
|
+
* Locking Configuration Schema
|
|
374
|
+
*
|
|
375
|
+
* Controls concurrent validation behavior and lock scoping.
|
|
376
|
+
*/
|
|
377
|
+
export declare const LockingConfigSchema: z.ZodObject<{
|
|
378
|
+
/** Enable locking to prevent concurrent validations (default: true) */
|
|
379
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
380
|
+
/**
|
|
381
|
+
* Concurrency scope for lock files (default: 'directory')
|
|
382
|
+
* - 'directory': Each working directory has its own lock (allows parallel worktrees)
|
|
383
|
+
* - 'project': All directories for the same project share a lock (prevents port/DB conflicts)
|
|
384
|
+
*/
|
|
385
|
+
concurrencyScope: z.ZodDefault<z.ZodEnum<["directory", "project"]>>;
|
|
386
|
+
/**
|
|
387
|
+
* Project identifier for project-scoped locking (optional)
|
|
388
|
+
* Auto-detected from git remote URL or package.json if not specified.
|
|
389
|
+
* Required when concurrencyScope is 'project' and cannot be auto-detected.
|
|
390
|
+
*/
|
|
391
|
+
projectId: z.ZodOptional<z.ZodString>;
|
|
392
|
+
}, "strict", z.ZodTypeAny, {
|
|
393
|
+
enabled: boolean;
|
|
394
|
+
concurrencyScope: "directory" | "project";
|
|
395
|
+
projectId?: string | undefined;
|
|
396
|
+
}, {
|
|
397
|
+
enabled?: boolean | undefined;
|
|
398
|
+
concurrencyScope?: "directory" | "project" | undefined;
|
|
399
|
+
projectId?: string | undefined;
|
|
400
|
+
}>;
|
|
401
|
+
export type LockingConfig = z.infer<typeof LockingConfigSchema>;
|
|
372
402
|
/**
|
|
373
403
|
* Full Configuration Schema
|
|
374
404
|
*
|
|
@@ -589,6 +619,31 @@ export declare const VibeValidateConfigSchema: z.ZodObject<{
|
|
|
589
619
|
} | undefined;
|
|
590
620
|
} | undefined;
|
|
591
621
|
}>>>;
|
|
622
|
+
/** Locking configuration (concurrency control) */
|
|
623
|
+
locking: z.ZodDefault<z.ZodOptional<z.ZodObject<{
|
|
624
|
+
/** Enable locking to prevent concurrent validations (default: true) */
|
|
625
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
626
|
+
/**
|
|
627
|
+
* Concurrency scope for lock files (default: 'directory')
|
|
628
|
+
* - 'directory': Each working directory has its own lock (allows parallel worktrees)
|
|
629
|
+
* - 'project': All directories for the same project share a lock (prevents port/DB conflicts)
|
|
630
|
+
*/
|
|
631
|
+
concurrencyScope: z.ZodDefault<z.ZodEnum<["directory", "project"]>>;
|
|
632
|
+
/**
|
|
633
|
+
* Project identifier for project-scoped locking (optional)
|
|
634
|
+
* Auto-detected from git remote URL or package.json if not specified.
|
|
635
|
+
* Required when concurrencyScope is 'project' and cannot be auto-detected.
|
|
636
|
+
*/
|
|
637
|
+
projectId: z.ZodOptional<z.ZodString>;
|
|
638
|
+
}, "strict", z.ZodTypeAny, {
|
|
639
|
+
enabled: boolean;
|
|
640
|
+
concurrencyScope: "directory" | "project";
|
|
641
|
+
projectId?: string | undefined;
|
|
642
|
+
}, {
|
|
643
|
+
enabled?: boolean | undefined;
|
|
644
|
+
concurrencyScope?: "directory" | "project" | undefined;
|
|
645
|
+
projectId?: string | undefined;
|
|
646
|
+
}>>>;
|
|
592
647
|
/**
|
|
593
648
|
* Developer feedback for continuous quality improvement (optional, default: false)
|
|
594
649
|
*
|
|
@@ -634,6 +689,11 @@ export declare const VibeValidateConfigSchema: z.ZodObject<{
|
|
|
634
689
|
} | undefined;
|
|
635
690
|
};
|
|
636
691
|
};
|
|
692
|
+
locking: {
|
|
693
|
+
enabled: boolean;
|
|
694
|
+
concurrencyScope: "directory" | "project";
|
|
695
|
+
projectId?: string | undefined;
|
|
696
|
+
};
|
|
637
697
|
developerFeedback: boolean;
|
|
638
698
|
ci?: {
|
|
639
699
|
failFast?: boolean | undefined;
|
|
@@ -682,6 +742,11 @@ export declare const VibeValidateConfigSchema: z.ZodObject<{
|
|
|
682
742
|
} | undefined;
|
|
683
743
|
} | undefined;
|
|
684
744
|
} | undefined;
|
|
745
|
+
locking?: {
|
|
746
|
+
enabled?: boolean | undefined;
|
|
747
|
+
concurrencyScope?: "directory" | "project" | undefined;
|
|
748
|
+
projectId?: string | undefined;
|
|
749
|
+
} | undefined;
|
|
685
750
|
developerFeedback?: boolean | undefined;
|
|
686
751
|
}>;
|
|
687
752
|
export type VibeValidateConfig = z.infer<typeof VibeValidateConfigSchema>;
|
package/dist/schema.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;;;GAIG;AACH,eAAO,MAAM,oBAAoB;IAC/B,kEAAkE;;IAGlE,qDAAqD;;IAGrD,uEAAuE;;IAGvE,+EAA+E;;IAG/E,qDAAqD;;IAGrD,oDAAoD;;IAGpD,wEAAwE;;;;;;;;;;;;;;;;;;EAE/D,CAAC;AAEZ,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB;IAChC,wDAAwD;;IAGxD,iDAAiD;;IAGjD,qCAAqC;;QArCrC,kEAAkE;;QAGlE,qDAAqD;;QAGrD,uEAAuE;;QAGvE,+EAA+E;;QAG/E,qDAAqD;;QAGrD,oDAAoD;;QAGpD,wEAAwE;;;;;;;;;;;;;;;;;;;IAsBxE,qFAAqF;;IAGrF,gEAAgE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEvD,CAAC;AAGZ,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE;;GAEG;AACH,eAAO,MAAM,sBAAsB;IACjC,mCAAmC;;QAvBnC,wDAAwD;;QAGxD,iDAAiD;;QAGjD,qCAAqC;;YArCrC,kEAAkE;;YAGlE,qDAAqD;;YAGrD,uEAAuE;;YAGvE,+EAA+E;;YAG/E,qDAAqD;;YAGrD,oDAAoD;;YAGpD,wEAAwE;;;;;;;;;;;;;;;;;;;QAsBxE,qFAAqF;;QAGrF,gEAAgE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAchE,uFAAuF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE9E,CAAC;AAEZ,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE;;GAEG;AACH,eAAO,MAAM,eAAe;IAC1B,uCAAuC;;IAGvC,oCAAoC;;IAGpC,6CAA6C;;IAG7C,sDAAsD;;;;;;;;;;;;EAE7C,CAAC;AAEZ,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD;;GAEG;AACH,eAAO,MAAM,cAAc;IACzB,6DAA6D;;IAG7D,mEAAmE;;IAGnE,oDAAoD;;IAGpD,iDAAiD;;;;;;;;;;;;EAExC,CAAC;AAEZ,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAEtD;;GAEG;AACH,eAAO,MAAM,oBAAoB;IAC/B,2DAA2D;;IAG3D,iEAAiE;;;;;;;;;;;;;;EAclE,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAExE;;GAEG;AACH,eAAO,MAAM,iBAAiB;IAC5B,oCAAoC;;QAElC,sDAAsD;;QAGtD,0EAA0E;;QAG1E,+CAA+C;;YAjCjD,2DAA2D;;YAG3D,iEAAiE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoCxD,CAAC;AAEZ,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D;;;;GAIG;AACH,eAAO,MAAM,wBAAwB;IACnC,+BAA+B;;
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
|
package/dist/schema.js
CHANGED
|
@@ -115,6 +115,27 @@ export const HooksConfigSchema = z.object({
|
|
|
115
115
|
command: 'npx vibe-validate pre-commit',
|
|
116
116
|
}),
|
|
117
117
|
}).strict();
|
|
118
|
+
/**
|
|
119
|
+
* Locking Configuration Schema
|
|
120
|
+
*
|
|
121
|
+
* Controls concurrent validation behavior and lock scoping.
|
|
122
|
+
*/
|
|
123
|
+
export const LockingConfigSchema = z.object({
|
|
124
|
+
/** Enable locking to prevent concurrent validations (default: true) */
|
|
125
|
+
enabled: z.boolean().default(true),
|
|
126
|
+
/**
|
|
127
|
+
* Concurrency scope for lock files (default: 'directory')
|
|
128
|
+
* - 'directory': Each working directory has its own lock (allows parallel worktrees)
|
|
129
|
+
* - 'project': All directories for the same project share a lock (prevents port/DB conflicts)
|
|
130
|
+
*/
|
|
131
|
+
concurrencyScope: z.enum(['directory', 'project']).default('directory'),
|
|
132
|
+
/**
|
|
133
|
+
* Project identifier for project-scoped locking (optional)
|
|
134
|
+
* Auto-detected from git remote URL or package.json if not specified.
|
|
135
|
+
* Required when concurrencyScope is 'project' and cannot be auto-detected.
|
|
136
|
+
*/
|
|
137
|
+
projectId: z.string().optional(),
|
|
138
|
+
}).strict();
|
|
118
139
|
/**
|
|
119
140
|
* Full Configuration Schema
|
|
120
141
|
*
|
|
@@ -139,6 +160,11 @@ export const VibeValidateConfigSchema = z.object({
|
|
|
139
160
|
command: 'npx vibe-validate pre-commit',
|
|
140
161
|
},
|
|
141
162
|
}),
|
|
163
|
+
/** Locking configuration (concurrency control) */
|
|
164
|
+
locking: LockingConfigSchema.optional().default({
|
|
165
|
+
enabled: true,
|
|
166
|
+
concurrencyScope: 'directory',
|
|
167
|
+
}),
|
|
142
168
|
/**
|
|
143
169
|
* Developer feedback for continuous quality improvement (optional, default: false)
|
|
144
170
|
*
|
package/package.json
CHANGED
|
@@ -185,6 +185,31 @@
|
|
|
185
185
|
}
|
|
186
186
|
}
|
|
187
187
|
},
|
|
188
|
+
"locking": {
|
|
189
|
+
"type": "object",
|
|
190
|
+
"properties": {
|
|
191
|
+
"enabled": {
|
|
192
|
+
"type": "boolean",
|
|
193
|
+
"default": true
|
|
194
|
+
},
|
|
195
|
+
"concurrencyScope": {
|
|
196
|
+
"type": "string",
|
|
197
|
+
"enum": [
|
|
198
|
+
"directory",
|
|
199
|
+
"project"
|
|
200
|
+
],
|
|
201
|
+
"default": "directory"
|
|
202
|
+
},
|
|
203
|
+
"projectId": {
|
|
204
|
+
"type": "string"
|
|
205
|
+
}
|
|
206
|
+
},
|
|
207
|
+
"additionalProperties": false,
|
|
208
|
+
"default": {
|
|
209
|
+
"enabled": true,
|
|
210
|
+
"concurrencyScope": "directory"
|
|
211
|
+
}
|
|
212
|
+
},
|
|
188
213
|
"developerFeedback": {
|
|
189
214
|
"type": "boolean",
|
|
190
215
|
"default": false
|