SPB Git

spb/autoscholar

Public
1.9 KB · 74 lines typescript
1import { z } from "zod";23/** Research modes supported by the platform. Mixed-mode studies list a primary mode plus secondary modes. */4export const ResearchMode = z.enum([5  "empirical",6  "computational",7  "theoretical",8  "review",9  "experimental",10  "humanities",11]);12export type ResearchMode = z.infer<typeof ResearchMode>;1314export const RESEARCH_MODE_LABELS: Record<ResearchMode, string> = {15  empirical: "Empirical",16  computational: "Computational",17  theoretical: "Theoretical",18  review: "Review",19  experimental: "Experimental",20  humanities: "Humanities",21};2223export const Discipline = z.enum([24  "economics",25  "finance",26  "mathematics",27  "statistics",28  "computer-science",29  "physics",30  "chemistry",31  "biology",32  "medicine",33  "engineering",34  "earth-sciences",35  "social-sciences",36  "psychology",37  "humanities",38  "law",39  "education",40  "interdisciplinary",41]);42export type Discipline = z.infer<typeof Discipline>;4344export const DISCIPLINE_LABELS: Record<Discipline, string> = {45  economics: "Economics",46  finance: "Finance",47  mathematics: "Mathematics",48  statistics: "Statistics",49  "computer-science": "Computer Science",50  physics: "Physics",51  chemistry: "Chemistry",52  biology: "Biology",53  medicine: "Medicine & Health",54  engineering: "Engineering",55  "earth-sciences": "Earth & Environmental Sciences",56  "social-sciences": "Social Sciences",57  psychology: "Psychology",58  humanities: "Humanities",59  law: "Law",60  education: "Education",61  interdisciplinary: "Interdisciplinary",62};6364/** Research-mode profile: what evidence the artifact contract requires before publication. */65export const ModeProfile = z.object({66  mode: ResearchMode,67  requiredArtifacts: z.array(z.string()),68  requiredEvidence: z.array(z.string()),69  autoPublishAllowed: z.boolean(),70  humanReviewRequired: z.boolean(),71  description: z.string(),72});73export type ModeProfile = z.infer<typeof ModeProfile>;74
Files · 4ee0eb55785162e74bf5de92a13ac2a30a1c4528
Menu

Theme