agent_permissions, agent_term and subagent_term take their wire contracts from swarm-wire
This commit is contained in:
parent
c06b1325e7
commit
839efd1642
27 changed files with 661 additions and 607 deletions
|
|
@ -20,7 +20,10 @@ use futures_util::StreamExt as _;
|
|||
use hive_types::Permission;
|
||||
use problem_details::ProblemDetails;
|
||||
use serde::{Deserialize, Serialize};
|
||||
use swarm_queue_client::agent_permissions::{self, AgentPermissions, Import, ImportReply};
|
||||
use swarm_queue_client::agent_permissions;
|
||||
use swarm_wire::agent_permissions::{
|
||||
AgentPermissions, Import, ImportReply, hive_from_import_subject, import_subject_wildcard,
|
||||
};
|
||||
use utoipa::ToSchema;
|
||||
|
||||
use crate::routes::{AppState, error_problem, wanted_error_status};
|
||||
|
|
@ -377,7 +380,7 @@ pub(crate) fn spawn(client: async_nats::Client, wanted: Arc<WantedWriter>, hives
|
|||
.await;
|
||||
}
|
||||
});
|
||||
let subject = agent_permissions::import_subject_wildcard();
|
||||
let subject = import_subject_wildcard();
|
||||
loop {
|
||||
match client.subscribe(subject.clone()).await {
|
||||
Ok(mut requests) => {
|
||||
|
|
@ -413,7 +416,7 @@ async fn answer_import(
|
|||
tracing::warn!(subject = %msg.subject, %error, "agent permissions: import refused");
|
||||
ImportReply::Failed { error }
|
||||
};
|
||||
let Some(hive) = agent_permissions::hive_from_import_subject(&msg.subject) else {
|
||||
let Some(hive) = hive_from_import_subject(&msg.subject) else {
|
||||
return failed(format!("{} is not an import subject", msg.subject));
|
||||
};
|
||||
if !hives.iter().any(|h| h == hive) {
|
||||
|
|
@ -529,7 +532,7 @@ mod tests {
|
|||
use axum::extract::{Path, State};
|
||||
use axum::http::StatusCode;
|
||||
use hive_types::Permission;
|
||||
use swarm_queue_client::agent_permissions::{Import, ImportReply};
|
||||
use swarm_wire::agent_permissions::{Import, ImportReply};
|
||||
|
||||
async fn published(client: &async_nats::Client, agent: &str) -> Option<String> {
|
||||
let store = swarm_queue_client::agent_permissions::open_or_create(client)
|
||||
|
|
|
|||
Loading…
Reference in a new issue