bazaar-compute-node 0.2.1rc12__tar.gz → 0.2.1rc14__tar.gz
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.
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/PKG-INFO +1 -1
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/pyproject.toml +6 -3
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/pyproject.toml.orig +3 -2
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/app/server_management.py +3 -4
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/app/system_service.py +101 -9
- bazaar_compute_node-0.2.1rc14/src/bazaar_compute_node/core/paths.py +19 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/utils/children.py +19 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/resources/system_service/launchd.plist +2 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/resources/system_service/launchd.sh +2 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/resources/system_service/systemd.service +2 -1
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/resources/system_service/windows.ps1 +2 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/static/app.css +10 -3
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/static/components.js +10 -2
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/agent_contacts_head.html +0 -1
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/agents.html +6 -3
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/search.html +12 -9
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/search_results.html +1 -1
- bazaar_compute_node-0.2.1rc12/src/bazaar_compute_node/core/paths.py +0 -30
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/LICENSE +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/README.md +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/__init__.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/app/__init__.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/app/agent.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/app/agent_management.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/app/application.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/app/attachments.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/app/command.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/app/config.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/app/health_report.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/app/registry.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/app/resource_dispatch.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/app/transport.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/app/upgrade.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/app/usage.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/app/version_check.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/app/windows_pipe.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/app/wrapper.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/bcc.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/cli.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/cmd/__init__.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/cmd/bcc/__init__.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/cmd/bcc/_client.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/cmd/bcc/_format.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/cmd/bcc/inbox.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/cmd/bcc/message.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/cmd/bcc/node.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/cmd/bcc/reminder.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/cmd/bcc/thread.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/cmd/bcn/__init__.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/cmd/bcn/_options.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/cmd/bcn/_runner.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/cmd/bcn/agent.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/cmd/bcn/node.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/cmd/bcn/server.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/cmd/bcn/service.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/__init__.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/claude/__init__.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/claude/approval.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/claude/client.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/claude/events.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/claude/inspect.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/claude/plugin.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/claude/process.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/claude/protocol.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/claude/runtime.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/codex/__init__.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/codex/approval.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/codex/client.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/codex/events.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/codex/inspect.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/codex/plugin.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/codex/process.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/codex/protocol.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/codex/runtime.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/lark/__init__.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/lark/api.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/lark/approval.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/lark/attachments.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/lark/channel.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/lark/frame.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/lark/identity.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/lark/outbound.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/lark/plugin.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/lark/transport.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/logging/__init__.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/logging/audit.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/logging/plugin.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/server/__init__.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/server/audit.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/server/control.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/server/plugin.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/__init__.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/codec.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/database.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/executor.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/__init__.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/model.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/registry.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v01_initial_node_schema.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v02_session_mapping_indexes.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v03_message_log_indexes.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v04_runtime_attempt_facts.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v05_inbound_message_references.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v06_inbound_message_reference_integrity.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v07_inbound_provider_identity.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v08_transient_stream_events.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v09_remove_runtime_events.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v10_add_outbound_attachments.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v11_remove_runtime_session_mapping.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v12_add_reminders.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v13_add_agent_ownership.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v14_add_inbox_discovery_indexes.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v15_add_handoffs.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v16_remove_outbound_drafts.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v17_remove_agent_identity_triggers.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v18_unify_messages.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v19_reminder_system_messages.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v20_remove_freshness_persistence.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v21_remove_handoffs.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v22_readable_targets.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v23_persist_sender_identity.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v24_persist_sender_display_name.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v25_rename_sessions_to_threads.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v26_remove_handoff_messages.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v27_name_dms_by_the_peer_id.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v28_channel_session_identity.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v29_backfill_channel_identity.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v30_remove_command_id.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v31_channel_session_review.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/migrations/v32_message_search.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/plugin.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/reminder_codec.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/repository/__init__.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/repository/base.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/repository/facade.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/repository/messages.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/repository/reminders.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/repository/search.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/repository/sessions.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/repository/settings.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/sqlite/storage.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/telegram/__init__.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/telegram/api.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/telegram/approval.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/telegram/attachments.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/telegram/channel.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/telegram/identity.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/telegram/markdown.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/telegram/outbound.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/telegram/plugin.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/wecom/__init__.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/wecom/channel.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/wecom/identity.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/wecom/outbound.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/contrib/wecom/plugin.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/__init__.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/actor.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/agent.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/approval.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/audit.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/channel.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/client.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/command.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/concurrency.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/control.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/correlation.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/inbox.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/instruction.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/lifecycle.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/models/__init__.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/models/entities.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/models/events.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/models/reminder.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/models/reminder_owner.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/models/states.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/observability.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/orchestration/__init__.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/orchestration/commands/__init__.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/orchestration/commands/base.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/orchestration/commands/messages.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/orchestration/commands/reminders.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/orchestration/commands/review.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/orchestration/delivery.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/orchestration/error_feedback.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/orchestration/orchestrator.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/orchestration/reminder.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/orchestration/services.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/orchestration/turn.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/orchestration/upgrade_notice.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/outcomes.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/reminder.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/reminder_schedule.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/restart.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/review.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/runtime.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/serialize.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/storage.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/timerwheel.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/utils/__init__.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/utils/clock.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/utils/command.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/utils/line_reader.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/utils/markdown.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/utils/sanitization.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/core/utils/text.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/i18n/__init__.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/i18n/catalog.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/rendering.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/resources/approval_no_person.tpl +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/resources/bcc/check.tpl +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/resources/bcc/error.tpl +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/resources/bcc/inbox_check.tpl +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/resources/bcc/read.tpl +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/resources/bcc/reminder_list.tpl +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/resources/bcc/reminder_mutation.tpl +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/resources/bcc/reminder_schedule.tpl +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/resources/bcc/search.tpl +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/resources/bcc/unfollow.tpl +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/resources/bcc/upgrade.tpl +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/resources/bcc/version.tpl +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/resources/command/attachment_suffix.tpl +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/resources/command/check_message.tpl +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/resources/command/freshness_hold.tpl +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/resources/command/read_message.tpl +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/resources/command/send_result.tpl +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/resources/command/sender.tpl +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/resources/developer_instructions.md +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/resources/inbox_notice.tpl +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/resources/locales/en.toml +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/resources/locales/zh-CN.toml +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/resources/system_service/windows.vbs +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/resources/system_service/windows.xml +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/__init__.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/access.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/accounts.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/activity.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/app.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/cli.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/clock.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/config.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/configure.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/consumers.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/contacts.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/contrib/__init__.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/contrib/sqlite/__init__.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/contrib/sqlite/migrations/__init__.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/contrib/sqlite/migrations/model.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/contrib/sqlite/migrations/registry.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/contrib/sqlite/migrations/v01_initial_server_schema.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/contrib/sqlite/migrations/v02_refs.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/contrib/sqlite/migrations/v03_roles_oidc.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/contrib/sqlite/migrations/v04_login_order.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/contrib/sqlite/migrations/v05_provider_description.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/contrib/sqlite/migrations/v06_provider_default_role.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/contrib/sqlite/migrations/v07_oidc_session_settings.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/contrib/sqlite/plugin.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/contrib/sqlite/storage.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/control.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/fleet.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/gate.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/history.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/i18n.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/images.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/markdown.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/pages/__init__.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/pages/accounts.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/pages/agents.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/pages/computers.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/pages/login.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/pages/oidc.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/pages/oidc_login.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/pages/poll.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/pages/profile.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/pages/roles.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/pages/settings.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/pages/shares.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/permissions.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/poll_rendering.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/polling.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/protocol.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/reauth.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/refs.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/registry.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/rendering.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/locales/en.toml +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/locales/zh-CN.toml +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/static/THIRD_PARTY.md +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/static/agent-form.js +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/static/alpine-3.17.4.min.js +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/static/alpine-LICENSE.txt +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/static/alpine-collapse-3.17.4.min.js +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/static/alpine-collapse-LICENSE.txt +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/static/alpine-focus-3.17.4.min.js +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/static/alpine-focus-LICENSE.txt +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/static/app.webmanifest +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/static/apple-touch-icon.png +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/static/favicon.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/static/htmx-LICENSE.txt +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/static/htmx.min.js +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/static/hx-alpine-compat-4.0.0.js +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/static/icon-192.png +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/static/icon-512.png +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/static/poll.js +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/activity_card.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/agent_form.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/agent_kinds.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/agent_list.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/agent_models.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/agent_new.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/agent_profile.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/agent_profile_activity.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/agent_profile_config.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/agent_profile_events.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/agent_profile_files.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/agent_profile_head.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/agent_profile_sharing.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/agent_profile_skills.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/agent_profile_status.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/agent_profile_workspace.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/agent_remove.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/agent_row.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/agent_rows.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/board.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/chat.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/code.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/components.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/computer_detail.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/computer_list.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/computer_row.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/computer_rows.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/computers.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/contact_rows.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/contacts.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/conversation_reminders.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/enrol_form.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/enrolled.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/error.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/history.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/history_end.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/history_rows.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/history_tail.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/alarm-clock.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/arrow-down.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/arrow-left.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/arrow-right.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/arrow-up.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/calendar.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/check.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/chevron-down.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/chevron-left.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/chevron-right.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/chevron-up.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/chevrons-down.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/copy.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/file.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/folder.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/grid-2x2.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/key-round.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/languages.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/lark.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/loader.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/log-out.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/message-circle.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/message-square-text.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/monitor.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/openai.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/paperclip.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/pencil.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/plus.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/repeat.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/rotate-cw.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/search.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/settings.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/si-apple.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/si-claude.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/si-linux.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/si-telegram.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/sun-moon.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/trash-2.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/triangle-alert.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/unplug.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/user-plus.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/users.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/wecom.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/icons/x.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/image.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/login.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/login_form.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/password_form.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/presence.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/profile.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/rail.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/remove_ask.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/remove_form.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/review_card.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/scripts.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/settings.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/settings_accounts.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/settings_appearance.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/settings_oidc.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/settings_roles.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/settings_security.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/shares.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/shell.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/sign.svg +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/resources/templates/unreachable.html +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/review.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/search.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/secrets.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/sessions.py +0 -0
- {bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_server/storage.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "bazaar-compute-node"
|
|
3
|
-
version = "0.2.
|
|
3
|
+
version = "0.2.1rc14"
|
|
4
4
|
description = "Runtime-agnostic computer node daemon for agents and channels."
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
license = "AGPL-3.0-only"
|
|
@@ -78,8 +78,11 @@ module-name = [
|
|
|
78
78
|
]
|
|
79
79
|
|
|
80
80
|
[tool.pytest.ini_options]
|
|
81
|
-
addopts = "-m 'not e2e' -p no:anyio"
|
|
82
|
-
markers = [
|
|
81
|
+
addopts = "-m 'not e2e and not system' -p no:anyio"
|
|
82
|
+
markers = [
|
|
83
|
+
"e2e: requires a real external provider",
|
|
84
|
+
"system: runs real native system services in an isolated environment",
|
|
85
|
+
]
|
|
83
86
|
|
|
84
87
|
[build-system]
|
|
85
88
|
requires = ["uv_build>=0.12.2,<0.13.0"]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "bazaar-compute-node"
|
|
3
|
-
version = "0.2.
|
|
3
|
+
version = "0.2.1rc14"
|
|
4
4
|
description = "Runtime-agnostic computer node daemon for agents and channels."
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
license = "AGPL-3.0-only"
|
|
@@ -73,9 +73,10 @@ bcn-test-support = { path = "tests/support", editable = true }
|
|
|
73
73
|
[tool.pytest.ini_options]
|
|
74
74
|
# anyio arrives with starlette and brings a pytest plugin that fights
|
|
75
75
|
# pytest-asyncio over the event loop; the suite runs on pytest-asyncio alone
|
|
76
|
-
addopts = "-m 'not e2e' -p no:anyio"
|
|
76
|
+
addopts = "-m 'not e2e and not system' -p no:anyio"
|
|
77
77
|
markers = [
|
|
78
78
|
"e2e: requires a real external provider",
|
|
79
|
+
"system: runs real native system services in an isolated environment",
|
|
79
80
|
]
|
|
80
81
|
|
|
81
82
|
[build-system]
|
|
@@ -13,10 +13,9 @@ from .config import (
|
|
|
13
13
|
NodeConfiguration,
|
|
14
14
|
_replace_file,
|
|
15
15
|
load_node_configuration,
|
|
16
|
-
resolve_config_path,
|
|
17
16
|
write_configuration,
|
|
18
17
|
)
|
|
19
|
-
from .system_service import default_env_file, installed_env_file
|
|
18
|
+
from .system_service import default_env_file, installed_env_file, resolve_service_paths
|
|
20
19
|
from .usage import Usage
|
|
21
20
|
|
|
22
21
|
TOKEN_ENV = "BCN_SERVER_TOKEN"
|
|
@@ -31,7 +30,7 @@ def run_server_command(args: argparse.Namespace, parser: Usage) -> int:
|
|
|
31
30
|
or args.foreground
|
|
32
31
|
):
|
|
33
32
|
parser.error("bcn server commands only accept the node-level --config option")
|
|
34
|
-
config_path = (args.config
|
|
33
|
+
config_path, _ = resolve_service_paths(args.config)
|
|
35
34
|
try:
|
|
36
35
|
configuration = load_node_configuration(config_path)
|
|
37
36
|
except ConfigurationError as error:
|
|
@@ -61,7 +60,7 @@ def _connect(
|
|
|
61
60
|
parser.error("--token must not contain quotes or line breaks")
|
|
62
61
|
# a registered service already said which file it reads; before any
|
|
63
62
|
# registration the default is ours to set, and the install must match it
|
|
64
|
-
registered = installed_env_file()
|
|
63
|
+
registered = installed_env_file(registered=True)
|
|
65
64
|
env_file = (args.env_file or registered or default_env_file()).expanduser()
|
|
66
65
|
options = MappingProxyType({"url": url, "token_env": TOKEN_ENV})
|
|
67
66
|
updated = replace(
|
|
@@ -88,12 +88,13 @@ def _build_context(
|
|
|
88
88
|
"bcn system-service commands only accept the node-level --config option"
|
|
89
89
|
)
|
|
90
90
|
executable = _resolve_executable() if require_executable else None
|
|
91
|
-
config_path = (
|
|
91
|
+
config_path, data_dir = resolve_service_paths(
|
|
92
|
+
args.config, registered=not require_executable
|
|
93
|
+
)
|
|
92
94
|
# the service reads the same file `bcn server connect` writes to unless
|
|
93
95
|
# told another; none of the platforms minds the file not existing yet
|
|
94
96
|
env_file = (getattr(args, "env_file", None) or default_env_file()).expanduser()
|
|
95
97
|
env_file = env_file.resolve()
|
|
96
|
-
data_dir = resolve_data_dir()
|
|
97
98
|
return SystemServiceContext(
|
|
98
99
|
executable=executable,
|
|
99
100
|
config_path=config_path,
|
|
@@ -104,6 +105,61 @@ def _build_context(
|
|
|
104
105
|
)
|
|
105
106
|
|
|
106
107
|
|
|
108
|
+
def resolve_service_paths(
|
|
109
|
+
config: Path | None = None, *, registered: bool = True
|
|
110
|
+
) -> tuple[Path, Path]:
|
|
111
|
+
"""Read the node paths selected by an installed service, without account lookup."""
|
|
112
|
+
|
|
113
|
+
config_path = (config or resolve_config_path()).expanduser().resolve()
|
|
114
|
+
data_dir = resolve_data_dir()
|
|
115
|
+
if registered:
|
|
116
|
+
system = platform.system()
|
|
117
|
+
if system == "Linux":
|
|
118
|
+
unit_path = _systemd_unit_path()
|
|
119
|
+
if _is_managed(unit_path):
|
|
120
|
+
values = dict(
|
|
121
|
+
line.split("=", 1)
|
|
122
|
+
for line in unit_path.read_text(encoding="utf-8").splitlines()
|
|
123
|
+
if "=" in line
|
|
124
|
+
)
|
|
125
|
+
data_dir = Path(values["WorkingDirectory"].replace("%%", "%"))
|
|
126
|
+
if config is None:
|
|
127
|
+
command = shlex.split(values["ExecStart"])
|
|
128
|
+
config_path = Path(
|
|
129
|
+
command[command.index("--config") + 1].replace("%%", "%")
|
|
130
|
+
)
|
|
131
|
+
elif system == "Darwin":
|
|
132
|
+
plist_path, _ = _launchd_paths()
|
|
133
|
+
if _is_managed(plist_path):
|
|
134
|
+
with plist_path.open("rb") as stream:
|
|
135
|
+
values = plistlib.load(stream)
|
|
136
|
+
data_dir = Path(values["WorkingDirectory"])
|
|
137
|
+
if config is None:
|
|
138
|
+
config_path = Path(values["EnvironmentVariables"]["BCN_CONFIG"])
|
|
139
|
+
elif system == "Windows":
|
|
140
|
+
directory = _windows_service_data_dir()
|
|
141
|
+
if directory is not None:
|
|
142
|
+
data_dir = directory
|
|
143
|
+
if config is None:
|
|
144
|
+
_, script_path, _ = _windows_paths(data_dir)
|
|
145
|
+
if not _is_managed(script_path):
|
|
146
|
+
raise RuntimeError(
|
|
147
|
+
"registered system service wrapper is missing or unmanaged"
|
|
148
|
+
)
|
|
149
|
+
for line in script_path.read_text(encoding="utf-8").splitlines():
|
|
150
|
+
if line.startswith("$configPath = '"):
|
|
151
|
+
value = line.removeprefix("$configPath = '").removesuffix(
|
|
152
|
+
"'"
|
|
153
|
+
)
|
|
154
|
+
config_path = Path(value.replace("''", "'"))
|
|
155
|
+
break
|
|
156
|
+
else:
|
|
157
|
+
raise RuntimeError(
|
|
158
|
+
"registered system service wrapper has no config path"
|
|
159
|
+
)
|
|
160
|
+
return config_path, data_dir
|
|
161
|
+
|
|
162
|
+
|
|
107
163
|
def _resolve_current_user() -> str:
|
|
108
164
|
try:
|
|
109
165
|
return getpass.getuser()
|
|
@@ -123,8 +179,11 @@ def _require_executable(context: SystemServiceContext) -> Path:
|
|
|
123
179
|
return context.executable
|
|
124
180
|
|
|
125
181
|
|
|
126
|
-
def _systemd_quote(path: Path) -> str:
|
|
127
|
-
|
|
182
|
+
def _systemd_quote(path: Path | str, *, quote: bool = True) -> str:
|
|
183
|
+
value = str(path).replace("%", "%%")
|
|
184
|
+
return (
|
|
185
|
+
'"' + value.replace("\\", "\\\\").replace('"', '\\"') + '"' if quote else value
|
|
186
|
+
)
|
|
128
187
|
|
|
129
188
|
|
|
130
189
|
def _powershell_literal(path: Path | str | None) -> str:
|
|
@@ -138,8 +197,9 @@ def _render_systemd_unit(context: SystemServiceContext) -> str:
|
|
|
138
197
|
"managed_marker": MANAGED_MARKER,
|
|
139
198
|
"executable": _systemd_quote(_require_executable(context)),
|
|
140
199
|
"config_path": _systemd_quote(context.config_path),
|
|
141
|
-
"data_dir": _systemd_quote(context.data_dir),
|
|
142
|
-
"
|
|
200
|
+
"data_dir": _systemd_quote(context.data_dir, quote=False),
|
|
201
|
+
"home_environment": _systemd_quote(f"BCN_HOME={context.data_dir.parent}"),
|
|
202
|
+
"environment_file": _systemd_quote(context.env_file, quote=False),
|
|
143
203
|
}
|
|
144
204
|
)
|
|
145
205
|
|
|
@@ -158,6 +218,7 @@ def _render_launchd_plist(
|
|
|
158
218
|
"managed_marker": MANAGED_MARKER,
|
|
159
219
|
"wrapper_path": str(wrapper_path),
|
|
160
220
|
"data_dir": str(context.data_dir),
|
|
221
|
+
"home_dir": str(context.data_dir.parent),
|
|
161
222
|
"config_path": str(context.config_path),
|
|
162
223
|
"environment_file": str(context.env_file),
|
|
163
224
|
"executable": str(_require_executable(context)),
|
|
@@ -172,6 +233,7 @@ def _render_windows_wrapper(context: SystemServiceContext) -> str:
|
|
|
172
233
|
"managed_marker": MANAGED_MARKER,
|
|
173
234
|
"executable": _powershell_literal(_require_executable(context)),
|
|
174
235
|
"config_path": _powershell_literal(context.config_path),
|
|
236
|
+
"home_dir": _powershell_literal(context.data_dir.parent),
|
|
175
237
|
"environment_script": _powershell_literal(context.env_file),
|
|
176
238
|
"log_path": _powershell_literal(context.log_path),
|
|
177
239
|
}
|
|
@@ -387,7 +449,31 @@ def default_env_file() -> Path:
|
|
|
387
449
|
return Path.home() / ".config" / "bcn" / name
|
|
388
450
|
|
|
389
451
|
|
|
390
|
-
def
|
|
452
|
+
def _windows_service_data_dir() -> Path | None:
|
|
453
|
+
task_path = _powershell_literal("\\")
|
|
454
|
+
task_name = _powershell_literal(WINDOWS_TASK_NAME.lstrip("\\"))
|
|
455
|
+
query_script = "\n".join(
|
|
456
|
+
(
|
|
457
|
+
"$ErrorActionPreference = 'Stop'",
|
|
458
|
+
f"$task = Get-ScheduledTask -TaskPath {task_path} -TaskName {task_name}",
|
|
459
|
+
f"if ($task.Description -eq {_powershell_literal(MANAGED_MARKER)}) {{",
|
|
460
|
+
" $task.Actions.WorkingDirectory",
|
|
461
|
+
"}",
|
|
462
|
+
"",
|
|
463
|
+
)
|
|
464
|
+
)
|
|
465
|
+
queried = _run_native_command(
|
|
466
|
+
["powershell.exe", "-NoProfile", "-NonInteractive", "-Command", query_script],
|
|
467
|
+
check=False,
|
|
468
|
+
)
|
|
469
|
+
return (
|
|
470
|
+
Path(queried.stdout.strip())
|
|
471
|
+
if queried.returncode == 0 and queried.stdout.strip()
|
|
472
|
+
else None
|
|
473
|
+
)
|
|
474
|
+
|
|
475
|
+
|
|
476
|
+
def installed_env_file(*, registered: bool = False) -> Path | None:
|
|
391
477
|
"""The environment file the registered service was told to read, if any;
|
|
392
478
|
a service file at our path that is not ours says nothing."""
|
|
393
479
|
|
|
@@ -399,7 +485,7 @@ def installed_env_file() -> Path | None:
|
|
|
399
485
|
for line in unit_path.read_text(encoding="utf-8").splitlines():
|
|
400
486
|
if line.startswith("EnvironmentFile="):
|
|
401
487
|
value = line.removeprefix("EnvironmentFile=").removeprefix("-")
|
|
402
|
-
return Path(
|
|
488
|
+
return Path(value.replace("%%", "%")) if value else None
|
|
403
489
|
return None
|
|
404
490
|
if system == "Darwin":
|
|
405
491
|
plist_path, _ = _launchd_paths()
|
|
@@ -413,7 +499,12 @@ def installed_env_file() -> Path | None:
|
|
|
413
499
|
)
|
|
414
500
|
return Path(value) if isinstance(value, str) and value else None
|
|
415
501
|
if system == "Windows":
|
|
416
|
-
|
|
502
|
+
data_dir = (
|
|
503
|
+
_windows_service_data_dir() or resolve_data_dir()
|
|
504
|
+
if registered
|
|
505
|
+
else resolve_data_dir()
|
|
506
|
+
)
|
|
507
|
+
_, script_path, _ = _windows_paths(data_dir)
|
|
417
508
|
if not _is_managed(script_path):
|
|
418
509
|
return None
|
|
419
510
|
for line in script_path.read_text(encoding="utf-8").splitlines():
|
|
@@ -900,5 +991,6 @@ __all__ = [
|
|
|
900
991
|
"SystemServiceContext",
|
|
901
992
|
"default_env_file",
|
|
902
993
|
"installed_env_file",
|
|
994
|
+
"resolve_service_paths",
|
|
903
995
|
"run_system_service_command",
|
|
904
996
|
]
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
|
|
3
|
+
import os
|
|
4
|
+
from pathlib import Path
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
def resolve_data_dir() -> Path:
|
|
8
|
+
"""Resolve .bcn under BCN_HOME or the user's home."""
|
|
9
|
+
|
|
10
|
+
path = Path(os.environ.get("BCN_HOME") or Path.home())
|
|
11
|
+
return path.expanduser().resolve() / ".bcn"
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
def resolve_workspace_dir(agent_id: str) -> Path:
|
|
15
|
+
"""Resolve the persistent workspace owned by one configured Agent."""
|
|
16
|
+
|
|
17
|
+
if not isinstance(agent_id, str) or not agent_id:
|
|
18
|
+
raise ValueError("agent_id must be a non-empty string")
|
|
19
|
+
return resolve_data_dir() / "workspaces" / agent_id
|
|
@@ -69,6 +69,9 @@ def _signal_group(pid: int, number: signal.Signals) -> None:
|
|
|
69
69
|
os.killpg(pid, number)
|
|
70
70
|
except ProcessLookupError:
|
|
71
71
|
pass
|
|
72
|
+
except PermissionError:
|
|
73
|
+
if sys.platform != "darwin" or _group_has_live_members(pid):
|
|
74
|
+
raise
|
|
72
75
|
|
|
73
76
|
|
|
74
77
|
def _group_alive(pid: int) -> bool:
|
|
@@ -76,9 +79,25 @@ def _group_alive(pid: int) -> bool:
|
|
|
76
79
|
os.killpg(pid, 0)
|
|
77
80
|
except ProcessLookupError:
|
|
78
81
|
return False
|
|
82
|
+
except PermissionError:
|
|
83
|
+
if sys.platform != "darwin" or _group_has_live_members(pid):
|
|
84
|
+
raise
|
|
85
|
+
return False
|
|
79
86
|
return True
|
|
80
87
|
|
|
81
88
|
|
|
89
|
+
def _group_has_live_members(pid: int) -> bool:
|
|
90
|
+
# Darwin also returns EPERM for a group containing only zombies. Check
|
|
91
|
+
# the kernel's process list before treating a permission error as exit.
|
|
92
|
+
result = subprocess.run(
|
|
93
|
+
["ps", "-axo", "pgid=,stat="], capture_output=True, text=True, check=True
|
|
94
|
+
)
|
|
95
|
+
return any(
|
|
96
|
+
int(group) == pid and not state.startswith("Z")
|
|
97
|
+
for group, state in (line.split() for line in result.stdout.splitlines())
|
|
98
|
+
)
|
|
99
|
+
|
|
100
|
+
|
|
82
101
|
async def _end_tree(pid: int) -> None:
|
|
83
102
|
process = await asyncio.create_subprocess_exec(
|
|
84
103
|
"taskkill",
|
|
@@ -4,8 +4,9 @@ Description=Bazaar Compute Node
|
|
|
4
4
|
|
|
5
5
|
[Service]
|
|
6
6
|
Type=simple
|
|
7
|
-
ExecStart
|
|
7
|
+
ExecStart=:env {{ home_environment }} {{ executable }} run --config {{ config_path }}
|
|
8
8
|
WorkingDirectory={{ data_dir }}
|
|
9
|
+
Environment={{ home_environment }}
|
|
9
10
|
{% if environment_file %}EnvironmentFile=-{{ environment_file }}
|
|
10
11
|
{% endif %}Restart=on-failure
|
|
11
12
|
RestartSec=5
|
|
@@ -604,7 +604,7 @@ a:focus-visible, button:focus-visible { outline: 2px solid var(--accent); outlin
|
|
|
604
604
|
.module[data-view="settings"] > [data-pane="settings"],
|
|
605
605
|
.module[data-view="section"] > [data-pane="section"] { display: flex; }
|
|
606
606
|
.mobile-logout { display: inline-flex; align-self: flex-start; gap: 8px; min-height: 44px; margin: 12px 16px; }
|
|
607
|
-
[data-pane="contacts"]
|
|
607
|
+
[data-pane="contacts"] .switch .tab { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 44px; }
|
|
608
608
|
}
|
|
609
609
|
|
|
610
610
|
/* Shared editing surfaces keep their controls within the available viewport. */
|
|
@@ -831,7 +831,9 @@ a:focus-visible, button:focus-visible { outline: 2px solid var(--accent); outlin
|
|
|
831
831
|
.chat-actions { display: flex; align-items: center; gap: 8px; margin-left: auto; flex: none; }
|
|
832
832
|
.search-open.btn.icon { margin-left: 0; flex: none; border-color: transparent; background: transparent; }
|
|
833
833
|
.search-shortcut { color: var(--muted); font-size: 10px; font-weight: 400; border: 1px solid var(--edge); border-radius: 4px; padding: 1px 4px; line-height: 1.6; }
|
|
834
|
-
|
|
834
|
+
.contacts-toolbar { display: flex; align-items: center; gap: 8px; margin: 8px 14px 0; padding: 2px 2px 8px; border-bottom: 1px solid var(--line); flex: none; }
|
|
835
|
+
.contacts-toolbar .switch { flex: 1; min-width: 0; margin: 0; padding: 0; border: 0; }
|
|
836
|
+
.contacts-toolbar .search-shortcut { display: none; }
|
|
835
837
|
.search-location { display: none; align-items: center; gap: 6px; color: var(--muted); font-size: 11px; font-weight: 400; }
|
|
836
838
|
.search-location::before { content: ''; width: 6px; height: 6px; background: var(--accent); border-radius: 50%; }
|
|
837
839
|
#chat:has(.message-focus:not(.message-fade)) .search-location { display: flex; }
|
|
@@ -901,7 +903,9 @@ a:focus-visible, button:focus-visible { outline: 2px solid var(--accent); outlin
|
|
|
901
903
|
.search-toolbar { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; border-top: 1px solid var(--line); padding: 9px 20px; flex: none; color: var(--muted); font-size: 11px; }
|
|
902
904
|
.search-count { margin-left: auto; }
|
|
903
905
|
.search-toolbar .btn { padding: 0; border: 0; background: transparent; color: var(--muted); font-size: inherit; }
|
|
904
|
-
.search-
|
|
906
|
+
.search-result-body { position: relative; display: flex; min-height: 0; flex: 0 1 385px; max-height: 48vh; }
|
|
907
|
+
.search-results { min-width: 0; min-height: 0; overflow-y: auto; overflow-anchor: none; overscroll-behavior: contain; padding: 0 8px 8px; flex: 1; }
|
|
908
|
+
.search-loading { position: absolute; inset: 0; min-height: 0; background: var(--panel); }
|
|
905
909
|
.search-hit { display: block; border-radius: var(--r-sm); padding: 12px; }
|
|
906
910
|
.search-hit { margin-bottom: 2px; }
|
|
907
911
|
.search-hit:hover { background: var(--chip); }
|
|
@@ -921,8 +925,11 @@ a:focus-visible, button:focus-visible { outline: 2px solid var(--accent); outlin
|
|
|
921
925
|
.search-foot kbd { display: inline-flex; align-items: center; justify-content: center; min-width: 20px; height: 20px; vertical-align: middle; border: 1px solid var(--edge); border-radius: 3px; padding: 0 4px; font: inherit; margin-right: 4px; }
|
|
922
926
|
.search-foot kbd .i svg { width: 12px; height: 12px; }
|
|
923
927
|
.search-feedback { color: var(--muted); padding: 12px 10px; }
|
|
928
|
+
.search-error { display: flex; align-items: center; gap: 6px; }
|
|
929
|
+
.search-error .btn.icon { flex: none; margin-left: 0; border: 0; background: transparent; color: inherit; }
|
|
924
930
|
.search-more { display: flex; margin: 8px auto; }
|
|
925
931
|
@media (max-width: 959px) {
|
|
932
|
+
.contacts-toolbar { margin-inline: 10px; }
|
|
926
933
|
#chat > .hd > .sub { order: 1; }
|
|
927
934
|
.search-shortcut, #chat:has(.message-focus:not(.message-fade)) .search-location { display: none; }
|
|
928
935
|
.search-veil { padding: min(90px, 10vh) max(12px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left)); }
|
|
@@ -266,6 +266,7 @@ document.addEventListener('alpine:init', () => {
|
|
|
266
266
|
if (!this.s.query.trim() && !this.s.target && !this.s.sender && !this.s.time) {
|
|
267
267
|
this.s.html = ''; this.s.items = []; this.s.ends = []; this.s.count = 0; this.s.more = false; this.s.senders = []; this.s.contactCounts = {};
|
|
268
268
|
this.s.offset = 0; this.s.scroll = 0; this.s.anchor = null; this.s.selected = -1;
|
|
269
|
+
this.s.resultsVersion = this.s.version;
|
|
269
270
|
this.$nextTick(() => this.rendered());
|
|
270
271
|
return;
|
|
271
272
|
}
|
|
@@ -325,7 +326,14 @@ document.addEventListener('alpine:init', () => {
|
|
|
325
326
|
this.positions();
|
|
326
327
|
this.$nextTick(() => this.rendered());
|
|
327
328
|
} catch (error) {
|
|
328
|
-
if (error.name !== 'AbortError' && this.active && scope === this.scope && version === state.version)
|
|
329
|
+
if (error.name !== 'AbortError' && this.active && scope === this.scope && version === state.version) {
|
|
330
|
+
state.error = this.labels.failed;
|
|
331
|
+
if (!append) {
|
|
332
|
+
state.html = ''; state.items = []; state.ends = []; state.count = 0; state.more = false; state.senders = []; state.contactCounts = {};
|
|
333
|
+
state.offset = 0; state.scroll = 0; state.anchor = null; state.selected = -1; state.resultsVersion = version;
|
|
334
|
+
this.$nextTick(() => this.rendered());
|
|
335
|
+
}
|
|
336
|
+
}
|
|
329
337
|
} finally {
|
|
330
338
|
if (scope === this.scope && version === state.version) { state.busy = false; this.controller = null; }
|
|
331
339
|
}
|
|
@@ -420,7 +428,7 @@ document.addEventListener('alpine:init', () => {
|
|
|
420
428
|
},
|
|
421
429
|
key(event) {
|
|
422
430
|
if (event.target !== this.$refs.input || this.composing || event.isComposing || this.s.panel || !['ArrowUp', 'ArrowDown', 'Enter'].includes(event.key)) return;
|
|
423
|
-
if (!this.s.count) return;
|
|
431
|
+
if (!this.s.count || this.s.resultsVersion !== this.s.version) return;
|
|
424
432
|
event.preventDefault();
|
|
425
433
|
if (event.key !== 'Enter') {
|
|
426
434
|
this.s.selected = Math.max(0, Math.min(this.s.count - 1, this.s.selected + (event.key === 'ArrowDown' ? 1 : -1)));
|
|
@@ -2,6 +2,5 @@
|
|
|
2
2
|
<div id="agent-contacts-head" x-poll data-poll='{{ poll("agent-info", selected)|tojson }}' data-poll-url="/agents/{{ ref(selected.computer_id) }}/{{ ref(selected.id) }}/head">
|
|
3
3
|
{% call c.column_header(selected.name, back="/agents") %}
|
|
4
4
|
<span class="sub">{{ c.system(selected) }}{{ c.channels(selected.channels) }}</span>
|
|
5
|
-
{{ c.search_button() }}
|
|
6
5
|
{% endcall %}
|
|
7
6
|
</div>
|
|
@@ -13,9 +13,12 @@
|
|
|
13
13
|
{% include "agent_contacts_head.html" %}
|
|
14
14
|
{% set base = "/agents/" ~ ref(selected.computer_id) ~ "/" ~ ref(selected.id) %}
|
|
15
15
|
{% set query = ["review=pending" if pending, "selected=" ~ ref(contact.thread_id) if contact]|select|join("&") %}
|
|
16
|
-
<div class="
|
|
17
|
-
<
|
|
18
|
-
|
|
16
|
+
<div class="contacts-toolbar">
|
|
17
|
+
<div class="switch text">
|
|
18
|
+
<button class="tab{% if not pending %} on{% endif %}" type="button" title="{{ t.text("contacts.tab_chats") }}" hx-get="{{ base }}" hx-target="#main" hx-push-url="true" hx-sync="#contacts:replace">{{ c.icon("message-circle") }}{{ t.text("contacts.tab_chats") }}</button>
|
|
19
|
+
<button class="tab{% if pending %} on{% endif %}" type="button" title="{{ t.text("contacts.tab_requests") }}" hx-get="{{ base }}?review=pending" hx-target="#main" hx-push-url="true" hx-sync="#contacts:replace">{{ c.icon("user-plus") }}{{ t.text("contacts.tab_requests") }}<span class="n" id="pending-review" hidden></span></button>
|
|
20
|
+
</div>
|
|
21
|
+
<span class="chat-actions">{{ c.search_button() }}</span>
|
|
19
22
|
</div>
|
|
20
23
|
{# the conversations are the node's to list, so the page comes up first and
|
|
21
24
|
the column asks for them once it is there #}
|
|
@@ -50,15 +50,18 @@
|
|
|
50
50
|
<span>{{ t.text('search.messages') }}</span><span class="search-count" aria-live="polite" x-text="'{{ t.text('search.loaded', {'n': '{n}'}) }}'.replace('{n}', s.count)"></span>
|
|
51
51
|
<button class="btn sm" type="button" x-show="s.target || s.sender || s.time" @click="clear()">{{ t.text('search.clear') }}</button>
|
|
52
52
|
</div>
|
|
53
|
-
<div class="search-
|
|
54
|
-
<div class="
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
53
|
+
<div class="search-result-body">
|
|
54
|
+
<div class="search-results" x-ref="results" @scroll="scrolled()" :aria-busy="s.busy" :inert="s.resultsVersion !== s.version">
|
|
55
|
+
<div class="empty" x-show="!s.count && !s.html && !s.busy && !s.error">{{ t.text('search.prompt') }}</div>
|
|
56
|
+
<div x-html="s.html"></div>
|
|
57
|
+
<div x-ref="top" aria-hidden="true"></div>
|
|
58
|
+
<div x-ref="items"></div>
|
|
59
|
+
<div x-ref="bottom" aria-hidden="true"></div>
|
|
60
|
+
<div class="search-feedback search-error" x-show="s.error"><span role="status" x-text="s.error"></span><button class="btn icon" type="button" @click="change()" title="{{ t.text('contacts.retry') }}" aria-label="{{ t.text('contacts.retry') }}">{{ c.icon('rotate-cw') }}</button></div>
|
|
61
|
+
<div class="loading" x-show="s.busy && s.resultsVersion === s.version" role="status" aria-label="{{ t.text('app.loading') }}">{{ c.icon('loader') }}</div>
|
|
62
|
+
<button class="btn search-more" type="button" x-show="s.more && !s.busy" @click="load(true)">{{ t.text('search.more') }}</button>
|
|
63
|
+
</div>
|
|
64
|
+
<div class="loading search-loading" x-show="s.busy && s.resultsVersion !== s.version" role="status" aria-label="{{ t.text('app.loading') }}">{{ c.icon('loader') }}</div>
|
|
62
65
|
</div>
|
|
63
66
|
<div class="search-foot"><span class="search-keys"><span><kbd role="img" aria-label="ArrowUp">{{ c.icon('arrow-up') }}</kbd><kbd role="img" aria-label="ArrowDown">{{ c.icon('arrow-down') }}</kbd>{{ t.text('search.select') }}</span><span><kbd>Enter</kbd>{{ t.text('search.open_record') }}</span></span><span><kbd>Esc</kbd>{{ t.text('search.close_key') }}</span></div>
|
|
64
67
|
</section>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{% import "components.html" as c with context %}
|
|
2
2
|
<div data-search-page='{{ descriptor|tojson }}'>
|
|
3
3
|
{% if answer != "listed" %}
|
|
4
|
-
<div class="empty err" role="status">{{ t.text("search.timeout" if code == "SEARCH_TIMEOUT" else "search." ~ answer) }}
|
|
4
|
+
<div class="empty err search-error"><span role="status">{{ t.text("search.timeout" if code == "SEARCH_TIMEOUT" else "search." ~ answer) }}</span><button class="btn icon" type="button" @click="change()" title="{{ t.text('contacts.retry') }}" aria-label="{{ t.text('contacts.retry') }}">{{ c.icon('rotate-cw') }}</button></div>
|
|
5
5
|
{% elif not rows %}
|
|
6
6
|
<div class="empty" role="status">{{ t.text("search.empty") }}</div>
|
|
7
7
|
{% else %}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
from __future__ import annotations
|
|
2
|
-
|
|
3
|
-
import os
|
|
4
|
-
from pathlib import Path
|
|
5
|
-
|
|
6
|
-
DATA_NAME_ENV = "BCN_DATA_NAME"
|
|
7
|
-
DEFAULT_DATA_NAME = ".bcn"
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
def resolve_data_name() -> str:
|
|
11
|
-
"""Resolve the persistent node data name."""
|
|
12
|
-
|
|
13
|
-
name = os.environ.get(DATA_NAME_ENV, DEFAULT_DATA_NAME)
|
|
14
|
-
if not name or name in {".", ".."} or "/" in name or "\\" in name:
|
|
15
|
-
raise ValueError(f"{DATA_NAME_ENV} must be a single path component")
|
|
16
|
-
return name
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
def resolve_data_dir() -> Path:
|
|
20
|
-
"""Resolve the persistent node data directory under the user's home."""
|
|
21
|
-
|
|
22
|
-
return Path.home() / resolve_data_name()
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
def resolve_workspace_dir(agent_id: str) -> Path:
|
|
26
|
-
"""Resolve the persistent workspace owned by one configured Agent."""
|
|
27
|
-
|
|
28
|
-
if not isinstance(agent_id, str) or not agent_id:
|
|
29
|
-
raise ValueError("agent_id must be a non-empty string")
|
|
30
|
-
return resolve_data_dir() / "workspaces" / agent_id
|
|
File without changes
|
|
File without changes
|
{bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/app/agent.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/app/usage.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/bcc.py
RENAMED
|
File without changes
|
{bazaar_compute_node-0.2.1rc12 → bazaar_compute_node-0.2.1rc14}/src/bazaar_compute_node/cli.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|