@team-agent/installer 0.5.11 → 0.5.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/Cargo.lock CHANGED
@@ -575,7 +575,7 @@ dependencies = [
575
575
 
576
576
  [[package]]
577
577
  name = "team-agent"
578
- version = "0.5.11"
578
+ version = "0.5.12"
579
579
  dependencies = [
580
580
  "anyhow",
581
581
  "chrono",
package/Cargo.toml CHANGED
@@ -9,7 +9,7 @@ members = ["crates/team-agent", "crates/win-conpty-phase0", "crates/conpty-trans
9
9
 
10
10
  [workspace.package]
11
11
  edition = "2021"
12
- version = "0.5.11"
12
+ version = "0.5.12"
13
13
  license = "AGPL-3.0"
14
14
  rust-version = "1.95"
15
15
 
@@ -708,7 +708,7 @@ fn block_missing_worker_target(
708
708
  mark_worker_target_missing(store, event_log, message_id, recipient, None).map(Some)
709
709
  }
710
710
 
711
- fn mark_worker_target_missing(
711
+ pub(crate) fn mark_worker_target_missing(
712
712
  store: &MessageStore,
713
713
  event_log: &EventLog,
714
714
  message_id: &str,
@@ -10,7 +10,7 @@ use crate::transport::{PaneId, Transport};
10
10
 
11
11
  use super::helpers::{status_wire, MessageStatusShadow};
12
12
  use super::leader_receiver::{send_to_leader_receiver, send_to_leader_receiver_with_message_id};
13
- use super::{DeliveryOutcome, DeliveryRefusal, DeliveryStage, DeliveryStatus, MessagingError};
13
+ use super::{DeliveryOutcome, DeliveryRefusal, DeliveryStatus, MessagingError};
14
14
 
15
15
  /// 发件目标:单 target / 广播 `*` / 扇出 list (`send.py:36` `target: str|list[str]|None`)。
16
16
  #[derive(Debug, Clone, PartialEq, Eq)]
@@ -182,12 +182,14 @@ pub fn send_message(
182
182
  }
183
183
  }
184
184
  }
185
- if let Some(outcome) = stale_worker_target_preflight(workspace, &state, recipient, opts)? {
186
- return Ok(outcome);
187
- }
188
- if let Some(outcome) = coordinator_unavailable_outcome(workspace, recipient, opts, &event_log)?
189
- {
190
- return Ok(outcome);
185
+ let stale_worker_target_missing =
186
+ stale_worker_target_missing_preflight(workspace, &state, recipient)?;
187
+ if !stale_worker_target_missing {
188
+ if let Some(outcome) =
189
+ coordinator_unavailable_outcome(workspace, recipient, opts, &event_log)?
190
+ {
191
+ return Ok(outcome);
192
+ }
191
193
  }
192
194
  let store = crate::message_store::MessageStore::open(workspace)?;
193
195
  let task_id = opts.task_id.as_ref().map(|t| t.as_str());
@@ -222,6 +224,15 @@ pub fn send_message(
222
224
  owner_team_id,
223
225
  )?
224
226
  };
227
+ if stale_worker_target_missing {
228
+ return super::delivery::mark_worker_target_missing(
229
+ &store,
230
+ &event_log,
231
+ &message_id,
232
+ recipient,
233
+ None,
234
+ );
235
+ }
225
236
  Ok(DeliveryOutcome {
226
237
  ok: true,
227
238
  status: DeliveryStatus::Queued,
@@ -234,36 +245,23 @@ pub fn send_message(
234
245
  })
235
246
  }
236
247
 
237
- fn stale_worker_target_preflight(
248
+ fn stale_worker_target_missing_preflight(
238
249
  workspace: &Path,
239
250
  state: &serde_json::Value,
240
251
  recipient: &str,
241
- opts: &SendOptions,
242
- ) -> Result<Option<DeliveryOutcome>, MessagingError> {
252
+ ) -> Result<bool, MessagingError> {
243
253
  let Ok(resolved) = crate::transport_factory::resolve_read_only_transport(
244
254
  workspace,
245
255
  Some(state),
246
256
  crate::transport_factory::TransportPurpose::MessageDelivery,
247
257
  ) else {
248
- return Ok(None);
258
+ return Ok(false);
249
259
  };
250
- if !super::delivery::worker_target_missing_due_to_stale_binding(
260
+ Ok(super::delivery::worker_target_missing_due_to_stale_binding(
251
261
  state,
252
262
  recipient,
253
263
  resolved.backend.as_ref(),
254
- ) {
255
- return Ok(None);
256
- }
257
- Ok(Some(DeliveryOutcome {
258
- ok: false,
259
- status: DeliveryStatus::Blocked,
260
- message_status: MessageStatusShadow("queued_pane_missing".to_string()),
261
- message_id: opts.message_id.clone(),
262
- verification: Some(format!("run team-agent start-agent {recipient} --allow-fresh")),
263
- stage: Some(DeliveryStage::Inject),
264
- reason: Some(DeliveryRefusal::TmuxTargetMissing),
265
- channel: Some("delivery_blocked".to_string()),
266
- }))
264
+ ))
267
265
  }
268
266
 
269
267
  fn task_exists(state: &serde_json::Value, task_id: &TaskId) -> bool {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@team-agent/installer",
3
- "version": "0.5.11",
3
+ "version": "0.5.12",
4
4
  "description": "npx installer for Team Agent",
5
5
  "keywords": [
6
6
  "codex",
@@ -20,9 +20,9 @@
20
20
  "team-agent-installer": "npm/install.mjs"
21
21
  },
22
22
  "optionalDependencies": {
23
- "@team-agent/cli-darwin-arm64": "0.5.11",
24
- "@team-agent/cli-darwin-x64": "0.5.11",
25
- "@team-agent/cli-linux-x64": "0.5.11"
23
+ "@team-agent/cli-darwin-arm64": "0.5.12",
24
+ "@team-agent/cli-darwin-x64": "0.5.12",
25
+ "@team-agent/cli-linux-x64": "0.5.12"
26
26
  },
27
27
  "scripts": {
28
28
  "postinstall": "node npm/bincheck.mjs",