refactor: move VCS operations fully into dev.panproto.node.* namespace The dev.cospan.node.* namespace is deprecated for VCS operations. panproto owns all VCS primitives (listRefs, getObject, putObject, setRef, listCommits, diffCommits, getHead, negotiate, getRepoInfo). The cospan namespace is reserved for cospan-specific features (social: stars, follows, issues, MRs, repo metadata). Changes: - Node router: drop dev.cospan.node.* VCS routes, keep only dev.panproto.node.* - Appview proxies: call dev.panproto.node.* upstream, serve at dev.panproto.node.proxy.* - Frontend node.ts and vcs.ts: call panproto namespace - Test files updated
Author: Aaron Steven White
Commit
123ce64358259a1bbb2ea1ffea4b87bf2f114e39Parent: 80872378da
Structural diff unavailable
These commits were pushed via plain git push, so no pre-parsed
schemas are available. Install git-remote-cospan and re-push via panproto:// to
see scope-level changes, breaking change detection, and semantic diffs.
brew install panproto/tap/git-remote-cospan7 files changed +61 -82
@@ -74,7 +74,7 @@ export function listRefs(
7474 did: string, 7575 repo: string 7676 ): Promise<NodeRefListResponse> { 77- return nodeXrpcQuery<NodeRefListResponse>(nodeUrl, 'dev.cospan.node.listRefs', { 77+ return nodeXrpcQuery<NodeRefListResponse>(nodeUrl, 'dev.panproto.node.listRefs', { 7878 did, 7979 repo 8080 });
@@ -86,7 +86,7 @@ export function getObject(
8686 repo: string, 8787 id: string 8888 ): Promise<NodeObject> { 89- return nodeXrpcQuery<NodeObject>(nodeUrl, 'dev.cospan.node.getObject', { 89+ return nodeXrpcQuery<NodeObject>(nodeUrl, 'dev.panproto.node.getObject', { 9090 did, 9191 repo, 9292 id
@@ -98,7 +98,7 @@ export function getHead(
9898 did: string, 9999 repo: string 100100 ): Promise<NodeHead> { 101- return nodeXrpcQuery<NodeHead>(nodeUrl, 'dev.cospan.node.getHead', { 101+ return nodeXrpcQuery<NodeHead>(nodeUrl, 'dev.panproto.node.getHead', { 102102 did, 103103 repo 104104 });
@@ -109,7 +109,7 @@ export function getRepoInfo(
109109 did: string, 110110 repo: string 111111 ): Promise<NodeRepoInfo> { 112- return nodeXrpcQuery<NodeRepoInfo>(nodeUrl, 'dev.cospan.node.getRepoInfo', { 112+ return nodeXrpcQuery<NodeRepoInfo>(nodeUrl, 'dev.panproto.node.getRepoInfo', { 113113 did, 114114 repo 115115 });
@@ -87,7 +87,7 @@ export function listCommits(params: {
8787 }; 8888 if (params.ref) query.ref = params.ref; 8989 if (params.limit) query.limit = params.limit; 90- return xrpcQuery<ListCommitsResponse>('dev.cospan.node.proxy.listCommits', query); 90+ return xrpcQuery<ListCommitsResponse>('dev.panproto.node.proxy.listCommits', query); 9191 } 9292 9393 export function diffCommits(params: {
@@ -104,7 +104,7 @@ export function diffCommits(params: {
104104 to: params.to, 105105 }; 106106 if (params.contextLines !== undefined) query.contextLines = params.contextLines; 107- return xrpcQuery<DiffCommitsResponse>('dev.cospan.node.proxy.diffCommits', query); 107+ return xrpcQuery<DiffCommitsResponse>('dev.panproto.node.proxy.diffCommits', query); 108108 } 109109 110110 // ─── Commit-graph lane assignment ──────────────────────────────────
@@ -141,23 +141,23 @@ pub fn router(state: Arc<AppState>) -> Router {
141141 ) 142142 // Node proxy (fetches from cospan nodes via panproto-xrpc) 143143 .route( 144- "/xrpc/dev.cospan.node.proxy.listRefs", 144+ "/xrpc/dev.panproto.node.proxy.listRefs", 145145 get(node_proxy::proxy_list_refs), 146146 ) 147147 .route( 148- "/xrpc/dev.cospan.node.proxy.getHead", 148+ "/xrpc/dev.panproto.node.proxy.getHead", 149149 get(node_proxy::proxy_get_head), 150150 ) 151151 .route( 152- "/xrpc/dev.cospan.node.proxy.getObject", 152+ "/xrpc/dev.panproto.node.proxy.getObject", 153153 get(node_proxy::proxy_get_object), 154154 ) 155155 .route( 156- "/xrpc/dev.cospan.node.proxy.listCommits", 156+ "/xrpc/dev.panproto.node.proxy.listCommits", 157157 get(node_proxy::proxy_list_commits), 158158 ) 159159 .route( 160- "/xrpc/dev.cospan.node.proxy.diffCommits", 160+ "/xrpc/dev.panproto.node.proxy.diffCommits", 161161 get(node_proxy::proxy_diff_commits), 162162 ) 163163 .route(
@@ -45,7 +45,7 @@ pub struct DiffCommitsParams {
4545 pub context_lines: Option<i64>, 4646 } 4747 48-/// GET /xrpc/dev.cospan.node.proxy.listRefs 48+/// GET /xrpc/dev.panproto.node.proxy.listRefs 4949 /// Proxies to the node hosting this repo. 5050 pub async fn proxy_list_refs( 5151 State(state): State<Arc<AppState>>,
@@ -55,7 +55,7 @@ pub async fn proxy_list_refs(
5555 &state, 5656 ¶ms.did, 5757 ¶ms.repo, 58- "dev.cospan.node.listRefs", 58+ "dev.panproto.node.listRefs", 5959 &[], 6060 ) 6161 .await
@@ -63,7 +63,7 @@ pub async fn proxy_list_refs(
6363 Ok(Json(result)) 6464 } 6565 66-/// GET /xrpc/dev.cospan.node.proxy.getHead 66+/// GET /xrpc/dev.panproto.node.proxy.getHead 6767 pub async fn proxy_get_head( 6868 State(state): State<Arc<AppState>>, 6969 Query(params): Query<RepoParams>,
@@ -84,7 +84,7 @@ pub async fn proxy_get_head(
8484 Ok(Json(serde_json::json!({ "head": head_json }))) 8585 } 8686 87-/// GET /xrpc/dev.cospan.node.proxy.listCommits 87+/// GET /xrpc/dev.panproto.node.proxy.listCommits 8888 pub async fn proxy_list_commits( 8989 State(state): State<Arc<AppState>>, 9090 Query(params): Query<ListCommitsParams>,
@@ -101,7 +101,7 @@ pub async fn proxy_list_commits(
101101 &state, 102102 ¶ms.did, 103103 ¶ms.repo, 104- "dev.cospan.node.listCommits", 104+ "dev.panproto.node.listCommits", 105105 &extra, 106106 ) 107107 .await
@@ -110,7 +110,7 @@ pub async fn proxy_list_commits(
110110 Ok(Json(result)) 111111 } 112112 113-/// GET /xrpc/dev.cospan.node.proxy.diffCommits 113+/// GET /xrpc/dev.panproto.node.proxy.diffCommits 114114 pub async fn proxy_diff_commits( 115115 State(state): State<Arc<AppState>>, 116116 Query(params): Query<DiffCommitsParams>,
@@ -127,7 +127,7 @@ pub async fn proxy_diff_commits(
127127 &state, 128128 ¶ms.did, 129129 ¶ms.repo, 130- "dev.cospan.node.diffCommits", 130+ "dev.panproto.node.diffCommits", 131131 &extra, 132132 ) 133133 .await
@@ -308,7 +308,7 @@ pub struct ListTreeParams {
308308 pub path: Option<String>, 309309 } 310310 311-/// GET /xrpc/dev.cospan.node.proxy.listTree 311+/// GET /xrpc/dev.panproto.node.proxy.listTree 312312 pub async fn proxy_list_tree( 313313 State(state): State<Arc<AppState>>, 314314 Query(params): Query<ListTreeParams>,
@@ -342,7 +342,7 @@ pub struct GetBlobParams {
342342 pub path: String, 343343 } 344344 345-/// GET /xrpc/dev.cospan.node.proxy.getBlob 345+/// GET /xrpc/dev.panproto.node.proxy.getBlob 346346 pub async fn proxy_get_blob( 347347 State(state): State<Arc<AppState>>, 348348 Query(params): Query<GetBlobParams>,
@@ -380,7 +380,7 @@ pub async fn proxy_get_import_status(
380380 Ok(Json(result)) 381381 } 382382 383-/// GET /xrpc/dev.cospan.node.proxy.getObject 383+/// GET /xrpc/dev.panproto.node.proxy.getObject 384384 pub async fn proxy_get_object( 385385 State(state): State<Arc<AppState>>, 386386 Query(params): Query<ObjectParams>,
@@ -484,7 +484,7 @@ async fn list_commits_returns_history_with_parents() {
484484 .await; 485485 486486 let url = format!( 487- "{}/xrpc/dev.cospan.node.listCommits?did=did:plc:owner&repo=graph-test&limit=50", 487+ "{}/xrpc/dev.panproto.node.listCommits?did=did:plc:owner&repo=graph-test&limit=50", 488488 node.url 489489 ); 490490 let client = Client::new();
@@ -515,7 +515,7 @@ async fn list_commits_returns_history_with_parents() {
515515 async fn list_commits_returns_404_for_unknown_repo() { 516516 let node = TestNode::spawn().await; 517517 let url = format!( 518- "{}/xrpc/dev.cospan.node.listCommits?did=did:plc:nobody&repo=nothing", 518+ "{}/xrpc/dev.panproto.node.listCommits?did=did:plc:nobody&repo=nothing", 519519 node.url 520520 ); 521521 let client = Client::new();
@@ -545,7 +545,7 @@ async fn diff_commits_shows_added_modified_removed_files() {
545545 .await; 546546 547547 let url = format!( 548- "{}/xrpc/dev.cospan.node.diffCommits?did=did:plc:owner&repo=diff-test&from={}&to={}", 548+ "{}/xrpc/dev.panproto.node.diffCommits?did=did:plc:owner&repo=diff-test&from={}&to={}", 549549 node.url, oids[0], oids[1] 550550 ); 551551 let client = Client::new();
@@ -605,7 +605,7 @@ async fn diff_commits_returns_hunks_with_line_content() {
605605 .await; 606606 607607 let url = format!( 608- "{}/xrpc/dev.cospan.node.diffCommits?did=did:plc:owner&repo=hunk-test&from={}&to={}", 608+ "{}/xrpc/dev.panproto.node.diffCommits?did=did:plc:owner&repo=hunk-test&from={}&to={}", 609609 node.url, oids[0], oids[1] 610610 ); 611611 let client = Client::new();
@@ -647,7 +647,7 @@ async fn diff_commits_reports_no_changes_for_same_commit() {
647647 .await; 648648 649649 let url = format!( 650- "{}/xrpc/dev.cospan.node.diffCommits?did=did:plc:owner&repo=same-test&from={}&to={}", 650+ "{}/xrpc/dev.panproto.node.diffCommits?did=did:plc:owner&repo=same-test&from={}&to={}", 651651 node.url, oids[0], oids[0] 652652 ); 653653 let client = Client::new();