Releases: objectstack-ai/framework
objectstack-vscode@6.1.1
objectstack-vscode@6.1.1
objectstack-vscode@6.0.0
objectstack-vscode@6.0.0
create-objectstack@6.1.1
create-objectstack@6.1.1
create-objectstack@6.0.0
create-objectstack@6.0.0
@objectstack/types@6.1.1
Patch Changes
- @objectstack/spec@6.1.1
@objectstack/types@6.0.0
@objectstack/sveltekit@6.1.1
@objectstack/sveltekit@6.1.1
@objectstack/sveltekit@6.0.0
Patch Changes
- Updated dependencies [944f187]
- @objectstack/runtime@6.0.0
@objectstack/spec@6.1.1
@objectstack/spec@6.1.1
@objectstack/spec@6.0.0
Major Changes
-
629a716: # v1 AI Protocol focusing — remove application-template schemas
The
@objectstack/spec/aiprotocol is reduced to only the primitives
the runtime directly consumes. Eight schemas that described
application templates or product features (not platform contracts) are
removed; three more are slimmed to their primitive cores.Removed (8 files, ~4,700 lines)
File Reason for removal ai/devops-agent.zod.tsA specific Agent template, not a primitive. Compose with Agent + Skill + Tool.ai/plugin-development.zod.tsSpecific workflow; same reasoning. ai/runtime-ops.zod.tsAIOps is a vertical product, not a backend platform concern. ai/predictive.zod.tsML pipeline product (DataRobot/H2O space), orthogonal to metadata-driven backend. ai/agent-action.zod.ts100% conceptual overlap with tool+flow.ai/orchestration.zod.tsMulti-agent plans can be expressed as agents-as-tools. Premature. ai/nlq.zod.tsNLQ is LLM-native capability + a query_datatool over ObjectQL, not a protocol.ai/feedback-loop.zod.tsRLHF / training-side concern; not platform-owned. Slimmed (3 files)
ai/rag-pipeline.zod.ts→ai/embedding.zod.ts(318 → 80 lines).
KeepsEmbeddingModelSchema+VectorStoreSchemaprimitives.
Removed: chunking strategies, retrieval pipelines, rerankers,
document loaders, end-to-end RAG pipeline DSL. TheragPipelines
field ondefineStack()is removed.ai/cost.zod.ts→ai/usage.zod.ts(431 → ~70 lines).
KeepsTokenUsageSchema+AIUsageRecordSchema. Model pricing is
the canonicalModelPricingSchemaalready exported from
ai/model-registry.zod.ts. Removed: budget definitions,
enforcement, alerts, allocation reports, optimization
recommendations.ai/mcp.zod.ts(629 → ~100 lines). Defines only how to
reference an external MCP server and bind its tools to an
agent. The MCP protocol itself is owned by Anthropic's published
spec and the@modelcontextprotocol/sdk; we no longer re-declare
transport/capability/resource/prompt/streaming/sampling shapes.
Migration
No production code in this repository depended on the removed
schemas. Downstream consumers that imported any of the removed types
from@objectstack/spec/aimust:- Remove the import. The platform no longer provides these types.
- Define your own application-level shape in your project / plugin
if you still need the concept. The primitives (Agent,Skill,
Tool,Conversation,Embedding,Usage,MCP{ServerRef,ToolBinding})
are sufficient to express every removed schema. - For RAG: replace
RAGPipelineConfigwith your own pipeline
description built onEmbeddingModelSchema+VectorStoreSchema. - For cost: replace budget enforcement with your own service built
onAIUsageRecordSchemarecords.
Why
The platform's job is to define primitives that any AI feature can
be built on top of, leveraging the metadata-driven nature of
ObjectStack. The removed schemas described specific product features
(DevOps agent, AIOps, RAG pipeline DSL, budget enforcement) that
should live in plugins or applications — not in the canonical
protocol. Shipping a 6,245-line AI protocol where 80% of it has no
runtime implementation creates false promises to integrators.After this change the AI protocol is:
ai/ ├── agent.zod.ts ← who ├── skill.zod.ts ← when ├── tool.zod.ts ← what ├── conversation.zod.ts ← what to remember ├── model-registry.zod.ts ← which LLMs ├── embedding.zod.ts ← embedding + vector store primitives ├── usage.zod.ts ← token + cost accounting └── mcp.zod.ts ← external ecosystem bridge8 files, ~1,200 lines. Every schema has a runtime implementation in
@objectstack/service-aior@objectstack/plugin-mcp-server. -
944f187: # v5.0 —
project→environmenthard renameThe runtime concept previously called "project" (per-tenant business
workspace; Org → Project → Branch hierarchy; per-project ObjectKernel,
per-project DB, per-project artifact) is now uniformly called
"environment".This is a hard rename with no aliases, deprecation shims, or compatibility
layer. Upgrade requires a coordinated update of CLI, runtime, server, and any
clients calling the REST API.Note: "project" in the npm / monorepo sense (the framework itself,
package.json,
tsconfig project references, vitestprojectsconfig) is unchanged.Breaking changes
CLI
- Flags renamed:
--project/-p→--environment/-e(os publish,os rollback)--project-id→--environment-id(os dev)
- Default local env id:
proj_local→env_local. - Env var:
OS_PROJECT_ID→OS_ENVIRONMENT_ID. - Command group renamed:
os projects ...→os environments ...
(bind,create,list,show,switch). - Persisted auth-config key:
activeProjectId→activeEnvironmentId.
HTTP / REST
- Scoped routes:
/api/v1/projects/:projectId/...→/api/v1/environments/:environmentId/.... - Cloud control-plane routes:
/api/v1/cloud/projects/...→/api/v1/cloud/environments/...
(including/cloud/environments/:id/artifact,/cloud/environments/:id/metadata,
/cloud/environments/:id/credentials/rotate, etc.). - Header:
X-Project-Id(and lowercasex-project-id) →X-Environment-Id
(x-environment-id). - Route param name in handlers:
req.params.projectId→req.params.environmentId. - Hostname-routing and tenant-resolution code-paths use
environmentIdend-to-end.
Runtime / spec
- Exported symbols (no aliases):
createSystemProjectPlugin→createSystemEnvironmentPluginSYSTEM_PROJECT_ID→SYSTEM_ENVIRONMENT_IDProjectArtifactSchema→EnvironmentArtifactSchemaPROJECT_ARTIFACT_SCHEMA_VERSION→ENVIRONMENT_ARTIFACT_SCHEMA_VERSIONObjectOSProjectPlugin→ObjectOSEnvironmentPlugincreateSingleProjectPlugin→createSingleEnvironmentPlugin
- Plugin identifier strings:
com.objectstack.runtime.objectos-project→objectos-environmentcom.objectstack.studio.single-project→single-environmentcom.objectstack.multi-project→multi-environmentcom.objectstack.runtime.system-project→system-environment
- Provisioning hook:
provisionSystemProject→provisionSystemEnvironment.
Database / schemas
- Column renames on
sys_metadataandsys_metadata_history:
project_id→environment_id. - Column renames on
sys_activity:project_id→environment_id(plus index). - Object renames in platform-objects metadata:
sys_project→sys_environment
(lookup targets),sys_project_member→sys_environment_member,
sys_project_credential→sys_environment_credential. - Auth-context field:
active_project_id→active_environment_id. - JSON schemas under
packages/spec/json-schema/system/:
ProjectArtifact*.json→EnvironmentArtifact*.json(regenerated at build).
Automatic forward migration
A new migration
migrateProjectIdToEnvironmentId
(packages/metadata/src/migrations/migrate-project-id-to-environment-id.ts)
auto-runs fromDatabaseLoader.ensureSchema()on bootstrap and rewrites any
existingproject_idcolumn onsys_metadata/sys_metadata_historyto
environment_id(idempotent, best-effort). Existing rows are preserved.The legacy reverse migration
migrateEnvIdToProjectIdis retained verbatim
for historical / disaster-recovery use; it is not auto-run.Migration guide
-os publish --project proj_xyz +os publish --environment env_xyz -curl -H "X-Project-Id: env_xyz" https://api.example.com/api/v1/data/customer +curl -H "X-Environment-Id: env_xyz" https://api.example.com/api/v1/data/customer -OS_PROJECT_ID=env_xyz os dev +OS_ENVIRONMENT_ID=env_xyz os dev -import { createSystemProjectPlugin, SYSTEM_PROJECT_ID } from "@objectstack/runtime"; +import { createSystemEnvironmentPlugin, SYSTEM_ENVIRONMENT_ID } from "@objectstack/runtime"; -import { ProjectArtifactSchema } from "@objectstack/spec"; +import { EnvironmentArtifactSchema } from "@objectstack/spec";
If you maintain a Cloud control-plane deployment, the
cloudrepository must
be updated in lockstep to pick up the new plugin identifier strings
(single-environment,multi-environment,objectos-environment). - Flags renamed:
Minor Changes
-
dbc4f7d: feat(ai): v1 AI capabilities — ModelRegistry, structured output, tracing, schema retrieval, and
query_datatoolThis release lights up the first concrete capabilities on the slimmed AI protocol. All additions are
non-breaking — new contract methods are optional and existing callers keep working unchanged.What's new
- ModelRegistry (`@objectstack...