release: v0.2.0 — symmetrical .ai/ seed, lean foundations, npm publish prep#1
release: v0.2.0 — symmetrical .ai/ seed, lean foundations, npm publish prep#1JasonCheroske merged 9 commits intomainfrom
Conversation
…ram skill - Add /flow-diagram skill (SKILL + reference + examples) and cross-link from lab-init; add EXAMPLE_FLOWCHART and LAB_ARCHITECTURE_FLOWCHART with lookup tables. - Extend reference material: pattern cards maintainer practice, vocabulary updates, DOC_INVENTORY/DOCS_MAP, PATTERN_CARD_TEMPLATE. - Runbooks: adoption guide updates, seed startup runbook, runbook README index. - Architecture: LAB_CONTRACT adjustments as staged. - Backlog: lab realignment doc and backlog README. - Template: root AGENTS/README, docs README and project-structure; README tweaks. - Tooling: init-lab.mjs and generation.test.mjs changes; root README + CHANGELOG.
…ase prep Symmetrical seed: - init-lab.mjs copies template/.ai/ to target on every init - template/.ai/ ships harness namespace (skills/, rules/, .cursor/ defaults, harness-fetch skill stub); consumer lab investigation deck from day one - tests/generation.test.mjs: new assertion validates .ai/ paths after init - template/README.md tree updated; .gitignore adds harness personal artifact policy Governance: - ADR-0002: .ai/ harness namespace model, seed vs package, fork policy - ADR-0003: three-option npm create design (phase 2 stub) - LAB_CONTRACT: .ai/ added as recommended companion - COPY_READY_INVENTORY: explicit init includes/excludes, harness gitignore policy - PRODUCT_LAB_FILTER_RUNBOOK: checklist for archetype promotion gating - SEED_STARTUP_RUNBOOK: .ai/ harness setup section added - bin/lab-os.mjs: lab-os create stub command Lean foundations: - docs/60-reference/LEAN_FOUNDATIONS.md: seven Poppendieck principles mapped to Lab OS mechanisms; research/execution two-mode model - FOUNDATIONS_VOCABULARY.md: Modes section added v0.2.0 release prep: - package.json / package-lock.json: version 0.1.0 → 0.2.0 - CHANGELOG.md: [0.2.0] entry; empty [Unreleased]; all entries documented - README.md: .ai/ in project tree; npm section live (no Phase 2 label); v0.2.0 tar references; release model updated - RELEASE_NOTES_v0.2.0.md: new - MIGRATION_CHECKLIST.md: v0.2.0, npm publish steps, scope lock removed - RELEASE_RUNBOOK.md: npm publish section; phase-only scope lock removed - PHASE2_PACKAGE_MANAGER_BACKLOG.md: exit criteria met; first publish v0.2.0 Canonical GitHub URLs: - package.json, CHANGELOG.md, template/root/README.md, template/root/AGENTS.md, EXAMPLE_FLOWCHART.md: all aligned to github.com/JasonCheroske/Lab-OS Made-with: Cursor
execFileSync passes argv directly to node, so tests/*.test.mjs was a literal path and failed GitHub Actions smoke. Enumerate tests/*.test.mjs under tests/, sort, and pass explicit paths to node --test; exit clearly if none match.
- Add scripts/check-doc-links.mjs: scan Markdown (skip fenced blocks), validate relative paths; template/root + template/docs merge-aware resolution for init output layout - Wire docs:check-links npm script and run from lab-verify after tests - Fix .ai skill paths to docs (../../../../) and LAB_ARCHITECTURE_FLOWCHART skill link to .ai/.cursor/skills/flow-diagram/SKILL.md
Script (add-md-frontmatter.mjs): - normalizePair so created <= updated after git lookup - --check: fail if any Markdown has inverted ISO dates (CI/agents) - --fix-order: min/max existing dates without git - Document modes in file header Automation: - lab:verify runs --check after doc link check - package.json: docs:check-frontmatter Governance: - DOC_GOVERNANCE / DOC_INVENTORY: ordering rule, git not editor, modes - Remove accidental duplicate YAML block in DOC_GOVERNANCE Bulk: recompute created/updated from git across tracked Markdown (templates, examples, lab, docs, .ai, template, root readmes). Made-with: Cursor
|
Review complete — approve I finished review of my PR. Overall it looks good: the seed/harness work, doc-link automation, frontmatter tooling ( I only noticed minor consistency issues during review (mostly around dates / frontmatter shape); nothing blocking. Running everything with “today” as a default was a small semantic loss versus strict git-only semantics, but it’s not something I’d normally retcon in a follow-up unless I decide to tighten policy again. CI / tests: After the I’m also going to keep tightening how I implement and review these changes to cut token waste on future passes—ensureing the same outcomes but with a leaner loop. |
Summary
Ships v0.2.0: symmetrical
.ai/harness namespace in everyinit, governance ADRs and runbooks, lean foundations reference, first npm publish path, and canonical repo URL alignment (JasonCheroske/Lab-OS).Highlights
init-lab.mjscopiestemplate/.ai/; generation test asserts.ai/structure; harness gitignore policy.npm createthree-option stub), LAB_CONTRACT / COPY_READY_INVENTORY / startup runbook updates;lab-os createstub.LEAN_FOUNDATIONS.md, modes inFOUNDATIONS_VOCABULARY.md.[0.2.0],RELEASE_NOTES_v0.2.0.md, migration + release runbooks, phase 2 backlog exit criteria for first publish.Checklist
npm test(6/6) green locallyv0.2.0, npm publish per runbooks (when approved)