fix(runtime): isolate agent state by project (#101)
This commit is contained in:
@ -418,7 +418,10 @@ async fn save_then_list_then_delete() {
|
||||
let store = FakeProfileStore::default();
|
||||
let save = SaveProfile::new(Arc::new(store.clone()));
|
||||
let list = ListProfiles::new(Arc::new(store.clone()));
|
||||
let delete = DeleteProfile::new(Arc::new(store.clone()), Arc::new(FakeSecretStore::default()));
|
||||
let delete = DeleteProfile::new(
|
||||
Arc::new(store.clone()),
|
||||
Arc::new(FakeSecretStore::default()),
|
||||
);
|
||||
|
||||
let p = profile(1, "Claude", "claude");
|
||||
let saved = save
|
||||
@ -532,7 +535,10 @@ async fn save_opencode_provider_profile_drops_stale_local_backend() {
|
||||
.await
|
||||
.unwrap();
|
||||
|
||||
assert!(out.profile.opencode.is_none(), "stale local backend dropped");
|
||||
assert!(
|
||||
out.profile.opencode.is_none(),
|
||||
"stale local backend dropped"
|
||||
);
|
||||
assert_eq!(
|
||||
out.profile.opencode_provider.as_ref().unwrap().provider_id,
|
||||
"anthropic"
|
||||
@ -571,7 +577,13 @@ async fn delete_profile_with_opencode_provider_purges_its_secret() {
|
||||
})
|
||||
.await
|
||||
.unwrap();
|
||||
let secret_ref = saved.profile.opencode_provider.as_ref().unwrap().api_key_ref.clone();
|
||||
let secret_ref = saved
|
||||
.profile
|
||||
.opencode_provider
|
||||
.as_ref()
|
||||
.unwrap()
|
||||
.api_key_ref
|
||||
.clone();
|
||||
assert_eq!(
|
||||
secrets.get(&secret_ref).await.unwrap(),
|
||||
Some("sk-live-to-be-purged".to_owned())
|
||||
@ -707,8 +719,14 @@ async fn clone_opencode_profile_accepts_a_cloud_provider_seed() {
|
||||
)
|
||||
.unwrap(),
|
||||
);
|
||||
assert!(cloud_seed.opencode.is_none(), "precondition: cloud seed has no local backend");
|
||||
assert!(cloud_seed.opencode_provider.is_some(), "precondition: cloud seed has a provider");
|
||||
assert!(
|
||||
cloud_seed.opencode.is_none(),
|
||||
"precondition: cloud seed has no local backend"
|
||||
);
|
||||
assert!(
|
||||
cloud_seed.opencode_provider.is_some(),
|
||||
"precondition: cloud seed has a provider"
|
||||
);
|
||||
|
||||
SaveProfile::new(Arc::new(store.clone()))
|
||||
.execute(SaveProfileInput {
|
||||
@ -787,12 +805,13 @@ async fn clone_opencode_profile_falls_back_to_catalogue_when_persisted_seed_is_n
|
||||
None,
|
||||
)
|
||||
.unwrap();
|
||||
assert_eq!(squatter.structured_adapter, None, "precondition: not an OpenCode profile");
|
||||
assert_eq!(
|
||||
squatter.structured_adapter, None,
|
||||
"precondition: not an OpenCode profile"
|
||||
);
|
||||
|
||||
SaveProfile::new(Arc::new(store.clone()))
|
||||
.execute(SaveProfileInput {
|
||||
profile: squatter,
|
||||
})
|
||||
.execute(SaveProfileInput { profile: squatter })
|
||||
.await
|
||||
.unwrap();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user