Consolidate Reader source ownership and pinned application instances
Add exact recursive source checkout, independent Git/jj developer workbenches and source-only backup/recovery commands, with Workspace instance binding outside source. Qualify two empty Reader Graphs, packaged source commands, Agent VM compilation, exact Gitea read grants and reconciled Reader settings/annotation stability. Publish checked Reader Package/root revisions to canonical review branches and retention tags, retain all 57 repositories independently in private versioned storage, verify downloaded-backup recovery and advance the example pin. Add bounded Central pin acquisition and selection-specific read-only identities, qualified against all 57 canonical repositories without write authority. Replace regex fork dependency discovery with compiler-parsed lock imports and rewrite proposals; preserve source identities and unrelated files, passing instance binding through packed and ordinary host checks. Hosted run-pin versus authoring preparation and maintained duplicate removal remain pending. Live source selections, Template defaults and default source branches are unchanged.
This commit is contained in:
@@ -90,6 +90,28 @@ package Runtime id "package:runtime" revision "package:runtime@1" {
|
||||
);
|
||||
assert.equal(result.directResources.size, 1);
|
||||
|
||||
const resolveResource = async (source: { repository: string; commit: string }, kind: string) => ({
|
||||
directory: directories.get(`${kind}\0${source.repository}\0${source.commit}`)!,
|
||||
});
|
||||
const bound = await Promise.all(
|
||||
["workspace:first", "workspace:second"].map((workspaceId) =>
|
||||
compileWorkspaceRepository({
|
||||
rootDirectory: root,
|
||||
resolveResource,
|
||||
workspaceId,
|
||||
sourceRootCommit: "5".repeat(40),
|
||||
}),
|
||||
),
|
||||
);
|
||||
assert.notEqual(bound[0]!.workspace.workspaceId, bound[1]!.workspace.workspaceId);
|
||||
assert.notEqual(bound[0]!.workspace.id, bound[1]!.workspace.id);
|
||||
for (const instance of bound) {
|
||||
assert.equal(instance.workspace.sourceRootCommit, "5".repeat(40));
|
||||
assert.deepEqual(instance.workspace.packageImports, result.workspace.packageImports);
|
||||
assert.deepEqual(instance.workspace.interfaceImports, result.workspace.interfaceImports);
|
||||
assert.deepEqual(instance.resources, result.resources, "binding does not fork resource identities");
|
||||
}
|
||||
|
||||
const resource = await compileCapabilityResourceRepository({
|
||||
rootDirectory: runtime,
|
||||
kind: "package",
|
||||
|
||||
Reference in New Issue
Block a user