Skip to content

Commit da3bdf3

Browse files
authored
Merge pull request #754 from objectstack-ai/copilot/update-spec-project-roadmap
2 parents 28a871c + 441d821 commit da3bdf3

1 file changed

Lines changed: 126 additions & 11 deletions

File tree

ROADMAP.md

Lines changed: 126 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# ObjectStack Protocol — Road Map
22

3-
> **Last Updated:** 2026-02-18
3+
> **Last Updated:** 2026-02-21
44
> **Current Version:** v3.0.6
55
> **Status:** Protocol Specification Complete · Runtime Implementation In Progress
66
@@ -10,12 +10,13 @@
1010

1111
- [Current State Summary](#current-state-summary)
1212
- [Codebase Metrics](#codebase-metrics)
13+
- [🎯 Priority Roadmap — February 2026](#-priority-roadmap--february-2026)
1314
- [Package Naming Convention](#package-naming-convention)
1415
- [Phase 1: Protocol Specification (✅ Complete)](#phase-1-protocol-specification--complete)
1516
- [Phase 2: Core Runtime (✅ Complete)](#phase-2-core-runtime--complete)
1617
- [Phase 3: Data Layer (🟡 Mostly Complete)](#phase-3-data-layer--mostly-complete)
1718
- [Phase 4: Service Implementations (🔴 In Progress)](#phase-4-service-implementations--in-progress)
18-
- [Phase 5: Framework Adapters (🟡 Mostly Complete)](#phase-5-framework-adapters--mostly-complete)
19+
- [Phase 5: Framework Adapters (Complete)](#phase-5-framework-adapters--complete)
1920
- [Phase 6: Enterprise Services (🔴 Planned)](#phase-6-enterprise-services--planned)
2021
- [Phase 7: AI & Intelligence (🔴 Planned)](#phase-7-ai--intelligence--planned)
2122
- [Phase 8: Platform & Ecosystem (🔴 Planned)](#phase-8-platform--ecosystem--planned)
@@ -104,6 +105,108 @@ This strategy ensures rapid iteration while maintaining a clear path to producti
104105

105106
---
106107

108+
## 🎯 Priority Roadmap — February 2026
109+
110+
> **Goal:** Prioritize APIs and client capabilities needed by [ObjectUI](https://github.com/objectstack-ai/objectui/blob/main/ROADMAP.md) frontend development.
111+
> **Target:** v3.1 protocol to fill core platform gaps.
112+
> **Updated:** 2026-02-21
113+
> **Owner:** @hotlong
114+
115+
### 1. Comments & Collaboration API for ObjectUI
116+
117+
Support record comments, @mention, activity feed, and changelog for the ObjectUI frontend.
118+
119+
| Item | Status | Location |
120+
|:---|:---:|:---|
121+
| Feed CRUD schema (create/list/update/delete) || `api/feed-api.zod.ts` |
122+
| Feed item types (comment, field_change, task, note, file, etc.) || `data/feed.zod.ts` (13 types) |
123+
| @mention support || `data/feed.zod.ts``MentionSchema` |
124+
| Threaded replies (parentId) || `data/feed.zod.ts``parentId` |
125+
| Emoji reactions (add/remove with counts) || `api/feed-api.zod.ts` |
126+
| Record subscriptions (notification channels) || `api/feed-api.zod.ts` |
127+
| Real-time collaboration (OT/CRDT) || `system/collaboration.zod.ts` |
128+
| `IFeedService` contract || `contracts/feed-service.ts` |
129+
| `service-feed` in-memory implementation || `@objectstack/service-feed` (40 tests) |
130+
| Pin/star comments | 🔴 | Not yet specified |
131+
| Comment notification integration with `INotificationService` | 🔴 | `service-notification` not implemented |
132+
| Activity feed search/filter endpoint | 🔴 | Not yet specified |
133+
| Changelog (field-level audit trail) endpoint | 🟡 | `FieldChangeSchema` exists; dedicated API pending |
134+
135+
### 2. Automation Persistence & Scheduling Specs
136+
137+
Multi-stage triggers, action pipelines, execution logs, and cron scheduling standards.
138+
139+
| Item | Status | Location |
140+
|:---|:---:|:---|
141+
| Flow orchestration (14 node types) || `automation/flow.zod.ts` |
142+
| Trigger registry (record, field, webhook) || `automation/trigger-registry.zod.ts` |
143+
| Cron scheduling expression || `automation/etl.zod.ts`, `automation/webhook.zod.ts` |
144+
| Action pipeline (webhook, email, CRUD, notification) || `automation/flow.zod.ts` (HTTP, CRUD, script nodes) |
145+
| State machine & approval processes || `automation/state-machine.zod.ts`, `automation/workflow.zod.ts` |
146+
| Retry policies with exponential backoff || `automation/webhook.zod.ts` |
147+
| `IAutomationService` contract || `contracts/automation-service.ts` |
148+
| `service-automation` DAG engine (MVP) || `@objectstack/service-automation` (27 tests) |
149+
| Execution log/history storage protocol | 🔴 | No dedicated `ExecutionLogSchema`; only string arrays in results |
150+
| Execution error tracking & diagnostics | 🔴 | Not yet specified |
151+
| Conflict resolution for concurrent executions | 🔴 | Not yet specified |
152+
| Checkpointing/resume for interrupted flows | 🔴 | Not yet specified |
153+
| Scheduled execution persistence (next-run, pause/resume) | 🔴 | Limited to cron strings; no runtime state tracking |
154+
155+
### 3. File Direct Upload & Resumable Upload Protocol
156+
157+
CloudFile / PresignedUrl schema supporting S3/Azure/GCS direct-to-cloud file uploads.
158+
159+
| Item | Status | Location |
160+
|:---|:---:|:---|
161+
| Presigned URL generation (upload/download) || `api/storage.zod.ts` |
162+
| Multi-provider support (S3, Azure, GCS, MinIO, R2, etc.) || `system/object-storage.zod.ts` |
163+
| Multipart upload configuration || `system/object-storage.zod.ts` (chunk size 5MB–5GB) |
164+
| Storage lifecycle policies (transition/expiration) || `system/object-storage.zod.ts` |
165+
| Bucket encryption & CORS || `system/object-storage.zod.ts` |
166+
| `IStorageService` contract || `contracts/storage-service.ts` |
167+
| `service-storage` local FS + S3 skeleton || `@objectstack/service-storage` (8 tests) |
168+
| Chunked upload with resume token | 🔴 | No resume token for interrupted uploads |
169+
| Upload progress tracking protocol | 🔴 | Not yet specified |
170+
| Mobile / file picker / browser fallback | 🔴 | Not yet specified |
171+
| File type whitelist/blacklist validation | 🔴 | Not yet specified |
172+
173+
### 4. Streaming Data Export & Batch Operation Optimization
174+
175+
Cursor/Pagination protocol for large-scale data import/export with template-based mapping.
176+
177+
| Item | Status | Location |
178+
|:---|:---:|:---|
179+
| Batch CRUD (create/update/upsert/delete, max 200) || `api/batch.zod.ts` |
180+
| Atomic transactions & dry-run validation || `api/batch.zod.ts` |
181+
| Cursor-based & offset pagination || `data/query.zod.ts` |
182+
| Import mapping configuration || `data/mapping.zod.ts` |
183+
| Dataset import mode || `data/dataset.zod.ts` |
184+
| Full query & filter language || `data/filter.zod.ts` |
185+
| Streaming/chunked export endpoint (CSV/JSON/Excel) | 🔴 | Not yet specified |
186+
| Import validation & deduplication | 🔴 | Not yet specified |
187+
| Template-based field mapping for import/export | 🔴 | Mapping schema exists; no template registry |
188+
| Scheduled export jobs & status query | 🔴 | Not yet specified |
189+
| Export job progress & download URL | 🔴 | Not yet specified |
190+
191+
### 5. API Capability Declaration & Service Discovery
192+
193+
Strengthen discovery capabilities for frontend intelligent adaptation.
194+
195+
| Item | Status | Location |
196+
|:---|:---:|:---|
197+
| Per-service status reporting (available/degraded/stub) || `api/discovery.zod.ts` |
198+
| Dynamic API route mapping || `api/discovery.zod.ts``ApiRoutesSchema` |
199+
| Localization info (locale, timezone) || `api/discovery.zod.ts` |
200+
| Custom metadata extensions || `api/discovery.zod.ts` |
201+
| Capabilities declaration (comments, automation, search, cron, files, analytics) | 🔴 | No hierarchical capability descriptors |
202+
| Per-service version info | 🔴 | Not yet specified |
203+
| Rate limit & quota disclosure | 🔴 | Not yet specified |
204+
| OpenAPI/GraphQL schema discovery endpoint | 🔴 | Not yet specified |
205+
206+
> **Recommendation:** Sync this roadmap with ObjectUI / client / runner / console and prioritize v3.1 protocol to fill core platform gaps.
207+
208+
---
209+
107210
## Package Naming Convention
108211

109212
> **Adopted:** 2026-02-15
@@ -169,9 +272,11 @@ business/custom objects, aligning with industry best practices (e.g., ServiceNow
169272

170273
## Phase 1: Protocol Specification (✅ Complete)
171274

172-
> **Goal:** Define every schema, type, and contract as a Zod-first source of truth.
275+
> **Goal:** Define every schema, type, and contract as a Zod-first source of truth.
276+
> **Result:** 175 Zod schemas, 25 service contracts, 7,111+ `.describe()` annotations across 15 protocol domains.
173277
174-
### Deliverables — All Completed
278+
<details>
279+
<summary>Deliverables — All Completed (click to expand)</summary>
175280

176281
- [x] **Data Protocol** — Object, Field (35+ types), Query, Filter, Validation, Hook, Datasource, Dataset, Analytics, Document, Storage Name Mapping (`tableName`/`columnName`), Feed & Activity Timeline (FeedItem, Comment, Mention, Reaction, FieldChange), Record Subscription (notification channels)
177282
- [x] **Driver Specifications** — Memory, PostgreSQL, MongoDB driver schemas + SQL/NoSQL abstractions
@@ -193,13 +298,17 @@ business/custom objects, aligning with industry best practices (e.g., ServiceNow
193298
- [x] **Error Map** — Custom Zod error messages with `objectStackErrorMap`
194299
- [x] **DX Utilities**`safeParsePretty()`, `formatZodError()`, `suggestFieldType()`
195300

301+
</details>
302+
196303
---
197304

198305
## Phase 2: Core Runtime (✅ Complete)
199306

200-
> **Goal:** Build the microkernel, plugin system, and service infrastructure.
307+
> **Goal:** Build the microkernel, plugin system, and service infrastructure.
308+
> **Result:** ObjectKernel + LiteKernel with full plugin lifecycle, service registry, security, and hot-reload.
201309
202-
### Deliverables — All Completed
310+
<details>
311+
<summary>Deliverables — All Completed (click to expand)</summary>
203312

204313
- [x] **ObjectKernel** — Full-featured async kernel with dependency resolution, rollback, health monitoring
205314
- [x] **LiteKernel** — Lightweight sync kernel for serverless/test environments
@@ -213,6 +322,8 @@ business/custom objects, aligning with industry best practices (e.g., ServiceNow
213322
- [x] **Security** — Permission manager, plugin permission enforcer, config validator, signature verifier, sandbox runtime, security scanner
214323
- [x] **QA Module** — Testing adapter, HTTP adapter, test runner
215324

325+
</details>
326+
216327
---
217328

218329
## Phase 3: Data Layer (🟡 Mostly Complete)
@@ -336,9 +447,11 @@ business/custom objects, aligning with industry best practices (e.g., ServiceNow
336447

337448
## Phase 5: Framework Adapters (✅ Complete)
338449

339-
> **Goal:** First-class integration with popular web frameworks.
450+
> **Goal:** First-class integration with popular web frameworks.
451+
> **Result:** 9 framework adapters — Next.js, NestJS, Hono, Express, Fastify, SvelteKit, Nuxt, plus Server Actions and Hono Server Plugin.
340452
341-
### Completed
453+
<details>
454+
<summary>Deliverables — All Completed (click to expand)</summary>
342455

343456
- [x] **Next.js Adapter** — App Router, Auth/GraphQL/Meta/Data/Storage handlers (10/10)
344457
- [x] **NestJS Adapter** — Full DI module, Express/Fastify support (10/10)
@@ -350,6 +463,8 @@ business/custom objects, aligning with industry best practices (e.g., ServiceNow
350463
- [x] **SvelteKit Adapter** — Web-standard Request/Response based handler for SvelteKit routes
351464
- [x] **Nuxt Adapter** — h3 router integration for Nuxt server routes
352465

466+
</details>
467+
353468
---
354469

355470
## Phase 6: Enterprise Services (🔴 Planned)
@@ -665,9 +780,9 @@ Final polish and advanced features.
665780
| Version | Target | Focus |
666781
|:---|:---|:---|
667782
| **v3.0** | ✅ Shipped | Protocol specification complete, core runtime stable |
668-
| **v3.1** | Q2 2026 | Essential services (`service-cache`, `service-queue`, `service-job`, `service-storage`), PostgreSQL driver, Turso/libSQL core driver ([design](docs/design/driver-turso.md)) |
669-
| **v3.2** | Q3 2026 | Communication services (`service-realtime`, `service-graphql`, `service-i18n`, `service-notification`), Turso embedded replica & edge sync, UI Protocol Enhancement Phase A (`RecordReviewConfig`, content elements) — see [gap analysis](docs/design/airtable-interface-gap-analysis.md) |
670-
| **v3.3** | Q4 2026 | Business logic services (`service-automation`, `service-workflow`, `service-search`), Turso multi-tenancy (database-per-tenant), UI Protocol Enhancement Phase B spec ✅ complete (interactive elements, blank page layout), Studio Page Builder runtime, Visual Design UX optimization ([plan](docs/design/visual-design-ux-optimization.md)) |
783+
| **v3.1** | Q2 2026 | **ObjectUI Priority:** Comments & Collaboration API, Automation persistence/scheduling, File upload protocol, Data export/batch, API discovery capabilities; Essential services (`service-cache`, `service-queue`, `service-job`, `service-storage`), PostgreSQL driver, Turso/libSQL core driver ([design](docs/design/driver-turso.md)) |
784+
| **v3.2** | Q3 2026 | Communication services (`service-graphql`, `service-notification`), Turso embedded replica & edge sync, Streaming export & scheduled jobs |
785+
| **v3.3** | Q4 2026 | Business logic services (`service-workflow`, `service-search`), Turso multi-tenancy (database-per-tenant), Studio Page Builder runtime, Visual Design UX optimization ([plan](docs/design/visual-design-ux-optimization.md)) |
671786
| **v4.0** | Q1 2027 | Zod v4 migration, `plugin-auth``service-auth` rename, JSON Schema output, OpenAPI generation, AI services, multi-tenancy, Turso vector search & FTS5 integration, UI Protocol Enhancement Phase C spec 🟡 mostly complete (sharing, embedding), `previewAs` design-time preview, Data Studio protocol, runtime share/embed services |
672787
| **v4.1** | Q2 2027 | Studio IDE general availability, marketplace launch, UI Protocol Enhancement Phase D (templates, versioning, collaborative editing), Page Builder enhancements (selection model, clipboard, alignment) |
673788
| **v5.0** | 2027+ | Managed cloud, app store, global ecosystem |

0 commit comments

Comments
 (0)