Skip to content

feat(git): import admitted source heads - #14

Closed
zhiiw wants to merge 6 commits into
codex/gitoxide-repository-admission-capabilityfrom
codex/gitoxide-source-import-data-plane
Closed

zhiiw wants to merge 6 commits into
codex/gitoxide-repository-admission-capabilityfrom
codex/gitoxide-source-import-data-plane

Conversation

@zhiiw

@zhiiw zhiiw commented Aug 23, 2026

Copy link
Copy Markdown
Owner

Summary

  • add the first Gitoxide object data-plane operation: exact admitted source HEAD import
  • bind source path/commit/tree to the existing opaque repository-admission capability
  • create only a fresh Maka-owned SHA-1 bare repository and deterministic baseline ref
  • reject unsupported paths, entries, collisions, stale HEADs, quotas, and existing destinations

Primary invariant

Only the owner of an opaque repository-admission capability can import the exact SHA-1 HEAD captured by that capability. The helper copies only reachable tree/blob objects into a fresh destination and publishes a deterministic zero-parent baseline under refs/maka/*.

Atomicity and recovery

The fresh destination is the artifact boundary. Before the baseline ref is published, copied objects are unreachable implementation residue. Until a complete success response is returned, the caller must treat the entire destination as untrusted and discard it. No system Git fallback is permitted.

Scope

API-only stacked Draft. No T1/T2, Desktop/CLI consumer, projection, candidate, or successor CAS is added here.

Verification

  • Runtime Host/core/storage/runtime builds pass locally.
  • Focused TypeScript authority tests pass; real-helper cases are exercised by the three-platform Gitoxide workflow.
  • Local Rust execution is unavailable on this Windows machine, so Cargo compile/test evidence is delegated to CI.
中文说明

本切片只增加 Gitoxide 的 source import 数据面:只有 repository admission authority 签发的 opaque capability 才能决定 source path、HEAD commit 与 tree。helper 只把该 exact HEAD 的 reachable tree/blob 复制到全新的 Maka-owned SHA-1 bare repository,并发布确定性的零父 baseline ref。

fresh destination 是失败与回滚边界;完整成功响应返回前,上层必须把整个目录视为不可信并整体丢弃。不会 fallback 到系统 Git,也不在本 PR 接入 T1/T2、Desktop/CLI、projection 或 successor CAS。

@zhiiw
zhiiw force-pushed the codex/gitoxide-repository-admission-capability branch from bab0dce to e040631 Compare August 23, 2026 16:29
@zhiiw
zhiiw force-pushed the codex/gitoxide-source-import-data-plane branch from c4867f2 to 8882bc0 Compare August 23, 2026 16:29
@zhiiw
zhiiw force-pushed the codex/gitoxide-repository-admission-capability branch from e040631 to 1842cd5 Compare August 23, 2026 16:32
@zhiiw
zhiiw force-pushed the codex/gitoxide-source-import-data-plane branch from 8882bc0 to f038fff Compare August 23, 2026 16:32
@zhiiw
zhiiw force-pushed the codex/gitoxide-repository-admission-capability branch from 1842cd5 to 728a950 Compare August 24, 2026 04:04
@zhiiw
zhiiw force-pushed the codex/gitoxide-source-import-data-plane branch from c030104 to dd5430f Compare August 24, 2026 04:04
@zhiiw
zhiiw force-pushed the codex/gitoxide-repository-admission-capability branch from 728a950 to 72cf422 Compare August 24, 2026 04:18
@zhiiw
zhiiw force-pushed the codex/gitoxide-source-import-data-plane branch from dd5430f to 980fe9f Compare August 24, 2026 04:18
@zhiiw

zhiiw commented Aug 24, 2026

Copy link
Copy Markdown
Owner Author

Superseded by apache#3561. Its implementation and tests were rebuilt from the latest upstream main and included there as part of the consolidated Gitoxide repository admission/import invariant. This extraction PR remains available as design and review history.

中文说明

本 PR 已由 apache#3561 取代。对应实现和测试已从最新 upstream main 重建,并作为完整的 Gitoxide repository admission/import 不变量合入该 Draft。这里继续保留为设计和评审历史。

@zhiiw zhiiw closed this Aug 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant