Custom logic

Files and folders, first-class.

The source you author for handlers, workflows, edge logic — folders, files, modules — are not auxiliary git artifacts. They're first-class branchable platform entities. ProjectSourceFolder, ProjectSourceFile, ProjectSourceModule. Content-addressed split between control-plane metadata and storage-layer blobs. Same branching DAG as schema, providers, federation, agents — all 19 manifest domains.

Three canonical entities

Folders, files, modules. All branchable.

ProjectSourceFolder

Hierarchical structure. Move, rename, fork, sandbox — all participate in the branching DAG. Folder-scoped access policies and capability grants apply across descendants.

ProjectSourceFile

Source files with content-addressed storage. The control plane carries the metadata (path, language, scope, classification); the blob lives in the storage layer at {projectId}/source/{hash[0..2]}/{hash}.bin.

ProjectSourceModule

A compiled unit — a handler, a workflow, an event consumer, an edge function — derived from one or more files. Modules carry runtime classification and execution-surface assignment.

Content-addressed

Identical content deduplicates by SHA-256 hash. Branching a sandbox is cheap — you reference the same blobs until you fork them. Storage cost matches actual divergence.

SourceAssets manifest domain

One of 19 typed branching domains. Source asset diffs are first-class IDomainDiffAnalyzer participants. Three-way merge handles file-level conflicts; structural conflict detection is path-aware.

Same canonical APIs

SourceAssetController is the canonical surface. CLI, IDE, third-party tooling all consume the same API. The coding workspace is a peer consumer, not a privileged authority.

3
Canonical entities

Folder · File · Module

Content-addressed
Storage split

Metadata + blobs

1 of 19
Manifest domains

Branchable like schema

Canonical
API surface

Workspace · CLI · third-party share it

Source as platform state.

Branch a folder. Sandbox a file. Diff modules. Three-way merge with semantic conflict detection. The same DAG that holds your schema, holds your code.