Add referenced last30days catalog entry

This commit is contained in:
Dotta
2026-06-04 20:01:25 +00:00
parent 1227bb8ead
commit bee2b25f5d
17 changed files with 1276 additions and 49 deletions
+4
View File
@@ -315,6 +315,8 @@ export type {
CatalogSkillKind,
CatalogSkillFileKind,
CatalogSkillFile,
CatalogSkillGitHubSource,
CatalogSkillSource,
CatalogSkill,
CatalogSkillListQuery,
CatalogSkillFileDetail,
@@ -1099,6 +1101,8 @@ export {
companySkillFileUpdateSchema,
catalogSkillKindSchema,
catalogSkillFileSchema,
catalogSkillGitHubSourceSchema,
catalogSkillSourceSchema,
catalogSkillSchema,
catalogSkillListQuerySchema,
catalogSkillFileDetailSchema,
@@ -214,6 +214,19 @@ export interface CatalogSkillFile {
sha256: string;
}
export interface CatalogSkillGitHubSource {
type: "github";
hostname: string;
owner: string;
repo: string;
ref: string;
commit: string;
path: string;
url: string;
}
export type CatalogSkillSource = CatalogSkillGitHubSource;
export interface CatalogSkill {
id: string;
key: string;
@@ -232,6 +245,7 @@ export interface CatalogSkill {
tags: string[];
files: CatalogSkillFile[];
contentHash: string;
source?: CatalogSkillSource;
packageName?: string;
packageVersion?: string;
}
+2
View File
@@ -70,6 +70,8 @@ export type {
CatalogSkillKind,
CatalogSkillFileKind,
CatalogSkillFile,
CatalogSkillGitHubSource,
CatalogSkillSource,
CatalogSkill,
CatalogSkillListQuery,
CatalogSkillFileDetail,
@@ -28,6 +28,16 @@ const catalogSkill = {
tags: ["review"],
files: [{ path: "SKILL.md", kind: "skill", sizeBytes: 8, sha256: "abc" }],
contentHash: "sha256:abc",
source: {
type: "github",
hostname: "github.com",
owner: "example",
repo: "review-skill",
ref: "v1.0.0",
commit: "0123456789abcdef0123456789abcdef01234567",
path: "skills/review",
url: "https://github.com/example/review-skill/tree/v1.0.0/skills/review",
},
};
const companySkill = {
@@ -107,6 +117,7 @@ describe("company skill catalog validators", () => {
},
catalogSkill: {
id: catalogSkill.id,
source: catalogSkill.source,
},
});
});
@@ -182,6 +182,19 @@ export const catalogSkillFileSchema = z.object({
sha256: z.string().min(1),
});
export const catalogSkillGitHubSourceSchema = z.object({
type: z.literal("github"),
hostname: z.string().min(1),
owner: z.string().min(1),
repo: z.string().min(1),
ref: z.string().min(1),
commit: z.string().regex(/^[0-9a-f]{40}$/i),
path: z.string(),
url: z.string().url(),
});
export const catalogSkillSourceSchema = catalogSkillGitHubSourceSchema;
export const catalogSkillSchema = z.object({
id: z.string().min(1),
key: z.string().min(1),
@@ -200,6 +213,7 @@ export const catalogSkillSchema = z.object({
tags: z.array(z.string()),
files: z.array(catalogSkillFileSchema),
contentHash: z.string().min(1),
source: catalogSkillSourceSchema.optional(),
packageName: z.string().min(1).optional(),
packageVersion: z.string().min(1).optional(),
});
+2
View File
@@ -79,6 +79,8 @@ export {
companySkillFileUpdateSchema,
catalogSkillKindSchema,
catalogSkillFileSchema,
catalogSkillGitHubSourceSchema,
catalogSkillSourceSchema,
catalogSkillSchema,
catalogSkillListQuerySchema,
catalogSkillFileDetailSchema,