feat(hololake): add stage-one read-only PNCC core
This commit is contained in:
parent
ec8bbfd604
commit
f4c896d15c
11 changed files with 2539 additions and 6 deletions
|
|
@ -13,3 +13,9 @@ HoloLake stores a signed node capability registry rather than fixed server slots
|
|||
The registry signer trust root is embedded independently from registry payloads and is currently `UNPROVISIONED_FAIL_CLOSED`. Registry and health mutation are not exposed to the webview. External AI route queries require possession of the active HoloLake local session secret. A route receipt never grants write authority; production node write admission remains a separate unimplemented gate.
|
||||
|
||||
HoloLake routes work but does not host the user's private work lake, pool users into a multi-tenant runtime, or carry server workload concurrency.
|
||||
|
||||
## GH-PNCC under-lake code channel
|
||||
|
||||
Stage one now contains a read-only GH-PNCC core beneath the public surface. A local persona repository is bound to an exact Git root and full committed head. A remote persona object is read through a credential-free HTTPS Git v2 partial-object channel with an app-owned bare `blob:none` cache and a separate durable ancestry cursor. Verified reads append to a bounded hash-chained projection for the human panel and authenticated external programming AIs.
|
||||
|
||||
This core does not run a model, configure an API, acquire a persona lease, mutate memory or execute reality actions. Arbitrary repository paths and remote URLs cannot be registered by the WebView or external AI. Native human-confirmed source registration remains an explicit UI-stage gate.
|
||||
|
|
|
|||
|
|
@ -0,0 +1,27 @@
|
|||
# ADR 0002: GH-PNCC first-stage read-only core
|
||||
|
||||
## Status
|
||||
|
||||
Accepted for the local engineering checkpoint on 2026-08-13. Human source registration and product UI acceptance remain open.
|
||||
|
||||
## Decision
|
||||
|
||||
The new native container reimplements only three first-stage GH-PNCC boundaries:
|
||||
|
||||
1. an exact local Git-root binding that reads the persona manifest, brain entry, B0 cognitive-gravity source, current checkpoint and declared artifacts from a caller-pinned committed head;
|
||||
2. an app-owned incremental remote object channel using Git protocol v2, a bare promisor cache and `blob:none`, with its verified ancestry cursor stored outside the evictable cache;
|
||||
3. a hash-chained, bounded, read-only human receipt projection over verified repository bindings and remote object reads.
|
||||
|
||||
All external-AI PNCC reads use the authenticated resident Unix-socket broker after the source has been registered. MCP is not the continuity owner. Neither the broker nor the WebView may register an arbitrary local path or remote URL. Registration stays closed until the native file picker, exact human confirmation receipt and UI acceptance are implemented.
|
||||
|
||||
## Exclusions
|
||||
|
||||
The first-stage PNCC core contains no internal chat, model selection, model endpoint or API-key configuration, model inference, persona lease acquisition, memory mutation, execution limb or reality action. It reads committed Git objects even if the local worktree is dirty, and reports that dirtiness rather than treating uncommitted bytes as persona evidence.
|
||||
|
||||
The migration provenance ledger records exact donor paths, hashes and observed authors. The implementation is a contract-level clean-room rebuild; it does not copy the donor runtime module or donor UI source.
|
||||
|
||||
## Trust and continuity
|
||||
|
||||
Remote URLs must be credential-free HTTPS. The server must advertise partial-object filtering. The durable cursor advances only after the new head is read and proved to descend from the previous head. A rewritten history, cache/cursor disagreement, unsupported server, unsafe path, non-regular object or oversized content fails closed. The cache may be evicted without deleting the last verified continuity cursor.
|
||||
|
||||
The receipt projection is evidence for people and external AIs. It is not a node registry, authorization store, persona runtime lease or proof that an empty view means a node is offline.
|
||||
Loading…
Reference in a new issue