Skip to content

feat(objectql): package-first authoring — reject runtime creates into read-only packages (ADR-0070 D1/D2) - #2285

Merged
os-zhuang merged 1 commit into
mainfrom
feat/adr-0070-pkgfirst-kernel
Jun 24, 2026
Merged

feat(objectql): package-first authoring — reject runtime creates into read-only packages (ADR-0070 D1/D2)#2285
os-zhuang merged 1 commit into
mainfrom
feat/adr-0070-pkgfirst-kernel

Conversation

@os-zhuang

Copy link
Copy Markdown
Contributor

What

Implements ADR-0070 D1 (no orphans) + D2 (writable-package predicate) in the kernel.

Why

A Studio business-user dogfood pass surfaced a bug family rooted in the absence of a package-first contract: read-only-after-publish (#2252), the orphan pile with no delete unit (#1946), and AI's com.workspace catch-all. See docs/adr/0070-package-first-authoring.md.

Verification

  • pnpm --filter @objectstack/objectql test — 706 green (updated protocol-save-meta-repo-path*.test.ts to assert rejection instead of null-coercion).
  • tsc clean. Kernel is the enforcement backstop; the Studio (objectui) and AI (cloud) surfaces resolve/redirect to a base before hitting it.

Part of the ADR-0070 package-first epic (kernel slice). Studio + AI surface PRs follow.

🤖 Generated with Claude Code

…able_package_required (ADR-0070 D1/D2)
Replaces the #2252 coerce-to-null stopgap with an actionable rejection, and
generalizes isLoadedPackage into isWritablePackage (drops the owns-an-object
heuristic that was the read-only-after-publish trap). Updates the repo-path
tests to assert rejection. Null stays a legacy overlay destination (D5 retires).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@vercel

vercelBot commented Jun 24, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

ProjectDeploymentActionsUpdated (UTC)
specReadyReadyPreview, CommentJun 24, 2026 1:14pm

Request Review

@github-actionsgithub-actionsBot added documentation Improvements or additions to documentation tests tooling size/m labels Jun 24, 2026
@github-actions

Copy link
Copy Markdown
Contributor

📓 Docs Drift Check

This PR changes 1 package(s): @objectstack/objectql.

14 hand-written doc(s) reference the affected code and may need an implementation-accuracy re-verification:

  • content/docs/concepts/core/services.mdx(via @objectstack/objectql)
  • content/docs/concepts/implementation-status.mdx(via @objectstack/objectql)
  • content/docs/concepts/metadata-lifecycle.mdx(via @objectstack/objectql)
  • content/docs/concepts/packages.mdx(via @objectstack/objectql)
  • content/docs/guides/authentication.mdx(via @objectstack/objectql)
  • content/docs/guides/deployment-vercel.mdx(via @objectstack/objectql)
  • content/docs/guides/formula.mdx(via packages/objectql)
  • content/docs/guides/kernel-services.mdx(via @objectstack/objectql)
  • content/docs/guides/objectql-migration.mdx(via @objectstack/objectql)
  • content/docs/guides/packages.mdx(via @objectstack/objectql)
  • content/docs/guides/plugins.mdx(via @objectstack/objectql)
  • content/docs/protocol/objectos/index.mdx(via @objectstack/objectql)
  • content/docs/protocol/objectql/state-machine.mdx(via @objectstack/objectql)
  • content/docs/releases/v9.mdx(via @objectstack/objectql)

Advisory only. To re-verify, run the docs-accuracy-audit workflow scoped to these files:
node scripts/docs-audit/affected-docs.mjs origin/main → pass the list as args.docs.

@os-zhuang
os-zhuang merged commit d616e1d into mainJun 24, 2026
16 checks passed
@os-zhuang
os-zhuang deleted the feat/adr-0070-pkgfirst-kernel branch June 24, 2026 13:17
os-zhuang added a commit that referenced this pull request Jun 24, 2026
…ied (#2292)
Status Proposed → Accepted. Adds an Implementation status section (P1 kernel
#2285, P2 studio objectui#1970, P3 ai cloud#479/#481, tests cloud#480; live
dogfood: magic build + iterative changes all in one app.iojn base, no
com.workspace/orphans) and annotates the rollout (D1–D3 done, D4–D6 remaining).
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentationImprovements or additions to documentationsize/mteststooling

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@os-zhuang