multi-agent-platform 0.3.2__tar.gz → 0.4.0__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.
- {multi_agent_platform-0.3.2/multi_agent_platform.egg-info → multi_agent_platform-0.4.0}/PKG-INFO +10 -11
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/README.md +9 -9
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/action_item_escalation.py +5 -5
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/agent_client.py +4 -4
- multi_agent_platform-0.4.0/cli/commands/auth.py +104 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/commands/experiment.py +234 -69
- multi_agent_platform-0.4.0/cli/commands/fs.py +402 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/commands/project.py +1 -4
- multi_agent_platform-0.4.0/cli/commands/skill.py +645 -0
- multi_agent_platform-0.4.0/cli/commands/topic.py +982 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/e2e_collab.py +34 -19
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/local_cache.py +0 -1
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/main.py +138 -285
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/map_command_client.py +21 -3
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/orchestrator.py +2 -4
- multi_agent_platform-0.4.0/cli/persona_compare.py +297 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/project_export.py +2 -5
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/runtime/run_lock.py +7 -7
- multi_agent_platform-0.4.0/cli/shortid.py +111 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/simple_waker.py +6 -6
- multi_agent_platform-0.4.0/cli/skills/experiment-host/SKILL.md +106 -0
- multi_agent_platform-0.4.0/cli/skills/experiment-host/map-plugin.yaml +11 -0
- multi_agent_platform-0.4.0/cli/skills/experiment-host/references/execution-cookbook.md +92 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/skills/experiment-host/references/lifecycle-transitions.md +1 -1
- multi_agent_platform-0.4.0/cli/skills/experiment-reviewer/SKILL.md +69 -0
- multi_agent_platform-0.4.0/cli/skills/experiment-reviewer/map-plugin.yaml +11 -0
- multi_agent_platform-0.4.0/cli/skills/map-project-collab/SKILL.md +133 -0
- multi_agent_platform-0.4.0/cli/skills/map-project-collab/map-plugin.yaml +11 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/skills/map-project-collab/references/bootstrap-troubleshooting.md +1 -1
- multi_agent_platform-0.4.0/cli/skills/map-project-collab/references/commands.md +152 -0
- multi_agent_platform-0.4.0/cli/skills/map-project-collab/references/file-reference.md +36 -0
- multi_agent_platform-0.4.0/cli/skills/map-project-collab/references/platform-feedback.md +37 -0
- multi_agent_platform-0.4.0/cli/skills/map-project-collab/references/wake.md +51 -0
- multi_agent_platform-0.4.0/cli/skills/map-project-collab/references/waker-mode.md +30 -0
- multi_agent_platform-0.4.0/cli/skills/topic-host/SKILL.md +117 -0
- multi_agent_platform-0.4.0/cli/skills/topic-host/map-plugin.yaml +11 -0
- multi_agent_platform-0.4.0/cli/skills/topic-host/references/experiment-gate-rubric.md +141 -0
- multi_agent_platform-0.4.0/cli/skills/topic-host/references/host-checklist.md +114 -0
- multi_agent_platform-0.4.0/cli/skills/topic-participant/SKILL.md +95 -0
- multi_agent_platform-0.4.0/cli/skills/topic-participant/map-plugin.yaml +11 -0
- multi_agent_platform-0.4.0/cli/skills/topic-participant/references/participant-checklist.md +76 -0
- multi_agent_platform-0.4.0/cli/subcommand_format.py +126 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0/multi_agent_platform.egg-info}/PKG-INFO +10 -11
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/multi_agent_platform.egg-info/SOURCES.txt +65 -11
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/multi_agent_platform.egg-info/requires.txt +0 -2
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/multi_agent_platform.egg-info/top_level.txt +1 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/pyproject.toml +4 -9
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/sdk/python/map_client/bootstrap.py +163 -2
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/sdk/python/map_client/client.py +59 -1
- multi_agent_platform-0.4.0/sdk/python/map_fs/__init__.py +43 -0
- multi_agent_platform-0.4.0/sdk/python/map_fs/parser.py +566 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/sdk/python/map_sdk/__init__.py +1 -1
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/sdk/python/map_types/__init__.py +23 -2
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/sdk/python/map_types/enums.py +15 -0
- multi_agent_platform-0.4.0/sdk/python/map_types/schemas/__init__.py +345 -0
- multi_agent_platform-0.4.0/sdk/python/map_types/schemas/a2a.py +57 -0
- multi_agent_platform-0.4.0/sdk/python/map_types/schemas/agent.py +57 -0
- multi_agent_platform-0.4.0/sdk/python/map_types/schemas/agent_work.py +95 -0
- multi_agent_platform-0.4.0/sdk/python/map_types/schemas/audit.py +81 -0
- multi_agent_platform-0.4.0/sdk/python/map_types/schemas/base.py +7 -0
- multi_agent_platform-0.4.0/sdk/python/map_types/schemas/comment.py +36 -0
- multi_agent_platform-0.4.0/sdk/python/map_types/schemas/experiment.py +426 -0
- multi_agent_platform-0.4.0/sdk/python/map_types/schemas/feedback.py +47 -0
- multi_agent_platform-0.4.0/sdk/python/map_types/schemas/fs.py +90 -0
- multi_agent_platform-0.4.0/sdk/python/map_types/schemas/inbound_event.py +57 -0
- multi_agent_platform-0.4.0/sdk/python/map_types/schemas/notification.py +39 -0
- multi_agent_platform-0.4.0/sdk/python/map_types/schemas/plan.py +38 -0
- multi_agent_platform-0.4.0/sdk/python/map_types/schemas/project.py +138 -0
- multi_agent_platform-0.4.0/sdk/python/map_types/schemas/review.py +64 -0
- multi_agent_platform-0.4.0/sdk/python/map_types/schemas/todo.py +180 -0
- multi_agent_platform-0.4.0/sdk/python/map_types/schemas/topic.py +233 -0
- multi_agent_platform-0.4.0/sdk/python/map_types/schemas/topic_progress.py +63 -0
- multi_agent_platform-0.4.0/sdk/python/map_types/schemas/webhook.py +48 -0
- multi_agent_platform-0.4.0/server/api/a2a.py +194 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/api/bootstrap.py +40 -0
- multi_agent_platform-0.4.0/server/api/docs.py +80 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/api/experiments.py +11 -2
- multi_agent_platform-0.4.0/server/api/fs.py +174 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/api/router.py +6 -0
- multi_agent_platform-0.4.0/server/api/topics.py +282 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/config.py +4 -0
- multi_agent_platform-0.4.0/server/domain/a2a_mapping.py +79 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/domain/models.py +35 -3
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/domain/state_machine.py +40 -21
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/main.py +72 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/action_item_service.py +3 -3
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/agent_work_service.py +9 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/auth.py +47 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/bootstrap_service.py +4 -2
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/escalation_resolver.py +2 -2
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/experiment_capabilities_service.py +24 -2
- multi_agent_platform-0.4.0/server/services/fs_source_service.py +412 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/lock_service.py +3 -3
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/log_service.py +62 -13
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/mention_service.py +2 -2
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/notification_service.py +8 -8
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/persona_activity_service.py +3 -3
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/phase_owner_resolver.py +24 -3
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/phase_service.py +89 -11
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/plan_marker_service.py +41 -14
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/plan_service.py +2 -2
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/platform_feedback_service.py +2 -2
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/project_service.py +101 -16
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/project_status_service.py +2 -2
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/review_service.py +2 -2
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/similarity_service.py +6 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/todo_service.py +4 -4
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/topic_ack_service.py +20 -9
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/topic_action_item_ops.py +3 -3
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/topic_comment_service.py +17 -5
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/topic_lifecycle_service.py +45 -47
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/topic_resolve_service.py +3 -3
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/webhook_service.py +3 -3
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_18a64691_linkage.py +10 -5
- multi_agent_platform-0.4.0/tests/test_a2a.py +200 -0
- multi_agent_platform-0.3.2/tests/test_a2_action_item_cascade.py → multi_agent_platform-0.4.0/tests/test_action_item_cascade.py +146 -131
- multi_agent_platform-0.3.2/tests/test_b_action_item_stale.py → multi_agent_platform-0.4.0/tests/test_action_item_stale.py +3 -3
- multi_agent_platform-0.3.2/tests/test_b_acceptance.py → multi_agent_platform-0.4.0/tests/test_action_item_timeline_acceptance.py +13 -13
- multi_agent_platform-0.3.2/tests/test_b_action_item_wake_endpoints.py → multi_agent_platform-0.4.0/tests/test_action_item_wake_endpoints.py +56 -48
- multi_agent_platform-0.3.2/tests/test_b_action_item_wake_stale.py → multi_agent_platform-0.4.0/tests/test_action_item_wake_stale.py +16 -16
- multi_agent_platform-0.3.2/tests/test_b_action_item_wake_stale_notifications.py → multi_agent_platform-0.4.0/tests/test_action_item_wake_stale_notifications.py +43 -42
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_action_items.py +116 -212
- multi_agent_platform-0.4.0/tests/test_agent_work.py +79 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_archive_lint_service.py +2 -2
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_auth_experiment_access.py +2 -2
- multi_agent_platform-0.4.0/tests/test_auth_reissue.py +149 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_bootstrap.py +103 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_clear_action_template.py +6 -5
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_cli.py +93 -70
- multi_agent_platform-0.4.0/tests/test_cli_json_schema.py +273 -0
- multi_agent_platform-0.4.0/tests/test_cli_shortid.py +297 -0
- multi_agent_platform-0.4.0/tests/test_cli_subcommand_format.py +204 -0
- multi_agent_platform-0.4.0/tests/test_direct_mode.py +174 -0
- multi_agent_platform-0.4.0/tests/test_docs_consistency.py +218 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_docs_inventory.py +36 -12
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_eng_fast_gate_whitelist_complete.py +1 -1
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_eng_mypy_strict_agent_work_service.py +3 -2
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_eng_mypy_strict_agents.py +3 -2
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_eng_mypy_strict_experiment_capabilities_service.py +3 -2
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_eng_mypy_strict_experiments_projects.py +3 -2
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_eng_mypy_strict_mention_service.py +3 -2
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_eng_mypy_strict_notification_service.py +3 -2
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_eng_mypy_strict_phase_service.py +3 -2
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_eng_mypy_strict_project_service.py +3 -2
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_eng_mypy_strict_todo_service.py +3 -2
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_eng_mypy_strict_topic_comment_service.py +3 -2
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_eng_mypy_strict_topic_service.py +3 -2
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_eng_mypy_strict_topic_work_item_service.py +3 -2
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_eng_mypy_strict_topics.py +5 -5
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_eng_version_single_source.py +1 -1
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_escalation_resolver.py +2 -2
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_experiment_executor.py +0 -1
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_experiment_lock_notifications.py +7 -7
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_experiment_lock_unit.py +9 -9
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_experiments.py +23 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_field_rename_alias.py +2 -2
- multi_agent_platform-0.4.0/tests/test_fs_source.py +556 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_local_cache.py +0 -4
- multi_agent_platform-0.4.0/tests/test_m55_error_envelope.py +338 -0
- multi_agent_platform-0.4.0/tests/test_m57_log_slim_form.py +376 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_mcp.py +29 -18
- multi_agent_platform-0.4.0/tests/test_mentions.py +434 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_notification_bulk_filter.py +6 -6
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_notification_service_v09.py +3 -3
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_orchestrator.py +0 -3
- multi_agent_platform-0.3.2/tests/test_cleanup_exp_b_paging_seven_endpoints.py → multi_agent_platform-0.4.0/tests/test_paging_seven_endpoints.py +17 -13
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_perf_work_hotpath_bulk.py +2 -2
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_persona_activity.py +8 -8
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_plan_revise_auto_archive.py +5 -1
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_project_export.py +1 -5
- multi_agent_platform-0.4.0/tests/test_same_second_host_reply.py +62 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_same_second_trio.py +25 -39
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_sdk.py +87 -60
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_server_lock_service.py +6 -6
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_simple_waker.py +3 -3
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_skill_install.py +1 -6
- multi_agent_platform-0.4.0/tests/test_skill_versioning.py +398 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_todos.py +164 -202
- multi_agent_platform-0.4.0/tests/test_topic_migrate.py +251 -0
- multi_agent_platform-0.4.0/tests/test_topic_notifications.py +57 -0
- multi_agent_platform-0.4.0/tests/test_topic_progress.py +89 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_topic_read_cursor.py +42 -38
- multi_agent_platform-0.4.0/tests/test_topic_routing.py +522 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_topic_work_items.py +128 -151
- multi_agent_platform-0.4.0/tests/test_topics.py +537 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_waker_phase1_acceptance.py +31 -24
- multi_agent_platform-0.3.2/tests/test_b_waker_should_wake_action_item.py → multi_agent_platform-0.4.0/tests/test_waker_should_wake_action_item.py +2 -2
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_webhook_secret_encryption.py +14 -8
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_work_summary.py +45 -40
- multi_agent_platform-0.3.2/cli/commands/skill.py +0 -218
- multi_agent_platform-0.3.2/cli/commands/topic.py +0 -408
- multi_agent_platform-0.3.2/cli/skills/experiment-host/SKILL.md +0 -213
- multi_agent_platform-0.3.2/cli/skills/experiment-reviewer/SKILL.md +0 -121
- multi_agent_platform-0.3.2/cli/skills/map-project-collab/SKILL.md +0 -419
- multi_agent_platform-0.3.2/cli/skills/map-project-collab/agents/openai.yaml +0 -4
- multi_agent_platform-0.3.2/cli/skills/map-project-collab/references/waker-mode.md +0 -65
- multi_agent_platform-0.3.2/cli/skills/topic-host/SKILL.md +0 -303
- multi_agent_platform-0.3.2/cli/skills/topic-host/references/experiment-gate-rubric.md +0 -130
- multi_agent_platform-0.3.2/cli/skills/topic-participant/SKILL.md +0 -168
- multi_agent_platform-0.3.2/sdk/python/map_types/schemas.py +0 -1411
- multi_agent_platform-0.3.2/server/api/topics.py +0 -341
- multi_agent_platform-0.3.2/tests/test_agent_work.py +0 -76
- multi_agent_platform-0.3.2/tests/test_mentions.py +0 -882
- multi_agent_platform-0.3.2/tests/test_same_second_host_reply.py +0 -56
- multi_agent_platform-0.3.2/tests/test_topic_notifications.py +0 -101
- multi_agent_platform-0.3.2/tests/test_topic_progress.py +0 -97
- multi_agent_platform-0.3.2/tests/test_topics.py +0 -1163
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/LICENSE +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/__init__.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/bridge_state.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/commands/__init__.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/commands/action.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/commands/agent.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/commands/audit.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/commands/docs.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/commands/feedback.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/commands/host.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/commands/notification.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/commands/persona.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/commands/runtime.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/commands/sync.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/git_checkpoint.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/host_worker_types.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/participant_worker.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/reviewer_worker.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/runtime/__init__.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/runtime_chat.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/session_wake_log.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/skills/__init__.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/skills/experiment-reviewer/references/review-format-guide.md +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/skills/map-project-collab/scripts/map-bootstrap.sh +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/table_render.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/wake_backend.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/cli/worker_cycle_log.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/multi_agent_platform.egg-info/dependency_links.txt +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/multi_agent_platform.egg-info/entry_points.txt +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/sdk/python/map_client/__init__.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/sdk/python/map_client/config.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/sdk/python/map_client/errors.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/sdk/python/map_client/exceptions.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/sdk/python/map_client/plan_evidence.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/sdk/python/map_client/project_config.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/sdk/python/map_client/result_template.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/sdk/python/map_client/testing.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/sdk/python/map_mcp/__init__.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/sdk/python/map_mcp/_utils.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/sdk/python/map_mcp/auth.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/sdk/python/map_mcp/config.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/sdk/python/map_mcp/context.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/sdk/python/map_mcp/main.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/sdk/python/map_mcp/server.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/sdk/python/map_mcp/session.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/sdk/python/map_sdk/evidence.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/__init__.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/__version__.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/api/__init__.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/api/action_items.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/api/agents.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/api/audit.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/api/background_tasks.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/api/common.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/api/deps.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/api/feedback.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/api/notifications.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/api/projects.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/api/status.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/api/webhooks.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/auth/__init__.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/auth/experiment_access.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/db/__init__.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/db/base.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/db/deadlock_retry.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/db/session.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/domain/__init__.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/domain/encrypted_types.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/domain/schemas.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/domain/topic_ack_constants.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/scripts/__init__.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/scripts/migrate_notification_unique.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/scripts/purge_audit_pollution.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/__init__.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/_lookups.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/acceptance_service.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/action_item_migration_service.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/archive_lint_service.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/audit_service.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/comment_service.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/errors.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/evidence_service.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/inbound_event_service.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/notification_stream.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/permissions.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/secret_encryption.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/sse_event_schemas.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/status_service.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/template_service.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/text_utils.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/thread_activity.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/todo_persona_filter.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/topic_comment_kind.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/topic_helpers.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/topic_progress_service.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/topic_service.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/server/services/topic_work_item_service.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/setup.cfg +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_accept_result_verdict.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_agent_client.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_agents_list.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_arch_map_sdk_evidence.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_audit_admin_cli.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_audit_admin_filter.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_auth.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_authz_cross_persona_capability.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_authz_pr3_creator_gating_extended.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_bridge_state.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_cleanup_audit_log_no_commit.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_cli_error_envelope.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_cli_evidence_contract.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_cli_format_priority.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_cli_n2_hard_cutover.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_cli_schema_discovery.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_cli_status.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_cli_template_contract.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_cli_work_deprecation.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_cross_persona_call_audit.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_deadlock_retry.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_eng_typing_extensions_clean.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_eng_uv_lock.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_error_codes_cli.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_error_envelope_and_file_options.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_escalation_target_endpoint.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_evidence_service.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_experiment_capabilities.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_experiment_capabilities_whitelist.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_experiment_lock_fuzz.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_feedback.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_feedback_admin_cli.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_git_checkpoint.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_inbound_event_rejection.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_log_create_response.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_m2_flow.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_m3_flow.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_map_sdk_skeleton.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_mcp_http.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_mention_code_skip_unit.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_notification_stream.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_notification_upsert_pr2.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_notifications.py +0 -0
- multi_agent_platform-0.3.2/tests/test_cleanup_exp_b_paging_unified_limit.py → multi_agent_platform-0.4.0/tests/test_paging_unified_limit.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_participant_worker_claude_agent.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_perf_count_sql_fixture.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_perf_experiment_bundle_verdict_n_plus_one.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_perf_experiment_summary_bulk.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_perf_topic_comments_bulk.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_persona_compare_partition.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_phase_owner_orm_validation.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_phase_owner_resolver.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_plan_evidence_parser.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_plan_marker_service.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_plan_validate_cli.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_project_config.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_project_status.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_projects.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_rebutted_plan_continues_e2e.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_register_agent_body_model.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_reject_result_misuse.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_resolve_item_sdk_contract.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_resolve_item_status.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_result_template_parser.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_review_already_archived.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_review_archived_metadata.py +1 -1
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_review_eligibility.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_review_item_mutation_audit.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_review_item_state_closed_migration.py +1 -1
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_review_list_archived_filter.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_review_substitute_and_withdraw.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_review_verdict_alias.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_reviewer_worker_claude_agent.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_runtime_chat.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_sdk_exceptions.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_session_wake_log.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_similarity_api_contract.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_similarity_service.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_simple_waker_pr3_dedup.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_simple_waker_reviewer_filter.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_sse_acceptance.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_sse_isolation.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_sse_schema_overlap.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_state_machine.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_state_machine_recovery_hint.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_systemd_install.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_template_api_contract.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_template_service.py +0 -0
- {multi_agent_platform-0.3.2 → multi_agent_platform-0.4.0}/tests/test_webhooks_audit.py +0 -0
{multi_agent_platform-0.3.2/multi_agent_platform.egg-info → multi_agent_platform-0.4.0}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: multi-agent-platform
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.4.0
|
|
4
4
|
Summary: Multi-Agent experiment collaboration platform
|
|
5
5
|
License-Expression: MIT
|
|
6
6
|
Project-URL: Homepage, https://github.com/quantaeye/multi-agent-platform
|
|
@@ -42,7 +42,6 @@ Requires-Dist: pydantic-to-typescript<3.0,>=2.0.0; extra == "dev"
|
|
|
42
42
|
Provides-Extra: mcp
|
|
43
43
|
Requires-Dist: multi-agent-platform[server]; extra == "mcp"
|
|
44
44
|
Requires-Dist: mcp<2.0,>=1.26.0; extra == "mcp"
|
|
45
|
-
Provides-Extra: codex-runtime
|
|
46
45
|
Provides-Extra: claude-runtime
|
|
47
46
|
Requires-Dist: claude-agent-sdk<1.0,>=0.2; extra == "claude-runtime"
|
|
48
47
|
Dynamic: license-file
|
|
@@ -106,9 +105,9 @@ map skill install # 将 5 个 Skill 文件安装到 .cursor/skills/
|
|
|
106
105
|
|
|
107
106
|
### PRD
|
|
108
107
|
|
|
109
|
-
- [
|
|
110
|
-
- [
|
|
111
|
-
- [
|
|
108
|
+
- [现行主线:v0.11(Agent 体验与生态互操作)](docs/prd/v0.11.md)
|
|
109
|
+
- [提案草案:v0.12(Agent 人机工程)](docs/prd/v0.12.md)
|
|
110
|
+
- 版本清单与历史归档以 [docs/prd/README.md](docs/prd/README.md) 为准
|
|
112
111
|
|
|
113
112
|
## 状态
|
|
114
113
|
|
|
@@ -122,9 +121,9 @@ map skill install # 将 5 个 Skill 文件安装到 .cursor/skills/
|
|
|
122
121
|
- **Agent Runtime**:simple-waker 默认路径(轮询 + remind + action_item 升级)
|
|
123
122
|
- **多 persona 协作**:`.map/` persona + Skill 指导 Agent 写回 MAP
|
|
124
123
|
|
|
125
|
-
**当前主线**:v0.
|
|
124
|
+
**当前主线**:v0.11(Agent 体验与生态互操作,M50–M53 已完成),提案 v0.12(Agent 人机工程)评审中。详见 [PRD 入口](docs/prd/README.md) 与 [status-md-v10.md](docs/status-md-v10.md)。
|
|
126
125
|
|
|
127
|
-
历史里程碑详见 PRD
|
|
126
|
+
历史里程碑详见 [PRD 归档](docs/prd/README.md#历史归档按时间倒序)。
|
|
128
127
|
|
|
129
128
|
**Agent 身份(本仓库)**:统一使用 **`.map/` persona + `map` CLI**(见 [AGENTS.md](AGENTS.md));Cursor MCP 接入计划停用。
|
|
130
129
|
|
|
@@ -164,17 +163,17 @@ map-server
|
|
|
164
163
|
# 或: uvicorn server.main:app --reload
|
|
165
164
|
|
|
166
165
|
# 注册首个 Admin(仅当系统中尚无 Agent 时可匿名调用)
|
|
167
|
-
curl -X POST "http://localhost:
|
|
166
|
+
curl -X POST "http://localhost:8001/api/v1/agents?name=ops-admin&role=admin"
|
|
168
167
|
|
|
169
168
|
# 后续 Agent 须由 Admin 注册
|
|
170
169
|
curl -H "Authorization: Bearer <admin-token>" \
|
|
171
|
-
-X POST "http://localhost:
|
|
170
|
+
-X POST "http://localhost:8001/api/v1/agents?name=agent-alpha&role=agent&project_key=<project-key>"
|
|
172
171
|
|
|
173
172
|
# 创建项目
|
|
174
173
|
curl -H "Authorization: Bearer <token>" \
|
|
175
174
|
-H "Content-Type: application/json" \
|
|
176
175
|
-d '{"name":"demo","workspace_path":"/tmp/demo"}' \
|
|
177
|
-
http://localhost:
|
|
176
|
+
http://localhost:8001/api/v1/projects
|
|
178
177
|
|
|
179
178
|
# 运行测试
|
|
180
179
|
pytest
|
|
@@ -280,7 +279,7 @@ simple-waker 在每次 remind 后会写一条聚合 `inbound_event` 审计行(
|
|
|
280
279
|
|
|
281
280
|
## Docker(API + Web)
|
|
282
281
|
|
|
283
|
-
默认 `docker-compose.yml` 暴露 API `:8000`、Web `:3000`、MCP `:8080
|
|
282
|
+
默认 `docker-compose.yml` 暴露 API `:8000`、Web `:3000`、MCP `:8080`;本仓自带的 `docker-compose.override.yml` 在 `docker compose up` 时自动生效,把宿主端口改为 API `:8001`、MCP `:18081`。因此本仓库文档与 `.map/` bootstrap 示例统一使用 `http://localhost:8001`。
|
|
284
283
|
|
|
285
284
|
```bash
|
|
286
285
|
docker compose up --build
|
|
@@ -57,9 +57,9 @@ map skill install # 将 5 个 Skill 文件安装到 .cursor/skills/
|
|
|
57
57
|
|
|
58
58
|
### PRD
|
|
59
59
|
|
|
60
|
-
- [
|
|
61
|
-
- [
|
|
62
|
-
- [
|
|
60
|
+
- [现行主线:v0.11(Agent 体验与生态互操作)](docs/prd/v0.11.md)
|
|
61
|
+
- [提案草案:v0.12(Agent 人机工程)](docs/prd/v0.12.md)
|
|
62
|
+
- 版本清单与历史归档以 [docs/prd/README.md](docs/prd/README.md) 为准
|
|
63
63
|
|
|
64
64
|
## 状态
|
|
65
65
|
|
|
@@ -73,9 +73,9 @@ map skill install # 将 5 个 Skill 文件安装到 .cursor/skills/
|
|
|
73
73
|
- **Agent Runtime**:simple-waker 默认路径(轮询 + remind + action_item 升级)
|
|
74
74
|
- **多 persona 协作**:`.map/` persona + Skill 指导 Agent 写回 MAP
|
|
75
75
|
|
|
76
|
-
**当前主线**:v0.
|
|
76
|
+
**当前主线**:v0.11(Agent 体验与生态互操作,M50–M53 已完成),提案 v0.12(Agent 人机工程)评审中。详见 [PRD 入口](docs/prd/README.md) 与 [status-md-v10.md](docs/status-md-v10.md)。
|
|
77
77
|
|
|
78
|
-
历史里程碑详见 PRD
|
|
78
|
+
历史里程碑详见 [PRD 归档](docs/prd/README.md#历史归档按时间倒序)。
|
|
79
79
|
|
|
80
80
|
**Agent 身份(本仓库)**:统一使用 **`.map/` persona + `map` CLI**(见 [AGENTS.md](AGENTS.md));Cursor MCP 接入计划停用。
|
|
81
81
|
|
|
@@ -115,17 +115,17 @@ map-server
|
|
|
115
115
|
# 或: uvicorn server.main:app --reload
|
|
116
116
|
|
|
117
117
|
# 注册首个 Admin(仅当系统中尚无 Agent 时可匿名调用)
|
|
118
|
-
curl -X POST "http://localhost:
|
|
118
|
+
curl -X POST "http://localhost:8001/api/v1/agents?name=ops-admin&role=admin"
|
|
119
119
|
|
|
120
120
|
# 后续 Agent 须由 Admin 注册
|
|
121
121
|
curl -H "Authorization: Bearer <admin-token>" \
|
|
122
|
-
-X POST "http://localhost:
|
|
122
|
+
-X POST "http://localhost:8001/api/v1/agents?name=agent-alpha&role=agent&project_key=<project-key>"
|
|
123
123
|
|
|
124
124
|
# 创建项目
|
|
125
125
|
curl -H "Authorization: Bearer <token>" \
|
|
126
126
|
-H "Content-Type: application/json" \
|
|
127
127
|
-d '{"name":"demo","workspace_path":"/tmp/demo"}' \
|
|
128
|
-
http://localhost:
|
|
128
|
+
http://localhost:8001/api/v1/projects
|
|
129
129
|
|
|
130
130
|
# 运行测试
|
|
131
131
|
pytest
|
|
@@ -231,7 +231,7 @@ simple-waker 在每次 remind 后会写一条聚合 `inbound_event` 审计行(
|
|
|
231
231
|
|
|
232
232
|
## Docker(API + Web)
|
|
233
233
|
|
|
234
|
-
默认 `docker-compose.yml` 暴露 API `:8000`、Web `:3000`、MCP `:8080
|
|
234
|
+
默认 `docker-compose.yml` 暴露 API `:8000`、Web `:3000`、MCP `:8080`;本仓自带的 `docker-compose.override.yml` 在 `docker compose up` 时自动生效,把宿主端口改为 API `:8001`、MCP `:18081`。因此本仓库文档与 `.map/` bootstrap 示例统一使用 `http://localhost:8001`。
|
|
235
235
|
|
|
236
236
|
```bash
|
|
237
237
|
docker compose up --build
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
from __future__ import annotations
|
|
14
14
|
|
|
15
15
|
from dataclasses import dataclass
|
|
16
|
-
from datetime import
|
|
16
|
+
from datetime import datetime, timedelta, timezone
|
|
17
17
|
from enum import Enum
|
|
18
18
|
from typing import Any
|
|
19
19
|
|
|
@@ -48,12 +48,12 @@ def _parse_iso_datetime(value: Any) -> datetime | None:
|
|
|
48
48
|
if value is None or value == "":
|
|
49
49
|
return None
|
|
50
50
|
if isinstance(value, datetime):
|
|
51
|
-
return value if value.tzinfo else value.replace(tzinfo=
|
|
51
|
+
return value if value.tzinfo else value.replace(tzinfo=timezone.utc)
|
|
52
52
|
try:
|
|
53
53
|
parsed = datetime.fromisoformat(str(value).replace("Z", "+00:00"))
|
|
54
54
|
except ValueError:
|
|
55
55
|
return None
|
|
56
|
-
return parsed if parsed.tzinfo else parsed.replace(tzinfo=
|
|
56
|
+
return parsed if parsed.tzinfo else parsed.replace(tzinfo=timezone.utc)
|
|
57
57
|
|
|
58
58
|
|
|
59
59
|
def should_wake_action_item(
|
|
@@ -77,7 +77,7 @@ def should_wake_action_item(
|
|
|
77
77
|
written the diagnostic audit row we stop bothering the assignee.
|
|
78
78
|
- First wake fires 24h after ``first_open_at``; second at 72h; further
|
|
79
79
|
wakes every 7d; the (N+1)th check after the 4th wake writes stale.
|
|
80
|
-
- ``now`` defaults to ``datetime.now(
|
|
80
|
+
- ``now`` defaults to ``datetime.now(timezone.utc)`` — callers that need a
|
|
81
81
|
deterministic clock (tests, dogfood) inject their own.
|
|
82
82
|
"""
|
|
83
83
|
if not isinstance(item, dict):
|
|
@@ -91,7 +91,7 @@ def should_wake_action_item(
|
|
|
91
91
|
if _parse_iso_datetime(item.get("stale_at")) is not None:
|
|
92
92
|
return ActionItemWakeDecision.SKIP
|
|
93
93
|
|
|
94
|
-
current = now or datetime.now(
|
|
94
|
+
current = now or datetime.now(timezone.utc)
|
|
95
95
|
first_open_at = _parse_iso_datetime(item.get("first_open_at"))
|
|
96
96
|
if first_open_at is None:
|
|
97
97
|
# Pre-I1 backfill may have missed this row (closed before I1, etc).
|
|
@@ -13,7 +13,7 @@ import logging
|
|
|
13
13
|
import os
|
|
14
14
|
import re
|
|
15
15
|
from collections.abc import Callable
|
|
16
|
-
from datetime import
|
|
16
|
+
from datetime import datetime, timezone
|
|
17
17
|
from pathlib import Path
|
|
18
18
|
from typing import Any, Literal, Protocol, TypedDict
|
|
19
19
|
|
|
@@ -150,7 +150,7 @@ class PersonaAgentClient:
|
|
|
150
150
|
# the real session_id only arrives with the ResultMessage. A long
|
|
151
151
|
# running turn is then observable live — a stuck agent shows up as the
|
|
152
152
|
# last event ts going stale.
|
|
153
|
-
pre_sid = resume_session_id or f"new-{datetime.now(
|
|
153
|
+
pre_sid = resume_session_id or f"new-{datetime.now(timezone.utc).strftime('%Y%m%dT%H%M%S%f')}"
|
|
154
154
|
log_path = resolve_session_log_path(self._resolve_session_log_dir(), pre_sid, self.persona)
|
|
155
155
|
self._log_event(
|
|
156
156
|
log_path,
|
|
@@ -261,7 +261,7 @@ class PersonaAgentClient:
|
|
|
261
261
|
else:
|
|
262
262
|
status = "ok"
|
|
263
263
|
|
|
264
|
-
self.state["last_wakeup_at"] = datetime.now(
|
|
264
|
+
self.state["last_wakeup_at"] = datetime.now(timezone.utc).isoformat()
|
|
265
265
|
self.state["last_wakeup_status"] = status
|
|
266
266
|
self._save_state_fn()
|
|
267
267
|
|
|
@@ -337,7 +337,7 @@ class PersonaAgentClient:
|
|
|
337
337
|
return str(result.session_id)
|
|
338
338
|
if resume_session_id:
|
|
339
339
|
return str(resume_session_id)
|
|
340
|
-
return f"unknown-{datetime.now(
|
|
340
|
+
return f"unknown-{datetime.now(timezone.utc).strftime('%Y%m%dT%H%M%S%fZ')}"
|
|
341
341
|
|
|
342
342
|
def _log_event(
|
|
343
343
|
self,
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
"""``map auth ...`` sub-app — self-service credential recovery (M52C).
|
|
2
|
+
|
|
3
|
+
``map auth reissue`` recovers a lost agent token using the project_key
|
|
4
|
+
(same self-service trust boundary as ``map bootstrap``): the server
|
|
5
|
+
rotates the token, revoking the old one, and the CLI writes the new
|
|
6
|
+
token back into ``.map/agents.local.yaml``.
|
|
7
|
+
"""
|
|
8
|
+
from __future__ import annotations
|
|
9
|
+
|
|
10
|
+
from pathlib import Path
|
|
11
|
+
|
|
12
|
+
import typer
|
|
13
|
+
from map_client.bootstrap import reissue_map_token
|
|
14
|
+
from map_client.exceptions import MAPHTTPError
|
|
15
|
+
|
|
16
|
+
auth_app = typer.Typer(help="Manage MAP credentials (token recovery)")
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
@auth_app.command("reissue")
|
|
20
|
+
def auth_reissue(
|
|
21
|
+
name: str = typer.Option(
|
|
22
|
+
...,
|
|
23
|
+
"--name",
|
|
24
|
+
"-n",
|
|
25
|
+
help="Agent name to reissue (e.g. multi-agent-platform-host; "
|
|
26
|
+
"see .map/agents.yaml).",
|
|
27
|
+
),
|
|
28
|
+
key: str | None = typer.Option(
|
|
29
|
+
None,
|
|
30
|
+
"--key",
|
|
31
|
+
"-k",
|
|
32
|
+
help="Project key (default: project_key from .map/config.yaml).",
|
|
33
|
+
),
|
|
34
|
+
api_url: str | None = typer.Option(
|
|
35
|
+
None,
|
|
36
|
+
"--api-url",
|
|
37
|
+
help="MAP API base URL (default: api_url from .map/config.yaml, "
|
|
38
|
+
"then MAP_API_URL, then http://localhost:8000).",
|
|
39
|
+
),
|
|
40
|
+
project_root: Path | None = typer.Option(
|
|
41
|
+
None,
|
|
42
|
+
"--project-root",
|
|
43
|
+
help="Directory containing .map/ (default: current directory).",
|
|
44
|
+
),
|
|
45
|
+
) -> None:
|
|
46
|
+
"""Reissue an agent's API token and write it back to .map/agents.local.yaml.
|
|
47
|
+
|
|
48
|
+
Recovery path for a lost ``.map/agents.local.yaml``. The previous
|
|
49
|
+
token is revoked immediately (anywhere it was used will start
|
|
50
|
+
returning 401 until re-reissued). Trust model mirrors
|
|
51
|
+
``map bootstrap``: the project_key is the proof of ownership.
|
|
52
|
+
|
|
53
|
+
\b
|
|
54
|
+
Examples:
|
|
55
|
+
map auth reissue --key my-project --name my-project-host
|
|
56
|
+
map auth reissue --name my-project-host # key from .map/config.yaml
|
|
57
|
+
"""
|
|
58
|
+
from cli.main import _cli_options
|
|
59
|
+
|
|
60
|
+
fmt = _cli_options.get("format", "yaml")
|
|
61
|
+
root = project_root or _cli_options.get("project_root")
|
|
62
|
+
|
|
63
|
+
try:
|
|
64
|
+
result = reissue_map_token(
|
|
65
|
+
agent_name=name,
|
|
66
|
+
project_key=key,
|
|
67
|
+
project_root=Path(root) if root else None,
|
|
68
|
+
api_url=api_url,
|
|
69
|
+
)
|
|
70
|
+
except ValueError as exc:
|
|
71
|
+
typer.echo(f"Error: {exc}", err=True)
|
|
72
|
+
raise typer.Exit(1) from exc
|
|
73
|
+
except MAPHTTPError as exc:
|
|
74
|
+
typer.echo(f"Error {exc.status_code}: {exc.detail}", err=True)
|
|
75
|
+
raise typer.Exit(1) from exc
|
|
76
|
+
|
|
77
|
+
if fmt == "json":
|
|
78
|
+
import json
|
|
79
|
+
|
|
80
|
+
typer.echo(
|
|
81
|
+
json.dumps(
|
|
82
|
+
{
|
|
83
|
+
"ok": True,
|
|
84
|
+
"data": {
|
|
85
|
+
"agent_id": result.agent_id,
|
|
86
|
+
"agent_name": result.agent_name,
|
|
87
|
+
"persona": result.persona_key,
|
|
88
|
+
"api_url": result.api_url,
|
|
89
|
+
"wrote_back": str(result.local_path),
|
|
90
|
+
"previous_token_revoked": True,
|
|
91
|
+
},
|
|
92
|
+
},
|
|
93
|
+
ensure_ascii=False,
|
|
94
|
+
indent=2,
|
|
95
|
+
)
|
|
96
|
+
)
|
|
97
|
+
return
|
|
98
|
+
|
|
99
|
+
typer.echo(f"Reissued token for agent '{result.agent_name}' ({result.agent_id})")
|
|
100
|
+
typer.echo(f"Previous token revoked. Wrote back: {result.local_path}")
|
|
101
|
+
if result.persona_key:
|
|
102
|
+
typer.echo(f"Try: map --persona {result.persona_key} persona whoami")
|
|
103
|
+
else:
|
|
104
|
+
typer.echo("Try: map persona whoami")
|