<?xml version="1.0" encoding="UTF-8"?>
<spec xmlns="https://vibevm.org/spec/1">
  <title id="root">NEXT temporary contract 3.10 — General project-owned derivative resources</title>
  <status stage="impl" state="plan"/>
  <p p="1"><fact id="NEXT-A10-SCOPE" status="spec/done">Temporary normative staging unit. Its body is the accepted architecture from refined plan revision 4, section 3.10. Before production code cites this law, promote the relevant clauses into permanent specifications. This file is consumed only after semantic coverage, implemented behavior and retained evidence are accepted. The task/retirement checker cannot perform semantic acceptance.</fact></p>
  <p p="2"><fact id="NEXT-A10-U001" status="spec/done">D-009 принят: механизм обязательный. Пользователь создаёт собственный resource на основе captured package asset, даёт отдельную logical identity и явно выбирает, где подключить его. Upstream source/slot и author attribution не меняются.</fact></p>
  <p p="3"><fact id="NEXT-A10-U002" status="spec/done">Authored DerivationBinding фиксирует owner node/resource ID, exact base package/resource/capture, source interpretation, local source/tree, operation/recipe и optional export compatibility target. Generated result records bind base/local/result digests и complete provenance chain. Local source хранится в repo-owned месте; content-addressed cache — disposable output, не единственная authority. Same result bytes не сливают разные provenance/ownership identities.</fact></p>
  <p p="4"><fact id="NEXT-A10-U003" status="spec/done">Full replacement/copy-local-source — базовая универсальная операция для ordinary Markdown, XML-data, Vibe specs и opaque file/tree resources, включая code-bearing bytes как данные. Structured named-slot composition дополнительна; она не условие права иметь local fork. Derive/inspect/diff не executes scripts/native/config artifacts. При downstream execution/install/deploy новую identity нужно отдельно admit; upstream grants/signatures не переходят на derivative.</fact></p>
  <p p="5"><fact id="NEXT-A10-U004" status="spec/done">Sealed/export policy может описывать supported interface/compatibility, но не запрещает создание/хранение собственной версии. Нарушение конкретного target interface диагностируется при подключении к нему; local owner может выбрать другой host-owned target/explicit override, не выдавая это за поддержанный upstream вариант. Source license/notices/provenance сохраняются; new identity не сама по себе новое разрешение на распространение.</fact></p>
  <p p="6"><fact id="NEXT-A10-U005" status="spec/done">Update/rebase: changed base capture/descriptor → rebase-required. Show old base/new base/local diff; no automatic merge even for text. User-approved rebase binds a new base after explicit compatibility/result validation, preserving old accepted provenance. Missing old capture/ambiguous export/conflicting patch cannot be repaired guessing. Offline uses retained exact capture; missing source unavailable. Concurrent local/base edits invalidate prepared apply.</fact></p>
  <p p="7"><fact id="NEXT-A10-U006" status="spec/done">M-01 proof carriers reused; M-06 debugger shows base→local→result and actual contribution. First proof narrow text file is an intermediate stop, not completion of general resource support. Install/build/deploy use existing registry/receipt engines; no generic priority/workflow language added.</fact></p>
</spec>
