[{"data":1,"prerenderedAt":520},["ShallowReactive",2],{"docs-navigation:en":3,"content-page:docs:U6G0RQ0GFDLw49bTz1j87Co0eIirOUdDyRYUiiRs1dM":223,"content-page-surround:docs:U6G0RQ0GFDLw49bTz1j87Co0eIirOUdDyRYUiiRs1dM":508},[4,25,83,141,168],{"title":5,"id":6,"canonicalKey":7,"locale":8,"draft":9,"icon":10,"path":11,"children":12},"Lupinum OSS handbook","content:docs:1.get-started:1.index.md","1","en",false,"lucide:book-open","\u002Fdocs\u002Fget-started",[13,19],{"title":14,"id":15,"canonicalKey":16,"locale":8,"draft":9,"icon":17,"path":18},"Choose a repository profile","content:docs:1.get-started:2.choose-a-profile.md","1\u002F2","lucide:git-branch","\u002Fdocs\u002Fget-started\u002Fchoose-a-profile",{"title":20,"id":21,"canonicalKey":22,"locale":8,"draft":9,"icon":23,"path":24},"New project path","content:docs:1.get-started:3.new-project-path.md","1\u002F3","lucide:route","\u002Fdocs\u002Fget-started\u002Fnew-project-path",{"title":26,"page":9,"canonicalKey":27,"locale":8,"children":28},"Standards","2",[29,35,41,47,53,59,65,71,77],{"title":30,"id":31,"canonicalKey":32,"locale":8,"draft":9,"icon":33,"path":34},"Repository structure","content:docs:2.standards:1.repository-structure.md","2\u002F1","lucide:folders","\u002Fdocs\u002Fstandards\u002Frepository-structure",{"title":36,"id":37,"canonicalKey":38,"locale":8,"draft":9,"icon":39,"path":40},"Documentation ownership","content:docs:2.standards:2.documentation-ownership.md","2\u002F2","lucide:files","\u002Fdocs\u002Fstandards\u002Fdocumentation-ownership",{"title":42,"id":43,"canonicalKey":44,"locale":8,"draft":9,"icon":45,"path":46},"GitHub and contributions","content:docs:2.standards:3.github-and-contributions.md","2\u002F3","lucide:github","\u002Fdocs\u002Fstandards\u002Fgithub-and-contributions",{"title":48,"id":49,"canonicalKey":50,"locale":8,"draft":9,"icon":51,"path":52},"Dependency policy","content:docs:2.standards:4.dependencies.md","2\u002F4","lucide:package-search","\u002Fdocs\u002Fstandards\u002Fdependencies",{"title":54,"id":55,"canonicalKey":56,"locale":8,"draft":9,"icon":57,"path":58},"Release security","content:docs:2.standards:5.release-security.md","2\u002F5","lucide:shield-check","\u002Fdocs\u002Fstandards\u002Frelease-security",{"title":60,"id":61,"canonicalKey":62,"locale":8,"draft":9,"icon":63,"path":64},"Package previews","content:docs:2.standards:6.package-previews.md","2\u002F6","lucide:package-open","\u002Fdocs\u002Fstandards\u002Fpackage-previews",{"title":66,"id":67,"canonicalKey":68,"locale":8,"draft":9,"icon":69,"path":70},"Documentation sites","content:docs:2.standards:7.documentation-sites.md","2\u002F7","lucide:panel-top","\u002Fdocs\u002Fstandards\u002Fdocumentation-sites",{"title":72,"id":73,"canonicalKey":74,"locale":8,"draft":9,"icon":75,"path":76},"Analytics and feedback","content:docs:2.standards:8.analytics-and-feedback.md","2\u002F8","lucide:chart-no-axes-combined","\u002Fdocs\u002Fstandards\u002Fanalytics-and-feedback",{"title":78,"id":79,"canonicalKey":80,"locale":8,"draft":9,"icon":81,"path":82},"Security and agents","content:docs:2.standards:9.security-and-agents.md","2\u002F9","lucide:bot-message-square","\u002Fdocs\u002Fstandards\u002Fsecurity-and-agents",{"title":84,"page":9,"canonicalKey":85,"locale":8,"children":86},"Procedures","3",[87,93,99,105,111,117,123,129,135],{"title":88,"id":89,"canonicalKey":90,"locale":8,"draft":9,"icon":91,"path":92},"Create a repository","content:docs:3.procedures:1.create-a-repository.md","3\u002F1","lucide:folder-plus","\u002Fdocs\u002Fprocedures\u002Fcreate-a-repository",{"title":94,"id":95,"canonicalKey":96,"locale":8,"draft":9,"icon":97,"path":98},"First npm release","content:docs:3.procedures:2.first-npm-release.md","3\u002F2","lucide:package-plus","\u002Fdocs\u002Fprocedures\u002Ffirst-npm-release",{"title":100,"id":101,"canonicalKey":102,"locale":8,"draft":9,"icon":103,"path":104},"Normal release","content:docs:3.procedures:3.normal-release.md","3\u002F3","lucide:package-check","\u002Fdocs\u002Fprocedures\u002Fnormal-release",{"title":106,"id":107,"canonicalKey":108,"locale":8,"draft":9,"icon":109,"path":110},"Prerelease","content:docs:3.procedures:4.prerelease.md","3\u002F4","lucide:flask-conical","\u002Fdocs\u002Fprocedures\u002Fprerelease",{"title":112,"id":113,"canonicalKey":114,"locale":8,"draft":9,"icon":115,"path":116},"Hotfix","content:docs:3.procedures:5.hotfix.md","3\u002F5","lucide:ambulance","\u002Fdocs\u002Fprocedures\u002Fhotfix",{"title":118,"id":119,"canonicalKey":120,"locale":8,"draft":9,"icon":121,"path":122},"Rollback","content:docs:3.procedures:6.rollback.md","3\u002F6","lucide:undo-2","\u002Fdocs\u002Fprocedures\u002Frollback",{"title":124,"id":125,"canonicalKey":126,"locale":8,"draft":9,"icon":127,"path":128},"Dependency update","content:docs:3.procedures:7.dependency-update.md","3\u002F7","lucide:refresh-cw","\u002Fdocs\u002Fprocedures\u002Fdependency-update",{"title":130,"id":131,"canonicalKey":132,"locale":8,"draft":9,"icon":133,"path":134},"Documentation change","content:docs:3.procedures:8.documentation-change.md","3\u002F8","lucide:file-pen-line","\u002Fdocs\u002Fprocedures\u002Fdocumentation-change",{"title":136,"id":137,"canonicalKey":138,"locale":8,"draft":9,"icon":139,"path":140},"Credential incident","content:docs:3.procedures:9.credential-incident.md","3\u002F9","lucide:key-round","\u002Fdocs\u002Fprocedures\u002Fcredential-incident",{"title":142,"page":9,"canonicalKey":143,"locale":8,"children":144},"Checklists","4",[145,151,156,162],{"title":146,"id":147,"canonicalKey":148,"locale":8,"draft":9,"icon":149,"path":150},"Repository launch checklist","content:docs:4.checklists:1.repository-launch.md","4\u002F1","lucide:list-checks","\u002Fdocs\u002Fchecklists\u002Frepository-launch",{"title":152,"id":153,"canonicalKey":154,"locale":8,"draft":9,"icon":97,"path":155},"First release checklist","content:docs:4.checklists:2.first-release.md","4\u002F2","\u002Fdocs\u002Fchecklists\u002Ffirst-release",{"title":157,"id":158,"canonicalKey":159,"locale":8,"draft":9,"icon":160,"path":161},"Production acceptance checklist","content:docs:4.checklists:3.production-acceptance.md","4\u002F3","lucide:monitor-check","\u002Fdocs\u002Fchecklists\u002Fproduction-acceptance",{"title":163,"id":164,"canonicalKey":165,"locale":8,"draft":9,"icon":166,"path":167},"Quarterly audit checklist","content:docs:4.checklists:4.quarterly-audit.md","4\u002F4","lucide:calendar-check","\u002Fdocs\u002Fchecklists\u002Fquarterly-audit",{"title":169,"id":170,"canonicalKey":171,"locale":8,"draft":9,"icon":172,"path":173,"children":174},"Troubleshooting","content:docs:5.troubleshooting:1.index.md","5","lucide:wrench","\u002Fdocs\u002Ftroubleshooting",[175,181,187,193,199,205,211,217],{"title":176,"id":177,"canonicalKey":178,"locale":8,"draft":9,"icon":179,"path":180},"npm trusted publishing","content:docs:5.troubleshooting:2.npm-trusted-publishing.md","5\u002F2","lucide:shield-alert","\u002Fdocs\u002Ftroubleshooting\u002Fnpm-trusted-publishing",{"title":182,"id":183,"canonicalKey":184,"locale":8,"draft":9,"icon":185,"path":186},"GitHub Actions","content:docs:5.troubleshooting:3.github-actions.md","5\u002F3","lucide:workflow","\u002Fdocs\u002Ftroubleshooting\u002Fgithub-actions",{"title":188,"id":189,"canonicalKey":190,"locale":8,"draft":9,"icon":191,"path":192},"GitHub Action SHA errors","content:docs:5.troubleshooting:4.action-sha-errors.md","5\u002F4","lucide:git-commit-horizontal","\u002Fdocs\u002Ftroubleshooting\u002Faction-sha-errors",{"title":194,"id":195,"canonicalKey":196,"locale":8,"draft":9,"icon":197,"path":198},"Dependency quarantine","content:docs:5.troubleshooting:5.dependency-quarantine.md","5\u002F5","lucide:timer","\u002Fdocs\u002Ftroubleshooting\u002Fdependency-quarantine",{"title":200,"id":201,"canonicalKey":202,"locale":8,"draft":9,"icon":203,"path":204},"Vercel deployment","content:docs:5.troubleshooting:6.vercel.md","5\u002F6","lucide:triangle","\u002Fdocs\u002Ftroubleshooting\u002Fvercel",{"title":206,"id":207,"canonicalKey":208,"locale":8,"draft":9,"icon":209,"path":210},"Plausible analytics","content:docs:5.troubleshooting:7.plausible.md","5\u002F7","lucide:chart-no-axes-column-increasing","\u002Fdocs\u002Ftroubleshooting\u002Fplausible",{"title":212,"id":213,"canonicalKey":214,"locale":8,"draft":9,"icon":215,"path":216},"Package preview failures","content:docs:5.troubleshooting:8.package-previews.md","5\u002F8","lucide:package-x","\u002Fdocs\u002Ftroubleshooting\u002Fpackage-previews",{"title":218,"id":219,"canonicalKey":220,"locale":8,"draft":9,"icon":221,"path":222},"GitHub CLI authentication","content:docs:5.troubleshooting:9.github-cli-authentication.md","5\u002F9","lucide:terminal","\u002Fdocs\u002Ftroubleshooting\u002Fgithub-cli-authentication",{"title":163,"description":224,"icon":166,"body":225,"type":496,"id":164,"canonicalKey":165,"draft":9,"partial":9,"locale":8,"collection":440,"navigationFile":9,"file":497,"route":503,"resolution":505},"Check repository files and external controls before they drift.",{"type":226,"children":227,"toc":487},"root",[228,236,243,294,300,343,349,419,425,482],{"type":229,"tag":230,"props":231,"children":232},"element","p",{},[233],{"type":234,"value":235},"text","Run this audit every quarter and before a major release.",{"type":229,"tag":237,"props":238,"children":240},"h2",{"id":239},"source-control",[241],{"type":234,"value":242},"Source control",{"type":229,"tag":244,"props":245,"children":247},"ul",{"class":246},"contains-task-list",[248,262,270,278,286],{"type":229,"tag":249,"props":250,"children":252},"li",{"class":251},"task-list-item",[253,260],{"type":229,"tag":254,"props":255,"children":259},"input",{"class":256,"type":257,"disabled":258},"task-list-item-checkbox","checkbox",true,[],{"type":234,"value":261}," Local instructions match the current architecture and commands.",{"type":229,"tag":249,"props":263,"children":264},{"class":251},[265,268],{"type":229,"tag":254,"props":266,"children":267},{"class":256,"type":257,"disabled":258},[],{"type":234,"value":269}," No obsolete migration, compatibility path, package name, or domain remains.",{"type":229,"tag":249,"props":271,"children":272},{"class":251},[273,276],{"type":229,"tag":254,"props":274,"children":275},{"class":256,"type":257,"disabled":258},[],{"type":234,"value":277}," Required workflows use valid full action SHAs and minimum permissions.",{"type":229,"tag":249,"props":279,"children":280},{"class":251},[281,284],{"type":229,"tag":254,"props":282,"children":283},{"class":256,"type":257,"disabled":258},[],{"type":234,"value":285}," Checkout does not persist credentials.",{"type":229,"tag":249,"props":287,"children":288},{"class":251},[289,292],{"type":229,"tag":254,"props":290,"children":291},{"class":256,"type":257,"disabled":258},[],{"type":234,"value":293}," Issue forms, PR template, security path, and CodeRabbit still work.",{"type":229,"tag":237,"props":295,"children":297},{"id":296},"dependencies-and-supply-chain",[298],{"type":234,"value":299},"Dependencies and supply chain",{"type":229,"tag":244,"props":301,"children":302},{"class":246},[303,311,319,327,335],{"type":229,"tag":249,"props":304,"children":305},{"class":251},[306,309],{"type":229,"tag":254,"props":307,"children":308},{"class":256,"type":257,"disabled":258},[],{"type":234,"value":310}," The 24-hour quarantine is explicit.",{"type":229,"tag":249,"props":312,"children":313},{"class":251},[314,317],{"type":229,"tag":254,"props":315,"children":316},{"class":256,"type":257,"disabled":258},[],{"type":234,"value":318}," Every quarantine exception is exact, justified, and not expired.",{"type":229,"tag":249,"props":320,"children":321},{"class":251},[322,325],{"type":229,"tag":254,"props":323,"children":324},{"class":256,"type":257,"disabled":258},[],{"type":234,"value":326}," Renovate is active and security alerts are reviewed.",{"type":229,"tag":249,"props":328,"children":329},{"class":251},[330,333],{"type":229,"tag":254,"props":331,"children":332},{"class":256,"type":257,"disabled":258},[],{"type":234,"value":334}," Full and production audits pass.",{"type":229,"tag":249,"props":336,"children":337},{"class":251},[338,341],{"type":229,"tag":254,"props":339,"children":340},{"class":256,"type":257,"disabled":258},[],{"type":234,"value":342}," Changelogen and the package manager are pinned as required.",{"type":229,"tag":237,"props":344,"children":346},{"id":345},"npm-and-releases",[347],{"type":234,"value":348},"npm and releases",{"type":229,"tag":244,"props":350,"children":351},{"class":246},[352,360,383,403,411],{"type":229,"tag":249,"props":353,"children":354},{"class":251},[355,358],{"type":229,"tag":254,"props":356,"children":357},{"class":256,"type":257,"disabled":258},[],{"type":234,"value":359}," Every public package has the expected dist-tags and provenance on recent releases.",{"type":229,"tag":249,"props":361,"children":362},{"class":251},[363,366,368,374,376,381],{"type":229,"tag":254,"props":364,"children":365},{"class":256,"type":257,"disabled":258},[],{"type":234,"value":367}," Every trust record targets the current repository, ",{"type":229,"tag":369,"props":370,"children":371},"code",{},[372],{"type":234,"value":373},"publish.yml",{"type":234,"value":375},", and ",{"type":229,"tag":369,"props":377,"children":378},{},[379],{"type":234,"value":380},"npm",{"type":234,"value":382},".",{"type":229,"tag":249,"props":384,"children":385},{"class":251},[386,389,391,395,397,402],{"type":229,"tag":254,"props":387,"children":388},{"class":256,"type":257,"disabled":258},[],{"type":234,"value":390}," The ",{"type":229,"tag":369,"props":392,"children":393},{},[394],{"type":234,"value":380},{"type":234,"value":396}," environment still requires review and only permits ",{"type":229,"tag":369,"props":398,"children":399},{},[400],{"type":234,"value":401},"main",{"type":234,"value":382},{"type":229,"tag":249,"props":404,"children":405},{"class":251},[406,409],{"type":229,"tag":254,"props":407,"children":408},{"class":256,"type":257,"disabled":258},[],{"type":234,"value":410}," No npm token or duplicate publication path exists.",{"type":229,"tag":249,"props":412,"children":413},{"class":251},[414,417],{"type":229,"tag":254,"props":415,"children":416},{"class":256,"type":257,"disabled":258},[],{"type":234,"value":418}," Git tags, GitHub releases, changelog versions, and npm versions agree.",{"type":229,"tag":237,"props":420,"children":422},{"id":421},"production-documentation",[423],{"type":234,"value":424},"Production documentation",{"type":229,"tag":244,"props":426,"children":427},{"class":246},[428,443,451,459,474],{"type":229,"tag":249,"props":429,"children":430},{"class":251},[431,434,436,441],{"type":229,"tag":254,"props":432,"children":433},{"class":256,"type":257,"disabled":258},[],{"type":234,"value":435}," Vercel uses ",{"type":229,"tag":369,"props":437,"children":438},{},[439],{"type":234,"value":440},"docs",{"type":234,"value":442}," as Root Directory and the canonical domain points to production.",{"type":229,"tag":249,"props":444,"children":445},{"class":251},[446,449],{"type":229,"tag":254,"props":447,"children":448},{"class":256,"type":257,"disabled":258},[],{"type":234,"value":450}," A clean deployment succeeds.",{"type":229,"tag":249,"props":452,"children":453},{"class":251},[454,457],{"type":229,"tag":254,"props":455,"children":456},{"class":256,"type":257,"disabled":258},[],{"type":234,"value":458}," The Plausible script ID matches the current site.",{"type":229,"tag":249,"props":460,"children":461},{"class":251},[462,465,467,472],{"type":229,"tag":254,"props":463,"children":464},{"class":256,"type":257,"disabled":258},[],{"type":234,"value":466}," ",{"type":229,"tag":369,"props":468,"children":469},{},[470],{"type":234,"value":471},"docs-feedback",{"type":234,"value":473}," events arrive.",{"type":229,"tag":249,"props":475,"children":476},{"class":251},[477,480],{"type":229,"tag":254,"props":478,"children":479},{"class":256,"type":257,"disabled":258},[],{"type":234,"value":481}," The production acceptance checklist passes.",{"type":229,"tag":230,"props":483,"children":484},{},[485],{"type":234,"value":486},"Record each failure as a focused issue with an owner and deadline. Do not create\na broad cleanup branch that mixes unrelated repositories.",{"title":488,"searchDepth":489,"depth":489,"links":490},"",4,[491,493,494,495],{"id":239,"depth":492,"text":242},2,{"id":296,"depth":492,"text":299},{"id":345,"depth":492,"text":348},{"id":421,"depth":492,"text":424},"markdown",{"source":498,"path":499,"stem":500,"dir":501,"extension":502},"content","docs\u002F4.checklists\u002F4.quarterly-audit.md","docs\u002F4.checklists\u002F4.quarterly-audit","checklists","md",{"requestedPath":167,"resolvedPath":167,"alternates":504},[],{"requested":506,"resolved":507,"usedFallback":9},{},{"locale":8},{"previous":509,"next":510},{"title":157,"id":158,"canonicalKey":159,"locale":8,"draft":9,"path":161},{"title":169,"id":170,"canonicalKey":171,"locale":8,"draft":9,"path":173,"children":511},[512,513,514,515,516,517,518,519],{"title":176,"id":177,"canonicalKey":178,"locale":8,"draft":9,"path":180},{"title":182,"id":183,"canonicalKey":184,"locale":8,"draft":9,"path":186},{"title":188,"id":189,"canonicalKey":190,"locale":8,"draft":9,"path":192},{"title":194,"id":195,"canonicalKey":196,"locale":8,"draft":9,"path":198},{"title":200,"id":201,"canonicalKey":202,"locale":8,"draft":9,"path":204},{"title":206,"id":207,"canonicalKey":208,"locale":8,"draft":9,"path":210},{"title":212,"id":213,"canonicalKey":214,"locale":8,"draft":9,"path":216},{"title":218,"id":219,"canonicalKey":220,"locale":8,"draft":9,"path":222},1786663364789]