microcoreos 0.4.3__tar.gz → 0.4.4__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.
- {microcoreos-0.4.3 → microcoreos-0.4.4}/AI_CONTEXT.md +1 -1
- {microcoreos-0.4.3 → microcoreos-0.4.4}/PKG-INFO +3 -2
- {microcoreos-0.4.3 → microcoreos-0.4.4}/README.md +2 -1
- {microcoreos-0.4.3 → microcoreos-0.4.4}/domains/system/plugins/system_logs_stream_plugin.py +8 -2
- {microcoreos-0.4.3 → microcoreos-0.4.4}/pyproject.toml +1 -1
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/tools/logger/test_logger_tool.py +26 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tools/logger/logger_tool.py +19 -3
- {microcoreos-0.4.3 → microcoreos-0.4.4}/uv.lock +1 -1
- {microcoreos-0.4.3 → microcoreos-0.4.4}/.agent/skills/microcoreos-architecture/SKILL.md +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/.agent/skills/microcoreos-architecture/agent.md +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/.agent/workflows/feature-plan.md +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/.agent/workflows/multi-domain-plan.md +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/.agent/workflows/new-domain.md +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/.agent/workflows/new-tool.md +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/.agent/workflows/solo-build.md +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/.claude/settings.local.json +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/.dockerignore +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/.env.example +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/.github/workflows/ci.yml +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/.github/workflows/release.yml +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/.gitignore +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/.mutmut-cache +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/.python-version +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/AGENTS.md +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/Dockerfile +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/INSTRUCTIONS_FOR_AI.md +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/LICENSE +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/ROADMAP.md +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/cli.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/conftest.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/dev_infra/cache_probe.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/dev_infra/docker-compose.yml +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/docs/CLI.md +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/docs/CORE_INFRASTRUCTURE.md +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/docs/ELASTIC_DEPLOYMENT.md +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/docs/EVENT_BUS.md +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/docs/HTTP_SERVER.md +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/docs/INDEX.md +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/docs/OBSERVABILITY.md +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/docs/OBSERVABILITY_API.md +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/docs/PARALLEL_DEVELOPMENT.md +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/docs/translations/es/README.md +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/domains/devtools/lint/plugin_sources.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/domains/devtools/plugins/discovery_naming_linter_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/domains/devtools/plugins/domain_isolation_linter_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/domains/devtools/plugins/event_contract_linter_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/domains/devtools/plugins/event_schemas_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/domains/devtools/plugins/field_divergence_linter_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/domains/devtools/plugins/route_collision_linter_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/domains/devtools/plugins/table_ownership_linter_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/domains/devtools/plugins/tool_doc_drift_linter_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/domains/system/plugins/event_delivery_monitor_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/domains/system/plugins/system_events_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/domains/system/plugins/system_events_stream_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/domains/system/plugins/system_metrics_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/domains/system/plugins/system_status_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/domains/system/plugins/system_traces_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/domains/system/plugins/system_traces_stream_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/domains/system/plugins/tool_health_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_domains/chaos/plugins/blocking_boot_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_domains/chaos/plugins/chaos_control_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_domains/chaos/plugins/failing_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_domains/chaos/plugins/stress_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_domains/ping/plugins/ping_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_domains/scheduler/migrations/001_scheduler_one_shots.sql +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_domains/scheduler/models/scheduler_one_shot.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_domains/scheduler/plugins/durable_one_shots_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_domains/users/migrations/001_create_users.sql +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_domains/users/models/user.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_domains/users/plugins/create_user_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_domains/users/plugins/delete_user_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_domains/users/plugins/get_me_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_domains/users/plugins/get_user_by_id_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_domains/users/plugins/get_users_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_domains/users/plugins/login_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_domains/users/plugins/logout_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_domains/users/plugins/update_user_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_domains/users/plugins/welcome_service_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_tools/auth/auth_tool.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_tools/auth/tests/auth_tool_test.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_tools/chaos/chaos_tool.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_tools/kafka/kafka_driver.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_tools/postgresql/postgresql_tool.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_tools/postgresql/tests/postgresql_describe_schema_test.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_tools/postgresql/tests/postgresql_tool_test.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_tools/rabbitmq/rabbitmq_driver.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_tools/redis_state/redis_state_tool.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_tools/s3/__init__.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_tools/s3/s3_tool.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_tools/s3/tests/s3_tool_test.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_tools/scheduler/scheduler_tool.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_tools/scheduler/tests/scheduler_singleton_test.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_tools/scheduler/tests/scheduler_tool_test.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/hatch_build.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/main.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/microcoreos/__init__.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/microcoreos/base_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/microcoreos/base_tool.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/microcoreos/catalog.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/microcoreos/cli.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/microcoreos/container.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/microcoreos/context.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/microcoreos/kernel.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/microcoreos/project.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/microcoreos/project_readme.md +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/microcoreos/registry.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/microcoreos/scaffold.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/microcoreos/upgrade.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/microcoreos_dev/__init__.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/microcoreos_dev/cli.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/microcoreos_dev/fuzzer.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/microcoreos_dev/pipeline.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/microcoreos_dev/plan/__init__.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/microcoreos_dev/plan/rules.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/microcoreos_dev/plan/scan.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/microcoreos_dev/plan/schema.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/microcoreos_dev/plan/sync.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/microcoreos_dev/probe.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/plans/README.md +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/plans/active_plan.md +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/plans/active_plan.yaml +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/core/test_core.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/core/test_core_purity.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/core/test_kernel.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/core/test_no_retry.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/core/test_plugin_di_fixtures.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/core/test_registry_collisions.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/core/test_tool_proxy.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/dev/corpus/README.md +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/dev/corpus/qwen_twitter_plan.yaml +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/dev/test_pipeline.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/dev/test_plan_validator.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/domains/ping/test_ping_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/domains/users/test_create_user_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/domains/users/test_delete_user_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/domains/users/test_get_me_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/domains/users/test_get_user_by_id_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/domains/users/test_get_users_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/domains/users/test_login_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/domains/users/test_logout_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/domains/users/test_update_user_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/domains/users/test_welcome_service_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/helpers/active_db.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/helpers/async_wait.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/helpers/mock_db.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/helpers/trace_chains.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/linters/test_discovery_naming_linter.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/linters/test_domain_isolation_linter.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/linters/test_event_contract_linter.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/linters/test_field_divergence_linter.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/linters/test_route_collision_linter.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/linters/test_table_ownership_linter.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/linters/test_tool_doc_drift_linter.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/system/test_catalog.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/system/test_chaos_control.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/system/test_chaos_tool.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/system/test_cli.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/system/test_durable_one_shots.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/system/test_event_schemas_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/system/test_scaffold.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/system/test_system_events_stats.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/system/test_system_traces_plugin.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/system/test_trace_chain_helper.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/system/test_upgrade.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/tools/config/test_config_tool.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/tools/context/test_context_tool.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/tools/db/test_db_parity.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/tools/event_bus/test_event_bus_broker_parity.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/tools/event_bus/test_event_bus_groups.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/tools/event_bus/test_event_bus_kafka_parity.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/tools/event_bus/test_event_bus_rabbitmq_parity.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/tools/event_bus/test_event_bus_tool.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/tools/event_bus/test_redis_streams_driver.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/tools/http_server/test_http_params_hardening.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/tools/http_server/test_http_pipeline.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/tools/http_server/test_http_server_tool.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/tools/http_server/test_security_hardening.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/tools/registry/test_registry_tool.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/tools/s3/test_s3_parity.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/tools/sqlite/test_sqlite_concurrency.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/tools/sqlite/test_sqlite_describe_schema.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/tools/sqlite/test_sqlite_driver.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/tools/sqlite/test_sqlite_migrations.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/tools/sqlite/test_sqlite_tool.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/tools/state/test_state_parity.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/tools/state/test_state_tool.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tests/tools/telemetry/test_telemetry_tool.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tools/config/config_tool.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tools/context/authoring_guide.md +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tools/context/context_tool.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tools/context/renderers.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tools/context/scanners.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tools/event_bus/drivers.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tools/event_bus/envelope.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tools/event_bus/event_bus_tool.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tools/event_bus/redis_streams_driver.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tools/event_bus/sqlite_driver.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tools/http_server/context.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tools/http_server/http_server_tool.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tools/http_server/pipeline.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tools/http_server/types.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tools/sqlite/errors.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tools/sqlite/migrations.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tools/sqlite/sqlite_tool.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tools/sqlite/transaction.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tools/state/state_tool.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tools/system/registry_tool.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tools/telemetry/__init__.py +0 -0
- {microcoreos-0.4.3 → microcoreos-0.4.4}/tools/telemetry/telemetry_tool.py +0 -0
|
@@ -321,7 +321,7 @@ Async SQLite Persistence Tool (sqlite):
|
|
|
321
321
|
- **Events emitted**: none
|
|
322
322
|
- **Events consumed**: none
|
|
323
323
|
- **Dependencies**: container, http, logger
|
|
324
|
-
- **Plugins**: devtools.DiscoveryNamingLinterPlugin, devtools.
|
|
324
|
+
- **Plugins**: devtools.DiscoveryNamingLinterPlugin, devtools.DomainIsolationLinterPlugin, devtools.EventContractLinterPlugin, devtools.EventSchemasPlugin, devtools.FieldDivergenceLinterPlugin, devtools.RouteCollisionLinterPlugin, devtools.TableOwnershipLinterPlugin, devtools.ToolDocDriftLinterPlugin
|
|
325
325
|
|
|
326
326
|
### `system`
|
|
327
327
|
- **Tables**: none
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: microcoreos
|
|
3
|
-
Version: 0.4.
|
|
3
|
+
Version: 0.4.4
|
|
4
4
|
Summary: Atomic Microkernel Architecture optimized for AI-Driven Development
|
|
5
5
|
License: MIT
|
|
6
6
|
License-File: LICENSE
|
|
@@ -124,7 +124,8 @@ Use that rather than `uv add 'microcoreos[auth]'`. The extra is only the **depen
|
|
|
124
124
|
| Command | Purpose |
|
|
125
125
|
|---|---|
|
|
126
126
|
| `microcoreos status` | Reports active plan progress and `AI_CONTEXT.md` freshness |
|
|
127
|
-
| `microcoreos plan validate` | Validates active plan YAML (`plans/active_plan.yaml`) offline against
|
|
127
|
+
| `microcoreos plan validate` | Validates active plan YAML (`plans/active_plan.yaml`) offline against 19 rules (`--fix` to sync checklist first) |
|
|
128
|
+
| `microcoreos plan sync` | Generates or updates execution checklist (`plans/active_plan.md`) preserving progress |
|
|
128
129
|
| `microcoreos migrate` | Applies SQL migrations AND regenerates `AI_CONTEXT.md` (the AI context manifest) |
|
|
129
130
|
| `microcoreos schema` | Inspects live database schema and normalized tables |
|
|
130
131
|
|
|
@@ -83,7 +83,8 @@ Use that rather than `uv add 'microcoreos[auth]'`. The extra is only the **depen
|
|
|
83
83
|
| Command | Purpose |
|
|
84
84
|
|---|---|
|
|
85
85
|
| `microcoreos status` | Reports active plan progress and `AI_CONTEXT.md` freshness |
|
|
86
|
-
| `microcoreos plan validate` | Validates active plan YAML (`plans/active_plan.yaml`) offline against
|
|
86
|
+
| `microcoreos plan validate` | Validates active plan YAML (`plans/active_plan.yaml`) offline against 19 rules (`--fix` to sync checklist first) |
|
|
87
|
+
| `microcoreos plan sync` | Generates or updates execution checklist (`plans/active_plan.md`) preserving progress |
|
|
87
88
|
| `microcoreos migrate` | Applies SQL migrations AND regenerates `AI_CONTEXT.md` (the AI context manifest) |
|
|
88
89
|
| `microcoreos schema` | Inspects live database schema and normalized tables |
|
|
89
90
|
|
|
@@ -22,10 +22,16 @@ class SystemLogsStreamPlugin(BasePlugin):
|
|
|
22
22
|
tags=["System"],
|
|
23
23
|
)
|
|
24
24
|
|
|
25
|
-
def _on_log(self, level: str, message: str, timestamp: str, identity: str):
|
|
25
|
+
def _on_log(self, level: str, message: str, timestamp: str, identity: str, trace_id: str = None):
|
|
26
26
|
if not self._queues:
|
|
27
27
|
return
|
|
28
|
-
record = {
|
|
28
|
+
record = {
|
|
29
|
+
"level": level,
|
|
30
|
+
"message": message,
|
|
31
|
+
"timestamp": timestamp,
|
|
32
|
+
"identity": identity,
|
|
33
|
+
"trace_id": trace_id,
|
|
34
|
+
}
|
|
29
35
|
try:
|
|
30
36
|
loop = asyncio.get_running_loop()
|
|
31
37
|
for q in list(self._queues):
|
|
@@ -91,3 +91,29 @@ def test_sink_receives_error_level(tool):
|
|
|
91
91
|
tool.add_sink(lambda level, msg, ts, identity: received.append(level))
|
|
92
92
|
tool.error("boom")
|
|
93
93
|
assert received[0] == "ERROR"
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
def test_sink_receives_trace_id_from_event_id_var(tool):
|
|
97
|
+
from microcoreos import current_event_id_var
|
|
98
|
+
received = []
|
|
99
|
+
tool.add_sink(lambda level, msg, ts, identity, trace_id: received.append((msg, trace_id)))
|
|
100
|
+
|
|
101
|
+
token = current_event_id_var.set("evt-12345")
|
|
102
|
+
try:
|
|
103
|
+
tool.info("traced operation")
|
|
104
|
+
finally:
|
|
105
|
+
current_event_id_var.reset(token)
|
|
106
|
+
|
|
107
|
+
assert len(received) == 1
|
|
108
|
+
assert received[0] == ("traced operation", "evt-12345")
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
def test_legacy_4_arg_sink_backwards_compatible(tool):
|
|
112
|
+
received = []
|
|
113
|
+
def legacy_sink(level, msg, ts, identity):
|
|
114
|
+
received.append((level, msg, identity))
|
|
115
|
+
|
|
116
|
+
tool.add_sink(legacy_sink)
|
|
117
|
+
tool.info("legacy message")
|
|
118
|
+
assert len(received) == 1
|
|
119
|
+
assert received[0][1] == "legacy message"
|
|
@@ -26,9 +26,9 @@ REPLACEMENT STANDARD (plugins unaffected):
|
|
|
26
26
|
"""
|
|
27
27
|
|
|
28
28
|
from microcoreos import BaseTool
|
|
29
|
-
from microcoreos import current_identity_var
|
|
29
|
+
from microcoreos import current_identity_var, current_event_id_var
|
|
30
30
|
import datetime
|
|
31
|
-
from typing import List, Callable
|
|
31
|
+
from typing import List, Callable, Optional
|
|
32
32
|
|
|
33
33
|
class LoggerTool(BaseTool):
|
|
34
34
|
"""
|
|
@@ -69,13 +69,29 @@ class LoggerTool(BaseTool):
|
|
|
69
69
|
Use it to attribute errors to specific plugins for health tracking.
|
|
70
70
|
"""
|
|
71
71
|
|
|
72
|
+
def _get_current_trace_id(self) -> Optional[str]:
|
|
73
|
+
"""Extracts current trace_id from OpenTelemetry or current_event_id_var."""
|
|
74
|
+
try:
|
|
75
|
+
from opentelemetry import trace
|
|
76
|
+
span = trace.get_current_span()
|
|
77
|
+
ctx = span.get_span_context()
|
|
78
|
+
if ctx.is_valid:
|
|
79
|
+
return format(ctx.trace_id, "032x")
|
|
80
|
+
except Exception:
|
|
81
|
+
pass
|
|
82
|
+
return current_event_id_var.get()
|
|
83
|
+
|
|
72
84
|
def _broadcast_to_sinks(self, level: str, message: str):
|
|
73
85
|
"""Sends the log to all registered observers."""
|
|
74
86
|
timestamp = datetime.datetime.now().isoformat()
|
|
75
87
|
identity = current_identity_var.get()
|
|
88
|
+
trace_id = self._get_current_trace_id()
|
|
76
89
|
for sink in self._sinks:
|
|
77
90
|
try:
|
|
78
|
-
|
|
91
|
+
try:
|
|
92
|
+
sink(level, message, timestamp, identity, trace_id)
|
|
93
|
+
except TypeError:
|
|
94
|
+
sink(level, message, timestamp, identity)
|
|
79
95
|
except Exception as e:
|
|
80
96
|
# We use print here to avoid recursion if a sink fails
|
|
81
97
|
print(f"[Logger] Sink Failure: {e}")
|
|
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
|
|
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
|
|
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
|
{microcoreos-0.4.3 → microcoreos-0.4.4}/domains/devtools/plugins/discovery_naming_linter_plugin.py
RENAMED
|
File without changes
|
{microcoreos-0.4.3 → microcoreos-0.4.4}/domains/devtools/plugins/domain_isolation_linter_plugin.py
RENAMED
|
File without changes
|
{microcoreos-0.4.3 → microcoreos-0.4.4}/domains/devtools/plugins/event_contract_linter_plugin.py
RENAMED
|
File without changes
|
|
File without changes
|
{microcoreos-0.4.3 → microcoreos-0.4.4}/domains/devtools/plugins/field_divergence_linter_plugin.py
RENAMED
|
File without changes
|
{microcoreos-0.4.3 → microcoreos-0.4.4}/domains/devtools/plugins/route_collision_linter_plugin.py
RENAMED
|
File without changes
|
{microcoreos-0.4.3 → microcoreos-0.4.4}/domains/devtools/plugins/table_ownership_linter_plugin.py
RENAMED
|
File without changes
|
{microcoreos-0.4.3 → microcoreos-0.4.4}/domains/devtools/plugins/tool_doc_drift_linter_plugin.py
RENAMED
|
File without changes
|
{microcoreos-0.4.3 → microcoreos-0.4.4}/domains/system/plugins/event_delivery_monitor_plugin.py
RENAMED
|
File without changes
|
|
File without changes
|
{microcoreos-0.4.3 → microcoreos-0.4.4}/domains/system/plugins/system_events_stream_plugin.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{microcoreos-0.4.3 → microcoreos-0.4.4}/domains/system/plugins/system_traces_stream_plugin.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_domains/chaos/plugins/failing_plugin.py
RENAMED
|
File without changes
|
{microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_domains/chaos/plugins/stress_plugin.py
RENAMED
|
File without changes
|
{microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_domains/ping/plugins/ping_plugin.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_domains/users/plugins/create_user_plugin.py
RENAMED
|
File without changes
|
{microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_domains/users/plugins/delete_user_plugin.py
RENAMED
|
File without changes
|
{microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_domains/users/plugins/get_me_plugin.py
RENAMED
|
File without changes
|
|
File without changes
|
{microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_domains/users/plugins/get_users_plugin.py
RENAMED
|
File without changes
|
{microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_domains/users/plugins/login_plugin.py
RENAMED
|
File without changes
|
{microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_domains/users/plugins/logout_plugin.py
RENAMED
|
File without changes
|
{microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_domains/users/plugins/update_user_plugin.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_tools/postgresql/postgresql_tool.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{microcoreos-0.4.3 → microcoreos-0.4.4}/extras/available_tools/redis_state/redis_state_tool.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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{microcoreos-0.4.3 → microcoreos-0.4.4}/tests/tools/event_bus/test_event_bus_broker_parity.py
RENAMED
|
File without changes
|
|
File without changes
|
{microcoreos-0.4.3 → microcoreos-0.4.4}/tests/tools/event_bus/test_event_bus_kafka_parity.py
RENAMED
|
File without changes
|
{microcoreos-0.4.3 → microcoreos-0.4.4}/tests/tools/event_bus/test_event_bus_rabbitmq_parity.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{microcoreos-0.4.3 → microcoreos-0.4.4}/tests/tools/http_server/test_http_params_hardening.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
|
|
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
|
|
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
|