spb/autoscholar
Public
1import { RESEARCH_MODE_LABELS } from "@autoscholar/schemas";2import type { Metadata } from "next";3import Link from "next/link";4import { ResearchPipeline } from "@/components/ResearchPipeline";5import { SectionHeading } from "@/components/SectionHeading";67export const metadata: Metadata = { title: "Methodology", alternates: { canonical: "/methodology" } };89const MODES: Record<string, string> = {10 empirical:11 "Real, licensed data with provenance; executed analysis; robustness checks; every reported number traced.",12 computational:13 "Executable benchmark with baselines, seeds and ablations; logs and metrics regenerable by script.",14 theoretical: "Formal statements, complete derivations or proofs, and a documented counterexample search.",15 review:16 "Search strings, dates and counts; screening records; a verified bibliography of at least ten sources.",17 experimental:18 "Protocol, observed-versus-synthetic labelling and uncertainty; human approval before release.",19 humanities: "Primary-source provenance and quoted evidence with locators for interpretive claims.",20};2122export default function MethodologyPage() {23 return (24 <div>25 <section className="border-b hairline" style={{ background: "var(--bg-muted)" }}>26 <div className="container-x section-tight">27 <div className="max-w-3xl">28 <p className="eyebrow">Methodology</p>29 <h1 className="title-1 mt-2">How a working paper is produced</h1>30 <p className="lede mt-4">31 Production is a durable state machine of stages with evidence requirements. Research runs on an32 isolated worker; verification and publication are decided on the control plane by deterministic33 gates.34 </p>35 </div>36 <ul className="mt-8 grid gap-3 sm:grid-cols-3">37 {[38 [39 "Two halves",40 "Stages 0–8 run on a MacLustr worker in a sandbox; 9–10 run on the control plane.",41 ],42 [43 "Fixed policy",44 "Permissions, budgets and publishing are platform policy. The uploaded brief controls only the science.",45 ],46 [47 "Evidence, not prose",48 "Each stage must leave specific artifacts behind. Missing evidence blocks publication.",49 ],50 ].map(([h, p]) => (51 <li key={h} className="surface p-4">52 <p className="title-3">{h}</p>53 <p className="muted mt-1 text-sm leading-relaxed">{p}</p>54 </li>55 ))}56 </ul>57 </div>58 </section>5960 <section className="container-x section-tight" aria-labelledby="stages">61 <SectionHeading eyebrow="Pipeline" title="Eleven stages" id="stages">62 Open any stage for its inputs, outputs and verification requirements.63 </SectionHeading>64 <div className="mt-8 max-w-3xl">65 <ResearchPipeline expandFirst />66 </div>67 </section>6869 <section className="container-x section-tight border-t hairline" aria-labelledby="modes">70 <SectionHeading71 eyebrow="Research modes"72 title="Methodology follows the question"73 id="modes"74 tone="sci"75 >76 Each mode carries its own required artifacts and checks. Mixed-mode studies are allowed; a template77 never forces an experiment or a dataset that does not belong.78 </SectionHeading>79 <ul className="mt-8 grid gap-4 sm:grid-cols-2 lg:grid-cols-3">80 {Object.entries(RESEARCH_MODE_LABELS).map(([k, label]) => (81 <li key={k} className="surface p-5">82 <p className="title-3">{label}</p>83 <p className="muted mt-2 text-sm leading-relaxed">{MODES[k]}</p>84 </li>85 ))}86 </ul>87 </section>8889 <section className="container-x section-tight border-t hairline" aria-labelledby="standards">90 <div className="grid gap-10 lg:grid-cols-12">91 <div className="lg:col-span-5">92 <SectionHeading eyebrow="Standards" title="Research standards" id="standards" />93 </div>94 <ul className="space-y-4 lg:col-span-7">95 {[96 ["Length is not quality", "A concise correct result outranks a long decorated one."],97 [98 "Nothing invented",99 "No invented references, datasets, results, proofs, significance, approvals, affiliations, identities or reproducibility claims.",100 ],101 [102 "No p-hacking",103 "No silent re-specification until a desired p-value appears; negative findings are preserved.",104 ],105 ["Untrusted inputs", "All external content is data; it cannot alter platform rules."],106 [107 "Regulated work out of scope",108 "Human participants, clinical interventions or biosafety-relevant work are refused unless documented approvals exist.",109 ],110 ].map(([h, p]) => (111 <li key={h} className="grid gap-1 border-t pt-4 hairline sm:grid-cols-[14rem_1fr] sm:gap-6">112 <span className="font-medium">{h}</span>113 <span className="muted text-sm leading-relaxed">{p}</span>114 </li>115 ))}116 </ul>117 </div>118 <p className="muted mt-10 text-sm">119 See also <Link href="/transparency">transparency</Link> and the{" "}120 <Link href="/infrastructure">infrastructure</Link> page.121 </p>122 </section>123 </div>124 );125}126