engineering-platform 2.3.89__tar.gz → 2.3.90__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.
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/PKG-INFO +1 -1
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/pyproject.toml +1 -1
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/ENGINEERING_PLATFORM_CONFIG.json +1 -1
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/ENGINEERING_PLATFORM_VERSION.json +4 -4
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/central_operational_reset.py +32 -7
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/platform_version.py +1 -1
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/templates/workspace-config.json +1 -1
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform.egg-info/PKG-INFO +1 -1
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/README.md +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/setup.cfg +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/__init__.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/__main__.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/agent_state.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/agent_trust.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/assets/dashboard.css +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/assets/dashboard.js +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/assets/dashboard_locales.mjs +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/assets/dashboard_status_store.mjs +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/assets/dashboard_translation.mjs +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/assets/operations-console/apple-touch-icon-dark.png +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/assets/operations-console/apple-touch-icon-light.png +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/assets/operations-console/icon-dark.png +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/assets/operations-console/icon-light.png +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/assets/operations-console/icon-transparent.png +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/assets/operations-console/manifest.webmanifest +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/assurance_scope.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/capability_preflight.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/capability_review.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/central_data_transfer.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/central_database.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/central_store_migration.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/codex_capacity.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/codex_chat.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/codex_observability.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/component_lock.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/component_logging.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/console_presentation.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/console_route_ownership.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/contracts/__init__.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/contracts/ep_consumer.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/contracts/models.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/contracts/projection.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/dashboard_browser_validation.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/dashboard_state.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/dashboard_supervisor.swift +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/dashboard_translation.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/dependabot_producer.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/development_profile.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/drift_diagnostics.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/emergency_recovery.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/engineering_memory.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/ep_consumer_credentials.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/evidence_projection.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/execution_activity.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/execution_context.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/execution_errors.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/execution_evidence.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/execution_executor.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/execution_finalization.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/execution_host.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/execution_host_evidence.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/execution_lease.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/execution_lifecycle.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/execution_models.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/execution_readiness.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/execution_reporting.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/execution_repository.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/execution_timeout_policy.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/execution_timing.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/execution_transaction.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/external_producer_binding.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/file_inbox.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/forensic_attribution.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/forensic_attribution_v2.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/forensic_delta.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/golden_scenario.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/historical_dashboard_configuration.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/host_admin.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/host_preflight.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/installation_relocation.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/installation_update_activation.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/installation_update_admission.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/installation_update_backup.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/installation_update_composition.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/installation_update_executor.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/installation_update_migration.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/installation_update_operation.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/installation_update_plan.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/installation_update_preparation.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/investigation_ledger.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/legacy_inbox_migration.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/legacy_installation_adoption.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/lifecycle_worker.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/live_status.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/local_api.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/local_api_keychain.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/local_repository_binding.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/managed_autonomy.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/managed_codex_runtime.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/merge_delegation.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/operational_installation.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/operational_installation_lock.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/operational_installation_record.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/owner_credential_recovery.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/parity_context.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/parity_lifecycle_dispatcher.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/platform_admin.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/platform_api.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/platform_bootstrap.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/platform_components.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/pr_check_repair.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/pr_evidence_backfill.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/producer.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/product_installation_readback.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/project_agent.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/project_agent_service.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/project_topology.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/prompt_history.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/provider_context.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/provider_context_benchmark.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/provider_context_scope.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/provider_interruption.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/provider_process_identity.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/provider_readiness.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/provider_recovery.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/provider_usage.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/providers.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/qualification.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/qualification_runtime.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/recommendation_handoff.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/reconciliation_adoption.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/release_operation.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/report_analysis.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/repository_attachment.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/repository_handoff.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/resources.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/reviewer_evidence.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/revision_binding.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/schemas/producer-readback-v1.2.schema.json +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/schemas/producer-readback-v1.schema.json +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/schemas/repository-attachment.schema.json +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/server.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/server_console_services.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/server_relay.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/server_service.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/status_model.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/status_reconciliation.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/storage.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/submission_cli.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/submission_intake.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/submission_service.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/system_installation_topology.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/system_server_service.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/telemetry.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/telemetry_contract.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/telemetry_export.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/telemetry_metrics.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/terminal_evidence_reconciliation.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/validation_identity.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/validation_profile.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/version_preparation_delivery.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/workspace_preflight.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/worktree_provenance.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/worktree_tooling.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform.egg-info/SOURCES.txt +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform.egg-info/dependency_links.txt +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform.egg-info/entry_points.txt +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform.egg-info/top_level.txt +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/tests/test_adaptive_action_sizing_design.py +0 -0
- {engineering_platform-2.3.89 → engineering_platform-2.3.90}/tests/test_role_task_model_policy_design.py +0 -0
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"bootstrap_contract": "2026.12",
|
|
3
3
|
"checkpoint_format": 1,
|
|
4
|
-
"dashboard_version": "2.3.
|
|
4
|
+
"dashboard_version": "2.3.90",
|
|
5
5
|
"handoff_protocol": 1,
|
|
6
6
|
"memory_format": 2,
|
|
7
7
|
"minimum_codex_cli": "0.146.0",
|
|
8
8
|
"inbox_protocol": 1,
|
|
9
|
-
"platform_version": "2.3.
|
|
9
|
+
"platform_version": "2.3.90",
|
|
10
10
|
"report_format": 2,
|
|
11
|
-
"runner_version": "2.3.
|
|
11
|
+
"runner_version": "2.3.90",
|
|
12
12
|
"status_model": 1,
|
|
13
13
|
"storage_schema": 45,
|
|
14
|
-
"watcher_version": "2.3.
|
|
14
|
+
"watcher_version": "2.3.90"
|
|
15
15
|
}
|
|
@@ -223,6 +223,31 @@ def _implementation_digest() -> str:
|
|
|
223
223
|
})
|
|
224
224
|
|
|
225
225
|
|
|
226
|
+
# The published 2.3.89 reset implementation can leave an operation at
|
|
227
|
+
# ARTIFACTS_ARCHIVED when operational engineering_metadata rows are present.
|
|
228
|
+
# Permit only that exact installed implementation to cross the fixed apply
|
|
229
|
+
# boundary; the plan, backup, identity, schema, generation and fences are still
|
|
230
|
+
# verified by apply before any database effect.
|
|
231
|
+
_ARCHIVED_RESET_COMPATIBILITY = frozenset({
|
|
232
|
+
("2.3.89", "UNAVAILABLE_IN_INSTALLED_PACKAGE",
|
|
233
|
+
"sha256:17ec03725e15672ef9511382e0b3d2c72e3f502823a35b89bea170882f4a14b8"),
|
|
234
|
+
})
|
|
235
|
+
|
|
236
|
+
|
|
237
|
+
def _implementation_binding_valid(plan: dict[str, object], state: str) -> bool:
|
|
238
|
+
binding = (
|
|
239
|
+
plan.get("product_version"), plan.get("implementation_source_revision"),
|
|
240
|
+
plan.get("implementation_digest"),
|
|
241
|
+
)
|
|
242
|
+
current = (
|
|
243
|
+
CURRENT_PLATFORM_VERSION, _implementation_source_revision(),
|
|
244
|
+
_implementation_digest(),
|
|
245
|
+
)
|
|
246
|
+
return binding == current or (
|
|
247
|
+
state == "ARTIFACTS_ARCHIVED" and binding in _ARCHIVED_RESET_COMPATIBILITY
|
|
248
|
+
)
|
|
249
|
+
|
|
250
|
+
|
|
226
251
|
def _implementation_source_revision() -> str:
|
|
227
252
|
try:
|
|
228
253
|
module = Path(__file__).resolve()
|
|
@@ -2302,11 +2327,7 @@ def apply(data_root: Path, *, operation_id: str, plan_digest: str) -> dict[str,
|
|
|
2302
2327
|
raise OperationalResetError("PRESERVED_BINDINGS_CHANGED")
|
|
2303
2328
|
if _schema_objects(connection) != plan["schema_objects"]:
|
|
2304
2329
|
raise OperationalResetError("SCHEMA_OBJECTS_CHANGED")
|
|
2305
|
-
if (
|
|
2306
|
-
plan.get("product_version") != CURRENT_PLATFORM_VERSION
|
|
2307
|
-
or plan.get("implementation_source_revision") != _implementation_source_revision()
|
|
2308
|
-
or plan.get("implementation_digest") != _implementation_digest()
|
|
2309
|
-
):
|
|
2330
|
+
if not _implementation_binding_valid(plan, "ARTIFACTS_ARCHIVED"):
|
|
2310
2331
|
raise OperationalResetError("IMPLEMENTATION_PROVENANCE_CHANGED")
|
|
2311
2332
|
generation_before = int(connection.execute(
|
|
2312
2333
|
"SELECT generation FROM ep_operational_dataset_state WHERE singleton=1"
|
|
@@ -2316,11 +2337,15 @@ def apply(data_root: Path, *, operation_id: str, plan_digest: str) -> dict[str,
|
|
|
2316
2337
|
# Immutable-evidence and maintenance-block triggers are removed and
|
|
2317
2338
|
# recreated inside this one uncommitted transaction. Other writers
|
|
2318
2339
|
# cannot observe an unfenced schema window.
|
|
2340
|
+
reset_trigger_tables = (
|
|
2341
|
+
OPERATIONAL_HISTORY | DERIVED_CACHE_OR_PROJECTION
|
|
2342
|
+
| {"engineering_metadata"}
|
|
2343
|
+
)
|
|
2319
2344
|
triggers = [
|
|
2320
2345
|
(str(name), str(sql)) for name, sql in connection.execute(
|
|
2321
2346
|
"SELECT name,sql FROM sqlite_master WHERE type='trigger' AND tbl_name IN ("
|
|
2322
|
-
+ ",".join("?" for _ in
|
|
2323
|
-
tuple(sorted(
|
|
2347
|
+
+ ",".join("?" for _ in reset_trigger_tables) + ")",
|
|
2348
|
+
tuple(sorted(reset_trigger_tables)),
|
|
2324
2349
|
).fetchall() if sql is not None
|
|
2325
2350
|
]
|
|
2326
2351
|
for name, _sql in triggers:
|
|
@@ -12,7 +12,7 @@ from .storage import ENGINEERING_STORAGE_SCHEMA_VERSION
|
|
|
12
12
|
|
|
13
13
|
SEMVER = re.compile(r"^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)$")
|
|
14
14
|
CONTRACT = re.compile(r"^(\d{4})\.(0[1-9]|1[0-2])$")
|
|
15
|
-
CURRENT_PLATFORM_VERSION = "2.3.
|
|
15
|
+
CURRENT_PLATFORM_VERSION = "2.3.90"
|
|
16
16
|
MANIFEST_FIELDS = frozenset(
|
|
17
17
|
{
|
|
18
18
|
"platform_version",
|
|
File without changes
|
|
File without changes
|
{engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/__init__.py
RENAMED
|
File without changes
|
{engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/__main__.py
RENAMED
|
File without changes
|
{engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/agent_state.py
RENAMED
|
File without changes
|
{engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/agent_trust.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
|
{engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/codex_chat.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
|
{engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/file_inbox.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/host_admin.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
|
{engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/live_status.py
RENAMED
|
File without changes
|
{engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/local_api.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
|
{engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/platform_api.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/producer.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
|
{engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/providers.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
|
{engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/resources.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/server.py
RENAMED
|
File without changes
|
|
File without changes
|
{engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/server_relay.py
RENAMED
|
File without changes
|
|
File without changes
|
{engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/status_model.py
RENAMED
|
File without changes
|
|
File without changes
|
{engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/storage.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{engineering_platform-2.3.89 → engineering_platform-2.3.90}/src/engineering_platform/telemetry.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
|