## S01_identical $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/S01_identical --context /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/local.json expected exit=0 code=None actual exit=0 stdout: {"classification": "IDENTICAL_SNAPSHOT_BYTES", "output": "/tmp/release-change-selftest-74u1959a/S01_identical", "status": "RECORDED_OFFLINE_NOT_VALIDATED"} stderr: exact checks=PASS {"actual_exit": 0, "actual_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "IDENTICAL_SNAPSHOT_BYTES", "context_facts": {"channel": "local_repository", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "diff": {"added": [], "changed": [], "removed": [], "unchanged": ["plugin.json", "skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": [], "next_evidence_rule_ids": [["C01", "C09"], ["C01", "C09"]], "version_relation": "same"}, "actual_record": {"context": {"basis": "READER_DECLARATION_NOT_OBSERVATION", "facts": {"channel": "local_repository", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/local.json", "sha256": "5d5adbb7b794def41a4148eb63410a2eec97b802647a6ab304014668512a153c"}, "evidence_kind": "OFFLINE_ENGINEERING_ONLY", "exclusions": ["whole-repository/runtime selection inference", "archive extraction or creation", "complete plugin/schema validation", "effective overlay/extension metadata", "component/service detection", "semantic diff or automatic version choice", "secret/safety scanning", "host installation/update/invocation", "portal/review/approval/publication", "network/deployment/authorization"], "next_evidence": [{"basis": "OUR_MAINTENANCE_RECOMMENDATION", "rule_ids": ["C01", "C09"], "text": "Record actual loaded source/version and fresh-session behavior separately; source hashes never establish a host result."}, {"basis": "SOURCE_LINKED_RECOMMENDATION_CONDITIONED_ON_DECLARED_CHANNEL", "rule_ids": ["C01", "C09"], "text": "Update the explicitly chosen catalog source, follow documented refresh/restart/new-session steps for the actual client, then observe the loaded copy. No such action was run here."}], "recorder_policy_limits": {"context_bytes": 65536, "depth": 32, "entries": 4096, "file_bytes": 8388608, "files": 1024, "manifest_parse_bytes": 1048576, "path_chars": 1024, "tree_bytes": 67108864}, "schema_version": "1", "scope": "Explicit reader-selected runtime-source regular-file snapshot bytes, root portable identity/version, and reader declarations only.", "source_rules": [{"checked_utc": "2026-10-02", "id": "C01", "scope": "source, cache, restart, portable/overlay boundaries", "url": "https://developers.openai.com/plugins/build/plugins"}, {"checked_utc": "2026-10-02", "id": "C02", "scope": "optional version; root identity reading is not schema validation", "url": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json"}, {"checked_utc": "2026-10-02", "id": "C03", "scope": "public bundled update: complete versioned ZIP, checks, review, Publish", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C04", "scope": "MCP scan/held/live tool definition boundary", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C05", "scope": "live deployed implementation is not frozen by held metadata", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C06", "scope": "MCP addition to an existing skills-only listing currently unsupported", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C07", "scope": "existing MCP URL update unsupported; contact support", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C08", "scope": "path/new version versus origin/new plugin guidance conflicts with C07", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C09", "scope": "supported install/new-session procedure; no version inspection method established here", "url": "https://learn.chatgpt.com/docs/plugins"}, {"checked_utc": "2026-10-02", "id": "C10", "scope": "portable version optional; explicit semantic version for public submission/updates", "url": "https://developers.openai.com/plugins/deploy/submission"}], "states": {"live_backend_deployment": {"actual_test_status": "NOT RUN", "authorized_behavior_evidence": "UNKNOWN", "declarations": {"declared_deployment_id": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}}, "observed_contract": "UNKNOWN", "observed_deployment_id": "UNKNOWN", "observed_endpoint": "UNKNOWN"}, "loaded_host_session": {"actual_test_status": "NOT RUN", "declarations": {"declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN"}, "observed_fingerprint": "UNKNOWN", "observed_source": "UNKNOWN", "observed_version": "UNKNOWN", "session_evidence": "UNKNOWN"}, "reviewed_published_version": {"actual_test_status": "NOT RUN", "declarations": {"declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN"}, "observed_directory_fingerprint": "UNKNOWN", "observed_published_version": "UNKNOWN", "observed_review_status": "UNKNOWN", "publication_evidence": "UNKNOWN"}, "source_bundle": {"after": {"files": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "4ca3803a3d39acdb719745d4cadf56021c49ed5120daf21a4a5f63140d170a46", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2878}, "basis": "OBSERVED_OFFLINE", "before": {"files": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "4ca3803a3d39acdb719745d4cadf56021c49ed5120daf21a4a5f63140d170a46", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2878}, "classification": {"bytes_changed": false, "label": "IDENTICAL_SNAPSHOT_BYTES", "manifest_identity_relation": "same", "manifest_version_relation": "same", "propagation": "UNKNOWN", "semantic_impact": "UNKNOWN", "semantic_version_choice": "NOT PERFORMED", "version_only_basis": "NOT ESTABLISHED"}, "diff": {"added": [], "changed": [], "removed": [], "unchanged": [{"after": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "before": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "group": "manifest", "path": "plugin.json"}, {"after": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "before": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "group": "skill", "path": "skills/meeting-evidence/SKILL.md"}]}, "loaded_or_published_fingerprint": "UNKNOWN"}}, "tool": "release-change-record-v1", "unknowns": ["selected snapshots' completeness as intended runtime", "semantic correctness and impact", "effective components/settings", "actual installed/loaded version and current-session refresh", "actual public version/review/approval", "actual deployed code/tools/auth/permissions", "adopter access, propagation, review timing and rollback capability"]}, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/S01_identical", "--context", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/local.json"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/S01_identical --context /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/local.json", "expected_error_code": null, "expected_exit": 0, "expected_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "IDENTICAL_SNAPSHOT_BYTES", "context_facts": {"channel": "local_repository", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "diff": {"added": [], "changed": [], "removed": [], "unchanged": ["plugin.json", "skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": [], "next_evidence_rule_ids": [["C01", "C09"], ["C01", "C09"]], "version_relation": "same"}, "id": "S01_identical", "passed": true, "stderr": "", "stdout": "{\"classification\": \"IDENTICAL_SNAPSHOT_BYTES\", \"output\": \"/tmp/release-change-selftest-74u1959a/S01_identical\", \"status\": \"RECORDED_OFFLINE_NOT_VALIDATED\"}\n"} ## S02_instruction_same_version $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/instruction-same-version --out /tmp/release-change-selftest-74u1959a/S02_instruction_same_version --context /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/public.json expected exit=0 code=None actual exit=0 stdout: {"classification": "CHANGED_BYTES_SAME_VERSION", "output": "/tmp/release-change-selftest-74u1959a/S02_instruction_same_version", "status": "RECORDED_OFFLINE_NOT_VALIDATED"} stderr: exact checks=PASS {"actual_exit": 0, "actual_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2677, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "8d4d784770db337fd827c932a3974ceeb8a8255357027fe78fce34f0f1d1db65"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "CHANGED_BYTES_SAME_VERSION", "context_facts": {"channel": "public_directory", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "diff": {"added": [], "changed": ["skills/meeting-evidence/SKILL.md"], "removed": [], "unchanged": ["plugin.json"]}, "manifest_issues_after": [], "next_evidence_rule_ids": [["C01", "C09"], ["C03", "C10"]], "version_relation": "same"}, "actual_record": {"context": {"basis": "READER_DECLARATION_NOT_OBSERVATION", "facts": {"channel": "public_directory", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/public.json", "sha256": "ad2091696b27383ac60464913fae91e29042cedd907285dec493e30374073820"}, "evidence_kind": "OFFLINE_ENGINEERING_ONLY", "exclusions": ["whole-repository/runtime selection inference", "archive extraction or creation", "complete plugin/schema validation", "effective overlay/extension metadata", "component/service detection", "semantic diff or automatic version choice", "secret/safety scanning", "host installation/update/invocation", "portal/review/approval/publication", "network/deployment/authorization"], "next_evidence": [{"basis": "OUR_MAINTENANCE_RECOMMENDATION", "rule_ids": ["C01", "C09"], "text": "Record actual loaded source/version and fresh-session behavior separately; source hashes never establish a host result."}, {"basis": "SOURCE_LINKED_RECOMMENDATION_CONDITIONED_ON_DECLARED_CHANNEL", "rule_ids": ["C03", "C10"], "text": "For intended bundled public updates, use the documented complete versioned ZIP/checks/review/Publish path. Choose the version yourself; this record is not an eligibility or submission-readiness verdict."}], "recorder_policy_limits": {"context_bytes": 65536, "depth": 32, "entries": 4096, "file_bytes": 8388608, "files": 1024, "manifest_parse_bytes": 1048576, "path_chars": 1024, "tree_bytes": 67108864}, "schema_version": "1", "scope": "Explicit reader-selected runtime-source regular-file snapshot bytes, root portable identity/version, and reader declarations only.", "source_rules": [{"checked_utc": "2026-10-02", "id": "C01", "scope": "source, cache, restart, portable/overlay boundaries", "url": "https://developers.openai.com/plugins/build/plugins"}, {"checked_utc": "2026-10-02", "id": "C02", "scope": "optional version; root identity reading is not schema validation", "url": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json"}, {"checked_utc": "2026-10-02", "id": "C03", "scope": "public bundled update: complete versioned ZIP, checks, review, Publish", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C04", "scope": "MCP scan/held/live tool definition boundary", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C05", "scope": "live deployed implementation is not frozen by held metadata", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C06", "scope": "MCP addition to an existing skills-only listing currently unsupported", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C07", "scope": "existing MCP URL update unsupported; contact support", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C08", "scope": "path/new version versus origin/new plugin guidance conflicts with C07", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C09", "scope": "supported install/new-session procedure; no version inspection method established here", "url": "https://learn.chatgpt.com/docs/plugins"}, {"checked_utc": "2026-10-02", "id": "C10", "scope": "portable version optional; explicit semantic version for public submission/updates", "url": "https://developers.openai.com/plugins/deploy/submission"}], "states": {"live_backend_deployment": {"actual_test_status": "NOT RUN", "authorized_behavior_evidence": "UNKNOWN", "declarations": {"declared_deployment_id": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}}, "observed_contract": "UNKNOWN", "observed_deployment_id": "UNKNOWN", "observed_endpoint": "UNKNOWN"}, "loaded_host_session": {"actual_test_status": "NOT RUN", "declarations": {"declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN"}, "observed_fingerprint": "UNKNOWN", "observed_source": "UNKNOWN", "observed_version": "UNKNOWN", "session_evidence": "UNKNOWN"}, "reviewed_published_version": {"actual_test_status": "NOT RUN", "declarations": {"declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN"}, "observed_directory_fingerprint": "UNKNOWN", "observed_published_version": "UNKNOWN", "observed_review_status": "UNKNOWN", "publication_evidence": "UNKNOWN"}, "source_bundle": {"after": {"files": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2677, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "8d4d784770db337fd827c932a3974ceeb8a8255357027fe78fce34f0f1d1db65"}], "fingerprint": "1980998fd12312c3b735ff66ff1ce2c0de29f8c44ef0e1f7aaa695f166c0f3f9", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/instruction-same-version", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2952}, "basis": "OBSERVED_OFFLINE", "before": {"files": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "4ca3803a3d39acdb719745d4cadf56021c49ed5120daf21a4a5f63140d170a46", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2878}, "classification": {"bytes_changed": true, "label": "CHANGED_BYTES_SAME_VERSION", "manifest_identity_relation": "same", "manifest_version_relation": "same", "propagation": "UNKNOWN", "semantic_impact": "UNKNOWN", "semantic_version_choice": "NOT PERFORMED", "version_only_basis": "NOT ESTABLISHED"}, "diff": {"added": [], "changed": [{"after": {"bytes": 2677, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "8d4d784770db337fd827c932a3974ceeb8a8255357027fe78fce34f0f1d1db65"}, "before": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "group": "skill", "path": "skills/meeting-evidence/SKILL.md"}], "removed": [], "unchanged": [{"after": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "before": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "group": "manifest", "path": "plugin.json"}]}, "loaded_or_published_fingerprint": "UNKNOWN"}}, "tool": "release-change-record-v1", "unknowns": ["selected snapshots' completeness as intended runtime", "semantic correctness and impact", "effective components/settings", "actual installed/loaded version and current-session refresh", "actual public version/review/approval", "actual deployed code/tools/auth/permissions", "adopter access, propagation, review timing and rollback capability"]}, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/instruction-same-version", "--out", "/tmp/release-change-selftest-74u1959a/S02_instruction_same_version", "--context", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/public.json"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/instruction-same-version --out /tmp/release-change-selftest-74u1959a/S02_instruction_same_version --context /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/public.json", "expected_error_code": null, "expected_exit": 0, "expected_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2677, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "8d4d784770db337fd827c932a3974ceeb8a8255357027fe78fce34f0f1d1db65"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "CHANGED_BYTES_SAME_VERSION", "context_facts": {"channel": "public_directory", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "diff": {"added": [], "changed": ["skills/meeting-evidence/SKILL.md"], "removed": [], "unchanged": ["plugin.json"]}, "manifest_issues_after": [], "next_evidence_rule_ids": [["C01", "C09"], ["C03", "C10"]], "version_relation": "same"}, "id": "S02_instruction_same_version", "passed": true, "stderr": "", "stdout": "{\"classification\": \"CHANGED_BYTES_SAME_VERSION\", \"output\": \"/tmp/release-change-selftest-74u1959a/S02_instruction_same_version\", \"status\": \"RECORDED_OFFLINE_NOT_VALIDATED\"}\n"} ## S03_instruction_and_version $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/instruction-and-version --out /tmp/release-change-selftest-74u1959a/S03_instruction_and_version --context /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/public.json expected exit=0 code=None actual exit=0 stdout: {"classification": "CHANGED_BYTES_AND_VERSION", "output": "/tmp/release-change-selftest-74u1959a/S03_instruction_and_version", "status": "RECORDED_OFFLINE_NOT_VALIDATED"} stderr: exact checks=PASS {"actual_exit": 0, "actual_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "a18d3fce3b3bc54e229e73dd6abc1053b1c68fe49ec146d38b4dd69b0c81b527"}, {"bytes": 2677, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "8d4d784770db337fd827c932a3974ceeb8a8255357027fe78fce34f0f1d1db65"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "CHANGED_BYTES_AND_VERSION", "context_facts": {"channel": "public_directory", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "diff": {"added": [], "changed": ["plugin.json", "skills/meeting-evidence/SKILL.md"], "removed": [], "unchanged": []}, "manifest_issues_after": [], "next_evidence_rule_ids": [["C01", "C09"], ["C03", "C10"]], "version_relation": "different"}, "actual_record": {"context": {"basis": "READER_DECLARATION_NOT_OBSERVATION", "facts": {"channel": "public_directory", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/public.json", "sha256": "ad2091696b27383ac60464913fae91e29042cedd907285dec493e30374073820"}, "evidence_kind": "OFFLINE_ENGINEERING_ONLY", "exclusions": ["whole-repository/runtime selection inference", "archive extraction or creation", "complete plugin/schema validation", "effective overlay/extension metadata", "component/service detection", "semantic diff or automatic version choice", "secret/safety scanning", "host installation/update/invocation", "portal/review/approval/publication", "network/deployment/authorization"], "next_evidence": [{"basis": "OUR_MAINTENANCE_RECOMMENDATION", "rule_ids": ["C01", "C09"], "text": "Record actual loaded source/version and fresh-session behavior separately; source hashes never establish a host result."}, {"basis": "SOURCE_LINKED_RECOMMENDATION_CONDITIONED_ON_DECLARED_CHANNEL", "rule_ids": ["C03", "C10"], "text": "For intended bundled public updates, use the documented complete versioned ZIP/checks/review/Publish path. Choose the version yourself; this record is not an eligibility or submission-readiness verdict."}], "recorder_policy_limits": {"context_bytes": 65536, "depth": 32, "entries": 4096, "file_bytes": 8388608, "files": 1024, "manifest_parse_bytes": 1048576, "path_chars": 1024, "tree_bytes": 67108864}, "schema_version": "1", "scope": "Explicit reader-selected runtime-source regular-file snapshot bytes, root portable identity/version, and reader declarations only.", "source_rules": [{"checked_utc": "2026-10-02", "id": "C01", "scope": "source, cache, restart, portable/overlay boundaries", "url": "https://developers.openai.com/plugins/build/plugins"}, {"checked_utc": "2026-10-02", "id": "C02", "scope": "optional version; root identity reading is not schema validation", "url": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json"}, {"checked_utc": "2026-10-02", "id": "C03", "scope": "public bundled update: complete versioned ZIP, checks, review, Publish", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C04", "scope": "MCP scan/held/live tool definition boundary", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C05", "scope": "live deployed implementation is not frozen by held metadata", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C06", "scope": "MCP addition to an existing skills-only listing currently unsupported", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C07", "scope": "existing MCP URL update unsupported; contact support", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C08", "scope": "path/new version versus origin/new plugin guidance conflicts with C07", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C09", "scope": "supported install/new-session procedure; no version inspection method established here", "url": "https://learn.chatgpt.com/docs/plugins"}, {"checked_utc": "2026-10-02", "id": "C10", "scope": "portable version optional; explicit semantic version for public submission/updates", "url": "https://developers.openai.com/plugins/deploy/submission"}], "states": {"live_backend_deployment": {"actual_test_status": "NOT RUN", "authorized_behavior_evidence": "UNKNOWN", "declarations": {"declared_deployment_id": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}}, "observed_contract": "UNKNOWN", "observed_deployment_id": "UNKNOWN", "observed_endpoint": "UNKNOWN"}, "loaded_host_session": {"actual_test_status": "NOT RUN", "declarations": {"declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN"}, "observed_fingerprint": "UNKNOWN", "observed_source": "UNKNOWN", "observed_version": "UNKNOWN", "session_evidence": "UNKNOWN"}, "reviewed_published_version": {"actual_test_status": "NOT RUN", "declarations": {"declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN"}, "observed_directory_fingerprint": "UNKNOWN", "observed_published_version": "UNKNOWN", "observed_review_status": "UNKNOWN", "publication_evidence": "UNKNOWN"}, "source_bundle": {"after": {"files": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "a18d3fce3b3bc54e229e73dd6abc1053b1c68fe49ec146d38b4dd69b0c81b527"}, {"bytes": 2677, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "8d4d784770db337fd827c932a3974ceeb8a8255357027fe78fce34f0f1d1db65"}], "fingerprint": "2ec1a3d0fb095f01eea701f373846ba220ba5c9f841b9a96e4f63d3cebb4e056", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/instruction-and-version", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.1"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2952}, "basis": "OBSERVED_OFFLINE", "before": {"files": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "4ca3803a3d39acdb719745d4cadf56021c49ed5120daf21a4a5f63140d170a46", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2878}, "classification": {"bytes_changed": true, "label": "CHANGED_BYTES_AND_VERSION", "manifest_identity_relation": "same", "manifest_version_relation": "different", "propagation": "UNKNOWN", "semantic_impact": "UNKNOWN", "semantic_version_choice": "NOT PERFORMED", "version_only_basis": "NOT ESTABLISHED"}, "diff": {"added": [], "changed": [{"after": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "a18d3fce3b3bc54e229e73dd6abc1053b1c68fe49ec146d38b4dd69b0c81b527"}, "before": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "group": "manifest", "path": "plugin.json"}, {"after": {"bytes": 2677, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "8d4d784770db337fd827c932a3974ceeb8a8255357027fe78fce34f0f1d1db65"}, "before": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "group": "skill", "path": "skills/meeting-evidence/SKILL.md"}], "removed": [], "unchanged": []}, "loaded_or_published_fingerprint": "UNKNOWN"}}, "tool": "release-change-record-v1", "unknowns": ["selected snapshots' completeness as intended runtime", "semantic correctness and impact", "effective components/settings", "actual installed/loaded version and current-session refresh", "actual public version/review/approval", "actual deployed code/tools/auth/permissions", "adopter access, propagation, review timing and rollback capability"]}, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/instruction-and-version", "--out", "/tmp/release-change-selftest-74u1959a/S03_instruction_and_version", "--context", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/public.json"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/instruction-and-version --out /tmp/release-change-selftest-74u1959a/S03_instruction_and_version --context /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/public.json", "expected_error_code": null, "expected_exit": 0, "expected_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "a18d3fce3b3bc54e229e73dd6abc1053b1c68fe49ec146d38b4dd69b0c81b527"}, {"bytes": 2677, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "8d4d784770db337fd827c932a3974ceeb8a8255357027fe78fce34f0f1d1db65"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "CHANGED_BYTES_AND_VERSION", "context_facts": {"channel": "public_directory", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "diff": {"added": [], "changed": ["plugin.json", "skills/meeting-evidence/SKILL.md"], "removed": [], "unchanged": []}, "manifest_issues_after": [], "next_evidence_rule_ids": [["C01", "C09"], ["C03", "C10"]], "version_relation": "different"}, "id": "S03_instruction_and_version", "passed": true, "stderr": "", "stdout": "{\"classification\": \"CHANGED_BYTES_AND_VERSION\", \"output\": \"/tmp/release-change-selftest-74u1959a/S03_instruction_and_version\", \"status\": \"RECORDED_OFFLINE_NOT_VALIDATED\"}\n"} ## S04_version_only $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/version-only --out /tmp/release-change-selftest-74u1959a/S04_version_only --context /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/local.json expected exit=0 code=None actual exit=0 stdout: {"classification": "VERSION_ONLY_ROOT_FIELD_EDIT", "output": "/tmp/release-change-selftest-74u1959a/S04_version_only", "status": "RECORDED_OFFLINE_NOT_VALIDATED"} stderr: exact checks=PASS {"actual_exit": 0, "actual_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "a18d3fce3b3bc54e229e73dd6abc1053b1c68fe49ec146d38b4dd69b0c81b527"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "VERSION_ONLY_ROOT_FIELD_EDIT", "context_facts": {"channel": "local_repository", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "diff": {"added": [], "changed": ["plugin.json"], "removed": [], "unchanged": ["skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": [], "next_evidence_rule_ids": [["C01", "C09"], ["C01", "C09"]], "version_relation": "different"}, "actual_record": {"context": {"basis": "READER_DECLARATION_NOT_OBSERVATION", "facts": {"channel": "local_repository", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/local.json", "sha256": "5d5adbb7b794def41a4148eb63410a2eec97b802647a6ab304014668512a153c"}, "evidence_kind": "OFFLINE_ENGINEERING_ONLY", "exclusions": ["whole-repository/runtime selection inference", "archive extraction or creation", "complete plugin/schema validation", "effective overlay/extension metadata", "component/service detection", "semantic diff or automatic version choice", "secret/safety scanning", "host installation/update/invocation", "portal/review/approval/publication", "network/deployment/authorization"], "next_evidence": [{"basis": "OUR_MAINTENANCE_RECOMMENDATION", "rule_ids": ["C01", "C09"], "text": "Record actual loaded source/version and fresh-session behavior separately; source hashes never establish a host result."}, {"basis": "SOURCE_LINKED_RECOMMENDATION_CONDITIONED_ON_DECLARED_CHANNEL", "rule_ids": ["C01", "C09"], "text": "Update the explicitly chosen catalog source, follow documented refresh/restart/new-session steps for the actual client, then observe the loaded copy. No such action was run here."}], "recorder_policy_limits": {"context_bytes": 65536, "depth": 32, "entries": 4096, "file_bytes": 8388608, "files": 1024, "manifest_parse_bytes": 1048576, "path_chars": 1024, "tree_bytes": 67108864}, "schema_version": "1", "scope": "Explicit reader-selected runtime-source regular-file snapshot bytes, root portable identity/version, and reader declarations only.", "source_rules": [{"checked_utc": "2026-10-02", "id": "C01", "scope": "source, cache, restart, portable/overlay boundaries", "url": "https://developers.openai.com/plugins/build/plugins"}, {"checked_utc": "2026-10-02", "id": "C02", "scope": "optional version; root identity reading is not schema validation", "url": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json"}, {"checked_utc": "2026-10-02", "id": "C03", "scope": "public bundled update: complete versioned ZIP, checks, review, Publish", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C04", "scope": "MCP scan/held/live tool definition boundary", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C05", "scope": "live deployed implementation is not frozen by held metadata", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C06", "scope": "MCP addition to an existing skills-only listing currently unsupported", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C07", "scope": "existing MCP URL update unsupported; contact support", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C08", "scope": "path/new version versus origin/new plugin guidance conflicts with C07", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C09", "scope": "supported install/new-session procedure; no version inspection method established here", "url": "https://learn.chatgpt.com/docs/plugins"}, {"checked_utc": "2026-10-02", "id": "C10", "scope": "portable version optional; explicit semantic version for public submission/updates", "url": "https://developers.openai.com/plugins/deploy/submission"}], "states": {"live_backend_deployment": {"actual_test_status": "NOT RUN", "authorized_behavior_evidence": "UNKNOWN", "declarations": {"declared_deployment_id": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}}, "observed_contract": "UNKNOWN", "observed_deployment_id": "UNKNOWN", "observed_endpoint": "UNKNOWN"}, "loaded_host_session": {"actual_test_status": "NOT RUN", "declarations": {"declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN"}, "observed_fingerprint": "UNKNOWN", "observed_source": "UNKNOWN", "observed_version": "UNKNOWN", "session_evidence": "UNKNOWN"}, "reviewed_published_version": {"actual_test_status": "NOT RUN", "declarations": {"declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN"}, "observed_directory_fingerprint": "UNKNOWN", "observed_published_version": "UNKNOWN", "observed_review_status": "UNKNOWN", "publication_evidence": "UNKNOWN"}, "source_bundle": {"after": {"files": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "a18d3fce3b3bc54e229e73dd6abc1053b1c68fe49ec146d38b4dd69b0c81b527"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "e4aba865c480e7dc4e82e24cbfcff4f2c75db0c7df1f9d6a3eec0d9783dd1b15", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/version-only", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.1"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2878}, "basis": "OBSERVED_OFFLINE", "before": {"files": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "4ca3803a3d39acdb719745d4cadf56021c49ed5120daf21a4a5f63140d170a46", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2878}, "classification": {"bytes_changed": true, "label": "VERSION_ONLY_ROOT_FIELD_EDIT", "manifest_identity_relation": "same", "manifest_version_relation": "different", "propagation": "UNKNOWN", "semantic_impact": "UNKNOWN", "semantic_version_choice": "NOT PERFORMED", "version_only_basis": "strict parsed root objects equal after removing version; exact changed path plugin.json only; not plugin semantic interpretation"}, "diff": {"added": [], "changed": [{"after": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "a18d3fce3b3bc54e229e73dd6abc1053b1c68fe49ec146d38b4dd69b0c81b527"}, "before": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "group": "manifest", "path": "plugin.json"}], "removed": [], "unchanged": [{"after": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "before": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "group": "skill", "path": "skills/meeting-evidence/SKILL.md"}]}, "loaded_or_published_fingerprint": "UNKNOWN"}}, "tool": "release-change-record-v1", "unknowns": ["selected snapshots' completeness as intended runtime", "semantic correctness and impact", "effective components/settings", "actual installed/loaded version and current-session refresh", "actual public version/review/approval", "actual deployed code/tools/auth/permissions", "adopter access, propagation, review timing and rollback capability"]}, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/version-only", "--out", "/tmp/release-change-selftest-74u1959a/S04_version_only", "--context", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/local.json"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/version-only --out /tmp/release-change-selftest-74u1959a/S04_version_only --context /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/local.json", "expected_error_code": null, "expected_exit": 0, "expected_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "a18d3fce3b3bc54e229e73dd6abc1053b1c68fe49ec146d38b4dd69b0c81b527"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "VERSION_ONLY_ROOT_FIELD_EDIT", "context_facts": {"channel": "local_repository", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "diff": {"added": [], "changed": ["plugin.json"], "removed": [], "unchanged": ["skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": [], "next_evidence_rule_ids": [["C01", "C09"], ["C01", "C09"]], "version_relation": "different"}, "id": "S04_version_only", "passed": true, "stderr": "", "stdout": "{\"classification\": \"VERSION_ONLY_ROOT_FIELD_EDIT\", \"output\": \"/tmp/release-change-selftest-74u1959a/S04_version_only\", \"status\": \"RECORDED_OFFLINE_NOT_VALIDATED\"}\n"} ## S05_asset_addition $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/asset-added --out /tmp/release-change-selftest-74u1959a/S05_asset_addition --context /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/public.json expected exit=0 code=None actual exit=0 stdout: {"classification": "CHANGED_BYTES_SAME_VERSION", "output": "/tmp/release-change-selftest-74u1959a/S05_asset_addition", "status": "RECORDED_OFFLINE_NOT_VALIDATED"} stderr: exact checks=PASS {"actual_exit": 0, "actual_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 59, "group": "asset", "path": "assets/simulation-note.txt", "sha256": "4041d80bbb65d2bf0a64660064877a7989e7b82a47487fd633495fb1054c32f2"}, {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "CHANGED_BYTES_SAME_VERSION", "context_facts": {"channel": "public_directory", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "diff": {"added": ["assets/simulation-note.txt"], "changed": [], "removed": [], "unchanged": ["plugin.json", "skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": [], "next_evidence_rule_ids": [["C01", "C09"], ["C03", "C10"]], "version_relation": "same"}, "actual_record": {"context": {"basis": "READER_DECLARATION_NOT_OBSERVATION", "facts": {"channel": "public_directory", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/public.json", "sha256": "ad2091696b27383ac60464913fae91e29042cedd907285dec493e30374073820"}, "evidence_kind": "OFFLINE_ENGINEERING_ONLY", "exclusions": ["whole-repository/runtime selection inference", "archive extraction or creation", "complete plugin/schema validation", "effective overlay/extension metadata", "component/service detection", "semantic diff or automatic version choice", "secret/safety scanning", "host installation/update/invocation", "portal/review/approval/publication", "network/deployment/authorization"], "next_evidence": [{"basis": "OUR_MAINTENANCE_RECOMMENDATION", "rule_ids": ["C01", "C09"], "text": "Record actual loaded source/version and fresh-session behavior separately; source hashes never establish a host result."}, {"basis": "SOURCE_LINKED_RECOMMENDATION_CONDITIONED_ON_DECLARED_CHANNEL", "rule_ids": ["C03", "C10"], "text": "For intended bundled public updates, use the documented complete versioned ZIP/checks/review/Publish path. Choose the version yourself; this record is not an eligibility or submission-readiness verdict."}], "recorder_policy_limits": {"context_bytes": 65536, "depth": 32, "entries": 4096, "file_bytes": 8388608, "files": 1024, "manifest_parse_bytes": 1048576, "path_chars": 1024, "tree_bytes": 67108864}, "schema_version": "1", "scope": "Explicit reader-selected runtime-source regular-file snapshot bytes, root portable identity/version, and reader declarations only.", "source_rules": [{"checked_utc": "2026-10-02", "id": "C01", "scope": "source, cache, restart, portable/overlay boundaries", "url": "https://developers.openai.com/plugins/build/plugins"}, {"checked_utc": "2026-10-02", "id": "C02", "scope": "optional version; root identity reading is not schema validation", "url": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json"}, {"checked_utc": "2026-10-02", "id": "C03", "scope": "public bundled update: complete versioned ZIP, checks, review, Publish", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C04", "scope": "MCP scan/held/live tool definition boundary", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C05", "scope": "live deployed implementation is not frozen by held metadata", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C06", "scope": "MCP addition to an existing skills-only listing currently unsupported", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C07", "scope": "existing MCP URL update unsupported; contact support", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C08", "scope": "path/new version versus origin/new plugin guidance conflicts with C07", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C09", "scope": "supported install/new-session procedure; no version inspection method established here", "url": "https://learn.chatgpt.com/docs/plugins"}, {"checked_utc": "2026-10-02", "id": "C10", "scope": "portable version optional; explicit semantic version for public submission/updates", "url": "https://developers.openai.com/plugins/deploy/submission"}], "states": {"live_backend_deployment": {"actual_test_status": "NOT RUN", "authorized_behavior_evidence": "UNKNOWN", "declarations": {"declared_deployment_id": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}}, "observed_contract": "UNKNOWN", "observed_deployment_id": "UNKNOWN", "observed_endpoint": "UNKNOWN"}, "loaded_host_session": {"actual_test_status": "NOT RUN", "declarations": {"declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN"}, "observed_fingerprint": "UNKNOWN", "observed_source": "UNKNOWN", "observed_version": "UNKNOWN", "session_evidence": "UNKNOWN"}, "reviewed_published_version": {"actual_test_status": "NOT RUN", "declarations": {"declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN"}, "observed_directory_fingerprint": "UNKNOWN", "observed_published_version": "UNKNOWN", "observed_review_status": "UNKNOWN", "publication_evidence": "UNKNOWN"}, "source_bundle": {"after": {"files": [{"bytes": 59, "group": "asset", "path": "assets/simulation-note.txt", "sha256": "4041d80bbb65d2bf0a64660064877a7989e7b82a47487fd633495fb1054c32f2"}, {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "f0a38a07d6ab78d86019841555ddd4299445951fa898875a1ede2c76266ff3c9", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/asset-added", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2937}, "basis": "OBSERVED_OFFLINE", "before": {"files": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "4ca3803a3d39acdb719745d4cadf56021c49ed5120daf21a4a5f63140d170a46", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2878}, "classification": {"bytes_changed": true, "label": "CHANGED_BYTES_SAME_VERSION", "manifest_identity_relation": "same", "manifest_version_relation": "same", "propagation": "UNKNOWN", "semantic_impact": "UNKNOWN", "semantic_version_choice": "NOT PERFORMED", "version_only_basis": "NOT ESTABLISHED"}, "diff": {"added": [{"after": {"bytes": 59, "group": "asset", "path": "assets/simulation-note.txt", "sha256": "4041d80bbb65d2bf0a64660064877a7989e7b82a47487fd633495fb1054c32f2"}, "before": null, "group": "asset", "path": "assets/simulation-note.txt"}], "changed": [], "removed": [], "unchanged": [{"after": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "before": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "group": "manifest", "path": "plugin.json"}, {"after": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "before": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "group": "skill", "path": "skills/meeting-evidence/SKILL.md"}]}, "loaded_or_published_fingerprint": "UNKNOWN"}}, "tool": "release-change-record-v1", "unknowns": ["selected snapshots' completeness as intended runtime", "semantic correctness and impact", "effective components/settings", "actual installed/loaded version and current-session refresh", "actual public version/review/approval", "actual deployed code/tools/auth/permissions", "adopter access, propagation, review timing and rollback capability"]}, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/asset-added", "--out", "/tmp/release-change-selftest-74u1959a/S05_asset_addition", "--context", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/public.json"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/asset-added --out /tmp/release-change-selftest-74u1959a/S05_asset_addition --context /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/public.json", "expected_error_code": null, "expected_exit": 0, "expected_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 59, "group": "asset", "path": "assets/simulation-note.txt", "sha256": "4041d80bbb65d2bf0a64660064877a7989e7b82a47487fd633495fb1054c32f2"}, {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "CHANGED_BYTES_SAME_VERSION", "context_facts": {"channel": "public_directory", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "diff": {"added": ["assets/simulation-note.txt"], "changed": [], "removed": [], "unchanged": ["plugin.json", "skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": [], "next_evidence_rule_ids": [["C01", "C09"], ["C03", "C10"]], "version_relation": "same"}, "id": "S05_asset_addition", "passed": true, "stderr": "", "stdout": "{\"classification\": \"CHANGED_BYTES_SAME_VERSION\", \"output\": \"/tmp/release-change-selftest-74u1959a/S05_asset_addition\", \"status\": \"RECORDED_OFFLINE_NOT_VALIDATED\"}\n"} ## S06_asset_removal $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/asset-added --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/S06_asset_removal --context /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/public.json expected exit=0 code=None actual exit=0 stdout: {"classification": "CHANGED_BYTES_SAME_VERSION", "output": "/tmp/release-change-selftest-74u1959a/S06_asset_removal", "status": "RECORDED_OFFLINE_NOT_VALIDATED"} stderr: exact checks=PASS {"actual_exit": 0, "actual_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 59, "group": "asset", "path": "assets/simulation-note.txt", "sha256": "4041d80bbb65d2bf0a64660064877a7989e7b82a47487fd633495fb1054c32f2"}, {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "CHANGED_BYTES_SAME_VERSION", "context_facts": {"channel": "public_directory", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "diff": {"added": [], "changed": [], "removed": ["assets/simulation-note.txt"], "unchanged": ["plugin.json", "skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": [], "next_evidence_rule_ids": [["C01", "C09"], ["C03", "C10"]], "version_relation": "same"}, "actual_record": {"context": {"basis": "READER_DECLARATION_NOT_OBSERVATION", "facts": {"channel": "public_directory", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/public.json", "sha256": "ad2091696b27383ac60464913fae91e29042cedd907285dec493e30374073820"}, "evidence_kind": "OFFLINE_ENGINEERING_ONLY", "exclusions": ["whole-repository/runtime selection inference", "archive extraction or creation", "complete plugin/schema validation", "effective overlay/extension metadata", "component/service detection", "semantic diff or automatic version choice", "secret/safety scanning", "host installation/update/invocation", "portal/review/approval/publication", "network/deployment/authorization"], "next_evidence": [{"basis": "OUR_MAINTENANCE_RECOMMENDATION", "rule_ids": ["C01", "C09"], "text": "Record actual loaded source/version and fresh-session behavior separately; source hashes never establish a host result."}, {"basis": "SOURCE_LINKED_RECOMMENDATION_CONDITIONED_ON_DECLARED_CHANNEL", "rule_ids": ["C03", "C10"], "text": "For intended bundled public updates, use the documented complete versioned ZIP/checks/review/Publish path. Choose the version yourself; this record is not an eligibility or submission-readiness verdict."}], "recorder_policy_limits": {"context_bytes": 65536, "depth": 32, "entries": 4096, "file_bytes": 8388608, "files": 1024, "manifest_parse_bytes": 1048576, "path_chars": 1024, "tree_bytes": 67108864}, "schema_version": "1", "scope": "Explicit reader-selected runtime-source regular-file snapshot bytes, root portable identity/version, and reader declarations only.", "source_rules": [{"checked_utc": "2026-10-02", "id": "C01", "scope": "source, cache, restart, portable/overlay boundaries", "url": "https://developers.openai.com/plugins/build/plugins"}, {"checked_utc": "2026-10-02", "id": "C02", "scope": "optional version; root identity reading is not schema validation", "url": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json"}, {"checked_utc": "2026-10-02", "id": "C03", "scope": "public bundled update: complete versioned ZIP, checks, review, Publish", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C04", "scope": "MCP scan/held/live tool definition boundary", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C05", "scope": "live deployed implementation is not frozen by held metadata", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C06", "scope": "MCP addition to an existing skills-only listing currently unsupported", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C07", "scope": "existing MCP URL update unsupported; contact support", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C08", "scope": "path/new version versus origin/new plugin guidance conflicts with C07", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C09", "scope": "supported install/new-session procedure; no version inspection method established here", "url": "https://learn.chatgpt.com/docs/plugins"}, {"checked_utc": "2026-10-02", "id": "C10", "scope": "portable version optional; explicit semantic version for public submission/updates", "url": "https://developers.openai.com/plugins/deploy/submission"}], "states": {"live_backend_deployment": {"actual_test_status": "NOT RUN", "authorized_behavior_evidence": "UNKNOWN", "declarations": {"declared_deployment_id": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}}, "observed_contract": "UNKNOWN", "observed_deployment_id": "UNKNOWN", "observed_endpoint": "UNKNOWN"}, "loaded_host_session": {"actual_test_status": "NOT RUN", "declarations": {"declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN"}, "observed_fingerprint": "UNKNOWN", "observed_source": "UNKNOWN", "observed_version": "UNKNOWN", "session_evidence": "UNKNOWN"}, "reviewed_published_version": {"actual_test_status": "NOT RUN", "declarations": {"declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN"}, "observed_directory_fingerprint": "UNKNOWN", "observed_published_version": "UNKNOWN", "observed_review_status": "UNKNOWN", "publication_evidence": "UNKNOWN"}, "source_bundle": {"after": {"files": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "4ca3803a3d39acdb719745d4cadf56021c49ed5120daf21a4a5f63140d170a46", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2878}, "basis": "OBSERVED_OFFLINE", "before": {"files": [{"bytes": 59, "group": "asset", "path": "assets/simulation-note.txt", "sha256": "4041d80bbb65d2bf0a64660064877a7989e7b82a47487fd633495fb1054c32f2"}, {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "f0a38a07d6ab78d86019841555ddd4299445951fa898875a1ede2c76266ff3c9", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/asset-added", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2937}, "classification": {"bytes_changed": true, "label": "CHANGED_BYTES_SAME_VERSION", "manifest_identity_relation": "same", "manifest_version_relation": "same", "propagation": "UNKNOWN", "semantic_impact": "UNKNOWN", "semantic_version_choice": "NOT PERFORMED", "version_only_basis": "NOT ESTABLISHED"}, "diff": {"added": [], "changed": [], "removed": [{"after": null, "before": {"bytes": 59, "group": "asset", "path": "assets/simulation-note.txt", "sha256": "4041d80bbb65d2bf0a64660064877a7989e7b82a47487fd633495fb1054c32f2"}, "group": "asset", "path": "assets/simulation-note.txt"}], "unchanged": [{"after": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "before": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "group": "manifest", "path": "plugin.json"}, {"after": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "before": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "group": "skill", "path": "skills/meeting-evidence/SKILL.md"}]}, "loaded_or_published_fingerprint": "UNKNOWN"}}, "tool": "release-change-record-v1", "unknowns": ["selected snapshots' completeness as intended runtime", "semantic correctness and impact", "effective components/settings", "actual installed/loaded version and current-session refresh", "actual public version/review/approval", "actual deployed code/tools/auth/permissions", "adopter access, propagation, review timing and rollback capability"]}, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/asset-added", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/S06_asset_removal", "--context", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/public.json"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/asset-added --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/S06_asset_removal --context /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/public.json", "expected_error_code": null, "expected_exit": 0, "expected_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 59, "group": "asset", "path": "assets/simulation-note.txt", "sha256": "4041d80bbb65d2bf0a64660064877a7989e7b82a47487fd633495fb1054c32f2"}, {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "CHANGED_BYTES_SAME_VERSION", "context_facts": {"channel": "public_directory", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "diff": {"added": [], "changed": [], "removed": ["assets/simulation-note.txt"], "unchanged": ["plugin.json", "skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": [], "next_evidence_rule_ids": [["C01", "C09"], ["C03", "C10"]], "version_relation": "same"}, "id": "S06_asset_removal", "passed": true, "stderr": "", "stdout": "{\"classification\": \"CHANGED_BYTES_SAME_VERSION\", \"output\": \"/tmp/release-change-selftest-74u1959a/S06_asset_removal\", \"status\": \"RECORDED_OFFLINE_NOT_VALIDATED\"}\n"} ## S07_declared_service_only $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/S07_declared_service_only --context /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/service-only.json expected exit=0 code=None actual exit=0 stdout: {"classification": "IDENTICAL_SNAPSHOT_BYTES", "output": "/tmp/release-change-selftest-74u1959a/S07_declared_service_only", "status": "RECORDED_OFFLINE_NOT_VALIDATED"} stderr: exact checks=PASS {"actual_exit": 0, "actual_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "IDENTICAL_SNAPSHOT_BYTES", "context_facts": {"channel": "public_directory", "declared_deployment_id": "SIMULATED-deploy-2", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "0.1.0", "declared_published_version": "0.1.0", "declared_review_status": "SIMULATED approved", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "https://example.invalid/mcp", "endpoint_before": "https://example.invalid/mcp", "endpoint_change": "none", "implementation_change": true, "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "diff": {"added": [], "changed": [], "removed": [], "unchanged": ["plugin.json", "skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": [], "next_evidence_rule_ids": [["C01", "C09"], ["C03", "C10"], ["C04", "C05"]], "version_relation": "same"}, "actual_record": {"context": {"basis": "READER_DECLARATION_NOT_OBSERVATION", "facts": {"channel": "public_directory", "declared_deployment_id": "SIMULATED-deploy-2", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "0.1.0", "declared_published_version": "0.1.0", "declared_review_status": "SIMULATED approved", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "https://example.invalid/mcp", "endpoint_before": "https://example.invalid/mcp", "endpoint_change": "none", "implementation_change": true, "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/service-only.json", "sha256": "100ca03ccf2cff640c57a255bd09c32bc88161607dbb47af552174377803f998"}, "evidence_kind": "OFFLINE_ENGINEERING_ONLY", "exclusions": ["whole-repository/runtime selection inference", "archive extraction or creation", "complete plugin/schema validation", "effective overlay/extension metadata", "component/service detection", "semantic diff or automatic version choice", "secret/safety scanning", "host installation/update/invocation", "portal/review/approval/publication", "network/deployment/authorization"], "next_evidence": [{"basis": "OUR_MAINTENANCE_RECOMMENDATION", "rule_ids": ["C01", "C09"], "text": "Record actual loaded source/version and fresh-session behavior separately; source hashes never establish a host result."}, {"basis": "SOURCE_LINKED_RECOMMENDATION_CONDITIONED_ON_DECLARED_CHANNEL", "rule_ids": ["C03", "C10"], "text": "For intended bundled public updates, use the documented complete versioned ZIP/checks/review/Publish path. Choose the version yourself; this record is not an eligibility or submission-readiness verdict."}, {"basis": "SOURCE_LINKED_RECOMMENDATION_CONDITIONED_ON_READER_DECLARATION", "rule_ids": ["C04", "C05"], "text": "Declared service/tool changes need independent deployment, live-contract, scan/availability and authorized behavior evidence. Hash equality says nothing about service behavior or review outcome."}], "recorder_policy_limits": {"context_bytes": 65536, "depth": 32, "entries": 4096, "file_bytes": 8388608, "files": 1024, "manifest_parse_bytes": 1048576, "path_chars": 1024, "tree_bytes": 67108864}, "schema_version": "1", "scope": "Explicit reader-selected runtime-source regular-file snapshot bytes, root portable identity/version, and reader declarations only.", "source_rules": [{"checked_utc": "2026-10-02", "id": "C01", "scope": "source, cache, restart, portable/overlay boundaries", "url": "https://developers.openai.com/plugins/build/plugins"}, {"checked_utc": "2026-10-02", "id": "C02", "scope": "optional version; root identity reading is not schema validation", "url": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json"}, {"checked_utc": "2026-10-02", "id": "C03", "scope": "public bundled update: complete versioned ZIP, checks, review, Publish", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C04", "scope": "MCP scan/held/live tool definition boundary", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C05", "scope": "live deployed implementation is not frozen by held metadata", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C06", "scope": "MCP addition to an existing skills-only listing currently unsupported", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C07", "scope": "existing MCP URL update unsupported; contact support", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C08", "scope": "path/new version versus origin/new plugin guidance conflicts with C07", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C09", "scope": "supported install/new-session procedure; no version inspection method established here", "url": "https://learn.chatgpt.com/docs/plugins"}, {"checked_utc": "2026-10-02", "id": "C10", "scope": "portable version optional; explicit semantic version for public submission/updates", "url": "https://developers.openai.com/plugins/deploy/submission"}], "states": {"live_backend_deployment": {"actual_test_status": "NOT RUN", "authorized_behavior_evidence": "UNKNOWN", "declarations": {"declared_deployment_id": "SIMULATED-deploy-2", "service": {"endpoint_after": "https://example.invalid/mcp", "endpoint_before": "https://example.invalid/mcp", "endpoint_change": "none", "implementation_change": true, "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}}, "observed_contract": "UNKNOWN", "observed_deployment_id": "UNKNOWN", "observed_endpoint": "UNKNOWN"}, "loaded_host_session": {"actual_test_status": "NOT RUN", "declarations": {"declared_loaded_source": "UNKNOWN", "declared_loaded_version": "0.1.0"}, "observed_fingerprint": "UNKNOWN", "observed_source": "UNKNOWN", "observed_version": "UNKNOWN", "session_evidence": "UNKNOWN"}, "reviewed_published_version": {"actual_test_status": "NOT RUN", "declarations": {"declared_published_version": "0.1.0", "declared_review_status": "SIMULATED approved"}, "observed_directory_fingerprint": "UNKNOWN", "observed_published_version": "UNKNOWN", "observed_review_status": "UNKNOWN", "publication_evidence": "UNKNOWN"}, "source_bundle": {"after": {"files": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "4ca3803a3d39acdb719745d4cadf56021c49ed5120daf21a4a5f63140d170a46", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2878}, "basis": "OBSERVED_OFFLINE", "before": {"files": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "4ca3803a3d39acdb719745d4cadf56021c49ed5120daf21a4a5f63140d170a46", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2878}, "classification": {"bytes_changed": false, "label": "IDENTICAL_SNAPSHOT_BYTES", "manifest_identity_relation": "same", "manifest_version_relation": "same", "propagation": "UNKNOWN", "semantic_impact": "UNKNOWN", "semantic_version_choice": "NOT PERFORMED", "version_only_basis": "NOT ESTABLISHED"}, "diff": {"added": [], "changed": [], "removed": [], "unchanged": [{"after": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "before": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "group": "manifest", "path": "plugin.json"}, {"after": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "before": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "group": "skill", "path": "skills/meeting-evidence/SKILL.md"}]}, "loaded_or_published_fingerprint": "UNKNOWN"}}, "tool": "release-change-record-v1", "unknowns": ["selected snapshots' completeness as intended runtime", "semantic correctness and impact", "effective components/settings", "actual installed/loaded version and current-session refresh", "actual public version/review/approval", "actual deployed code/tools/auth/permissions", "adopter access, propagation, review timing and rollback capability"]}, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/S07_declared_service_only", "--context", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/service-only.json"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/S07_declared_service_only --context /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/service-only.json", "expected_error_code": null, "expected_exit": 0, "expected_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "IDENTICAL_SNAPSHOT_BYTES", "context_facts": {"channel": "public_directory", "declared_deployment_id": "SIMULATED-deploy-2", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "0.1.0", "declared_published_version": "0.1.0", "declared_review_status": "SIMULATED approved", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "https://example.invalid/mcp", "endpoint_before": "https://example.invalid/mcp", "endpoint_change": "none", "implementation_change": true, "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "diff": {"added": [], "changed": [], "removed": [], "unchanged": ["plugin.json", "skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": [], "next_evidence_rule_ids": [["C01", "C09"], ["C03", "C10"], ["C04", "C05"]], "version_relation": "same"}, "id": "S07_declared_service_only", "passed": true, "stderr": "", "stdout": "{\"classification\": \"IDENTICAL_SNAPSHOT_BYTES\", \"output\": \"/tmp/release-change-selftest-74u1959a/S07_declared_service_only\", \"status\": \"RECORDED_OFFLINE_NOT_VALIDATED\"}\n"} ## S08_declared_endpoint_path $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/S08_declared_endpoint_path --context /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/endpoint-path.json expected exit=0 code=None actual exit=0 stdout: {"classification": "IDENTICAL_SNAPSHOT_BYTES", "output": "/tmp/release-change-selftest-74u1959a/S08_declared_endpoint_path", "status": "RECORDED_OFFLINE_NOT_VALIDATED"} stderr: exact checks=PASS {"actual_exit": 0, "actual_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "IDENTICAL_SNAPSHOT_BYTES", "context_facts": {"channel": "public_directory", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "https://example.invalid/v2/mcp", "endpoint_before": "https://example.invalid/mcp", "endpoint_change": "path", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "diff": {"added": [], "changed": [], "removed": [], "unchanged": ["plugin.json", "skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": [], "next_evidence_rule_ids": [["C01", "C09"], ["C03", "C10"], ["C07", "C08"]], "version_relation": "same"}, "actual_record": {"context": {"basis": "READER_DECLARATION_NOT_OBSERVATION", "facts": {"channel": "public_directory", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "https://example.invalid/v2/mcp", "endpoint_before": "https://example.invalid/mcp", "endpoint_change": "path", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/endpoint-path.json", "sha256": "8bd65ba848ae0fbb8e240effffd95db627ef6b4a6aef2fdfb99b50a150d1ba77"}, "evidence_kind": "OFFLINE_ENGINEERING_ONLY", "exclusions": ["whole-repository/runtime selection inference", "archive extraction or creation", "complete plugin/schema validation", "effective overlay/extension metadata", "component/service detection", "semantic diff or automatic version choice", "secret/safety scanning", "host installation/update/invocation", "portal/review/approval/publication", "network/deployment/authorization"], "next_evidence": [{"basis": "OUR_MAINTENANCE_RECOMMENDATION", "rule_ids": ["C01", "C09"], "text": "Record actual loaded source/version and fresh-session behavior separately; source hashes never establish a host result."}, {"basis": "SOURCE_LINKED_RECOMMENDATION_CONDITIONED_ON_DECLARED_CHANNEL", "rule_ids": ["C03", "C10"], "text": "For intended bundled public updates, use the documented complete versioned ZIP/checks/review/Publish path. Choose the version yourself; this record is not an eligibility or submission-readiness verdict."}, {"basis": "CONFLICTING_DOCUMENTATION_NEXT_EVIDENCE", "rule_ids": ["C07", "C08"], "text": "Endpoint move is reader-declared only. Conflicting update guidance remains unresolved; preserve the production endpoint and obtain portal/support clarification before moving it."}], "recorder_policy_limits": {"context_bytes": 65536, "depth": 32, "entries": 4096, "file_bytes": 8388608, "files": 1024, "manifest_parse_bytes": 1048576, "path_chars": 1024, "tree_bytes": 67108864}, "schema_version": "1", "scope": "Explicit reader-selected runtime-source regular-file snapshot bytes, root portable identity/version, and reader declarations only.", "source_rules": [{"checked_utc": "2026-10-02", "id": "C01", "scope": "source, cache, restart, portable/overlay boundaries", "url": "https://developers.openai.com/plugins/build/plugins"}, {"checked_utc": "2026-10-02", "id": "C02", "scope": "optional version; root identity reading is not schema validation", "url": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json"}, {"checked_utc": "2026-10-02", "id": "C03", "scope": "public bundled update: complete versioned ZIP, checks, review, Publish", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C04", "scope": "MCP scan/held/live tool definition boundary", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C05", "scope": "live deployed implementation is not frozen by held metadata", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C06", "scope": "MCP addition to an existing skills-only listing currently unsupported", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C07", "scope": "existing MCP URL update unsupported; contact support", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C08", "scope": "path/new version versus origin/new plugin guidance conflicts with C07", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C09", "scope": "supported install/new-session procedure; no version inspection method established here", "url": "https://learn.chatgpt.com/docs/plugins"}, {"checked_utc": "2026-10-02", "id": "C10", "scope": "portable version optional; explicit semantic version for public submission/updates", "url": "https://developers.openai.com/plugins/deploy/submission"}], "states": {"live_backend_deployment": {"actual_test_status": "NOT RUN", "authorized_behavior_evidence": "UNKNOWN", "declarations": {"declared_deployment_id": "UNKNOWN", "service": {"endpoint_after": "https://example.invalid/v2/mcp", "endpoint_before": "https://example.invalid/mcp", "endpoint_change": "path", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}}, "observed_contract": "UNKNOWN", "observed_deployment_id": "UNKNOWN", "observed_endpoint": "UNKNOWN"}, "loaded_host_session": {"actual_test_status": "NOT RUN", "declarations": {"declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN"}, "observed_fingerprint": "UNKNOWN", "observed_source": "UNKNOWN", "observed_version": "UNKNOWN", "session_evidence": "UNKNOWN"}, "reviewed_published_version": {"actual_test_status": "NOT RUN", "declarations": {"declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN"}, "observed_directory_fingerprint": "UNKNOWN", "observed_published_version": "UNKNOWN", "observed_review_status": "UNKNOWN", "publication_evidence": "UNKNOWN"}, "source_bundle": {"after": {"files": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "4ca3803a3d39acdb719745d4cadf56021c49ed5120daf21a4a5f63140d170a46", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2878}, "basis": "OBSERVED_OFFLINE", "before": {"files": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "4ca3803a3d39acdb719745d4cadf56021c49ed5120daf21a4a5f63140d170a46", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2878}, "classification": {"bytes_changed": false, "label": "IDENTICAL_SNAPSHOT_BYTES", "manifest_identity_relation": "same", "manifest_version_relation": "same", "propagation": "UNKNOWN", "semantic_impact": "UNKNOWN", "semantic_version_choice": "NOT PERFORMED", "version_only_basis": "NOT ESTABLISHED"}, "diff": {"added": [], "changed": [], "removed": [], "unchanged": [{"after": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "before": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "group": "manifest", "path": "plugin.json"}, {"after": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "before": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "group": "skill", "path": "skills/meeting-evidence/SKILL.md"}]}, "loaded_or_published_fingerprint": "UNKNOWN"}}, "tool": "release-change-record-v1", "unknowns": ["selected snapshots' completeness as intended runtime", "semantic correctness and impact", "effective components/settings", "actual installed/loaded version and current-session refresh", "actual public version/review/approval", "actual deployed code/tools/auth/permissions", "adopter access, propagation, review timing and rollback capability"]}, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/S08_declared_endpoint_path", "--context", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/endpoint-path.json"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/S08_declared_endpoint_path --context /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/endpoint-path.json", "expected_error_code": null, "expected_exit": 0, "expected_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "IDENTICAL_SNAPSHOT_BYTES", "context_facts": {"channel": "public_directory", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "https://example.invalid/v2/mcp", "endpoint_before": "https://example.invalid/mcp", "endpoint_change": "path", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "diff": {"added": [], "changed": [], "removed": [], "unchanged": ["plugin.json", "skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": [], "next_evidence_rule_ids": [["C01", "C09"], ["C03", "C10"], ["C07", "C08"]], "version_relation": "same"}, "id": "S08_declared_endpoint_path", "passed": true, "stderr": "", "stdout": "{\"classification\": \"IDENTICAL_SNAPSHOT_BYTES\", \"output\": \"/tmp/release-change-selftest-74u1959a/S08_declared_endpoint_path\", \"status\": \"RECORDED_OFFLINE_NOT_VALIDATED\"}\n"} ## S09_declared_endpoint_origin $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/S09_declared_endpoint_origin --context /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/endpoint-origin.json expected exit=0 code=None actual exit=0 stdout: {"classification": "IDENTICAL_SNAPSHOT_BYTES", "output": "/tmp/release-change-selftest-74u1959a/S09_declared_endpoint_origin", "status": "RECORDED_OFFLINE_NOT_VALIDATED"} stderr: exact checks=PASS {"actual_exit": 0, "actual_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "IDENTICAL_SNAPSHOT_BYTES", "context_facts": {"channel": "public_directory", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "https://other.example.invalid/mcp", "endpoint_before": "https://example.invalid/mcp", "endpoint_change": "origin", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "diff": {"added": [], "changed": [], "removed": [], "unchanged": ["plugin.json", "skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": [], "next_evidence_rule_ids": [["C01", "C09"], ["C03", "C10"], ["C07", "C08"]], "version_relation": "same"}, "actual_record": {"context": {"basis": "READER_DECLARATION_NOT_OBSERVATION", "facts": {"channel": "public_directory", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "https://other.example.invalid/mcp", "endpoint_before": "https://example.invalid/mcp", "endpoint_change": "origin", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/endpoint-origin.json", "sha256": "cd9e11b1d34fa0026418ac4fa974226d7f48500628283769e0d5ba471ccf0077"}, "evidence_kind": "OFFLINE_ENGINEERING_ONLY", "exclusions": ["whole-repository/runtime selection inference", "archive extraction or creation", "complete plugin/schema validation", "effective overlay/extension metadata", "component/service detection", "semantic diff or automatic version choice", "secret/safety scanning", "host installation/update/invocation", "portal/review/approval/publication", "network/deployment/authorization"], "next_evidence": [{"basis": "OUR_MAINTENANCE_RECOMMENDATION", "rule_ids": ["C01", "C09"], "text": "Record actual loaded source/version and fresh-session behavior separately; source hashes never establish a host result."}, {"basis": "SOURCE_LINKED_RECOMMENDATION_CONDITIONED_ON_DECLARED_CHANNEL", "rule_ids": ["C03", "C10"], "text": "For intended bundled public updates, use the documented complete versioned ZIP/checks/review/Publish path. Choose the version yourself; this record is not an eligibility or submission-readiness verdict."}, {"basis": "CONFLICTING_DOCUMENTATION_NEXT_EVIDENCE", "rule_ids": ["C07", "C08"], "text": "Endpoint move is reader-declared only. Conflicting update guidance remains unresolved; preserve the production endpoint and obtain portal/support clarification before moving it."}], "recorder_policy_limits": {"context_bytes": 65536, "depth": 32, "entries": 4096, "file_bytes": 8388608, "files": 1024, "manifest_parse_bytes": 1048576, "path_chars": 1024, "tree_bytes": 67108864}, "schema_version": "1", "scope": "Explicit reader-selected runtime-source regular-file snapshot bytes, root portable identity/version, and reader declarations only.", "source_rules": [{"checked_utc": "2026-10-02", "id": "C01", "scope": "source, cache, restart, portable/overlay boundaries", "url": "https://developers.openai.com/plugins/build/plugins"}, {"checked_utc": "2026-10-02", "id": "C02", "scope": "optional version; root identity reading is not schema validation", "url": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json"}, {"checked_utc": "2026-10-02", "id": "C03", "scope": "public bundled update: complete versioned ZIP, checks, review, Publish", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C04", "scope": "MCP scan/held/live tool definition boundary", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C05", "scope": "live deployed implementation is not frozen by held metadata", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C06", "scope": "MCP addition to an existing skills-only listing currently unsupported", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C07", "scope": "existing MCP URL update unsupported; contact support", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C08", "scope": "path/new version versus origin/new plugin guidance conflicts with C07", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C09", "scope": "supported install/new-session procedure; no version inspection method established here", "url": "https://learn.chatgpt.com/docs/plugins"}, {"checked_utc": "2026-10-02", "id": "C10", "scope": "portable version optional; explicit semantic version for public submission/updates", "url": "https://developers.openai.com/plugins/deploy/submission"}], "states": {"live_backend_deployment": {"actual_test_status": "NOT RUN", "authorized_behavior_evidence": "UNKNOWN", "declarations": {"declared_deployment_id": "UNKNOWN", "service": {"endpoint_after": "https://other.example.invalid/mcp", "endpoint_before": "https://example.invalid/mcp", "endpoint_change": "origin", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}}, "observed_contract": "UNKNOWN", "observed_deployment_id": "UNKNOWN", "observed_endpoint": "UNKNOWN"}, "loaded_host_session": {"actual_test_status": "NOT RUN", "declarations": {"declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN"}, "observed_fingerprint": "UNKNOWN", "observed_source": "UNKNOWN", "observed_version": "UNKNOWN", "session_evidence": "UNKNOWN"}, "reviewed_published_version": {"actual_test_status": "NOT RUN", "declarations": {"declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN"}, "observed_directory_fingerprint": "UNKNOWN", "observed_published_version": "UNKNOWN", "observed_review_status": "UNKNOWN", "publication_evidence": "UNKNOWN"}, "source_bundle": {"after": {"files": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "4ca3803a3d39acdb719745d4cadf56021c49ed5120daf21a4a5f63140d170a46", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2878}, "basis": "OBSERVED_OFFLINE", "before": {"files": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "4ca3803a3d39acdb719745d4cadf56021c49ed5120daf21a4a5f63140d170a46", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2878}, "classification": {"bytes_changed": false, "label": "IDENTICAL_SNAPSHOT_BYTES", "manifest_identity_relation": "same", "manifest_version_relation": "same", "propagation": "UNKNOWN", "semantic_impact": "UNKNOWN", "semantic_version_choice": "NOT PERFORMED", "version_only_basis": "NOT ESTABLISHED"}, "diff": {"added": [], "changed": [], "removed": [], "unchanged": [{"after": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "before": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "group": "manifest", "path": "plugin.json"}, {"after": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "before": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "group": "skill", "path": "skills/meeting-evidence/SKILL.md"}]}, "loaded_or_published_fingerprint": "UNKNOWN"}}, "tool": "release-change-record-v1", "unknowns": ["selected snapshots' completeness as intended runtime", "semantic correctness and impact", "effective components/settings", "actual installed/loaded version and current-session refresh", "actual public version/review/approval", "actual deployed code/tools/auth/permissions", "adopter access, propagation, review timing and rollback capability"]}, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/S09_declared_endpoint_origin", "--context", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/endpoint-origin.json"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/S09_declared_endpoint_origin --context /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/endpoint-origin.json", "expected_error_code": null, "expected_exit": 0, "expected_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "IDENTICAL_SNAPSHOT_BYTES", "context_facts": {"channel": "public_directory", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "https://other.example.invalid/mcp", "endpoint_before": "https://example.invalid/mcp", "endpoint_change": "origin", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "diff": {"added": [], "changed": [], "removed": [], "unchanged": ["plugin.json", "skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": [], "next_evidence_rule_ids": [["C01", "C09"], ["C03", "C10"], ["C07", "C08"]], "version_relation": "same"}, "id": "S09_declared_endpoint_origin", "passed": true, "stderr": "", "stdout": "{\"classification\": \"IDENTICAL_SNAPSHOT_BYTES\", \"output\": \"/tmp/release-change-selftest-74u1959a/S09_declared_endpoint_origin\", \"status\": \"RECORDED_OFFLINE_NOT_VALIDATED\"}\n"} ## S10_declared_mcp_addition $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/S10_declared_mcp_addition --context /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/mcp-addition.json expected exit=0 code=None actual exit=0 stdout: {"classification": "IDENTICAL_SNAPSHOT_BYTES", "output": "/tmp/release-change-selftest-74u1959a/S10_declared_mcp_addition", "status": "RECORDED_OFFLINE_NOT_VALIDATED"} stderr: exact checks=PASS {"actual_exit": 0, "actual_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "IDENTICAL_SNAPSHOT_BYTES", "context_facts": {"channel": "public_directory", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "skills_only", "proposed_mcp_addition": true, "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "diff": {"added": [], "changed": [], "removed": [], "unchanged": ["plugin.json", "skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": [], "next_evidence_rule_ids": [["C01", "C09"], ["C03", "C10"], ["C06"]], "version_relation": "same"}, "actual_record": {"context": {"basis": "READER_DECLARATION_NOT_OBSERVATION", "facts": {"channel": "public_directory", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "skills_only", "proposed_mcp_addition": true, "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/mcp-addition.json", "sha256": "0639aa7e4949c8c8bbc3665afa151c8b21068221d44b731ddfed7cb3ede9d05c"}, "evidence_kind": "OFFLINE_ENGINEERING_ONLY", "exclusions": ["whole-repository/runtime selection inference", "archive extraction or creation", "complete plugin/schema validation", "effective overlay/extension metadata", "component/service detection", "semantic diff or automatic version choice", "secret/safety scanning", "host installation/update/invocation", "portal/review/approval/publication", "network/deployment/authorization"], "next_evidence": [{"basis": "OUR_MAINTENANCE_RECOMMENDATION", "rule_ids": ["C01", "C09"], "text": "Record actual loaded source/version and fresh-session behavior separately; source hashes never establish a host result."}, {"basis": "SOURCE_LINKED_RECOMMENDATION_CONDITIONED_ON_DECLARED_CHANNEL", "rule_ids": ["C03", "C10"], "text": "For intended bundled public updates, use the documented complete versioned ZIP/checks/review/Publish path. Choose the version yourself; this record is not an eligibility or submission-readiness verdict."}, {"basis": "SOURCE_LINKED_RECOMMENDATION_CONDITIONED_ON_READER_DECLARATION", "rule_ids": ["C06"], "text": "Declared MCP addition to an existing skills-only listing: the documented flow is currently unsupported. Confirm a supported release/identity path; this is not detected from files or a portal test."}], "recorder_policy_limits": {"context_bytes": 65536, "depth": 32, "entries": 4096, "file_bytes": 8388608, "files": 1024, "manifest_parse_bytes": 1048576, "path_chars": 1024, "tree_bytes": 67108864}, "schema_version": "1", "scope": "Explicit reader-selected runtime-source regular-file snapshot bytes, root portable identity/version, and reader declarations only.", "source_rules": [{"checked_utc": "2026-10-02", "id": "C01", "scope": "source, cache, restart, portable/overlay boundaries", "url": "https://developers.openai.com/plugins/build/plugins"}, {"checked_utc": "2026-10-02", "id": "C02", "scope": "optional version; root identity reading is not schema validation", "url": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json"}, {"checked_utc": "2026-10-02", "id": "C03", "scope": "public bundled update: complete versioned ZIP, checks, review, Publish", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C04", "scope": "MCP scan/held/live tool definition boundary", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C05", "scope": "live deployed implementation is not frozen by held metadata", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C06", "scope": "MCP addition to an existing skills-only listing currently unsupported", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C07", "scope": "existing MCP URL update unsupported; contact support", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C08", "scope": "path/new version versus origin/new plugin guidance conflicts with C07", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C09", "scope": "supported install/new-session procedure; no version inspection method established here", "url": "https://learn.chatgpt.com/docs/plugins"}, {"checked_utc": "2026-10-02", "id": "C10", "scope": "portable version optional; explicit semantic version for public submission/updates", "url": "https://developers.openai.com/plugins/deploy/submission"}], "states": {"live_backend_deployment": {"actual_test_status": "NOT RUN", "authorized_behavior_evidence": "UNKNOWN", "declarations": {"declared_deployment_id": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}}, "observed_contract": "UNKNOWN", "observed_deployment_id": "UNKNOWN", "observed_endpoint": "UNKNOWN"}, "loaded_host_session": {"actual_test_status": "NOT RUN", "declarations": {"declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN"}, "observed_fingerprint": "UNKNOWN", "observed_source": "UNKNOWN", "observed_version": "UNKNOWN", "session_evidence": "UNKNOWN"}, "reviewed_published_version": {"actual_test_status": "NOT RUN", "declarations": {"declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN"}, "observed_directory_fingerprint": "UNKNOWN", "observed_published_version": "UNKNOWN", "observed_review_status": "UNKNOWN", "publication_evidence": "UNKNOWN"}, "source_bundle": {"after": {"files": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "4ca3803a3d39acdb719745d4cadf56021c49ed5120daf21a4a5f63140d170a46", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2878}, "basis": "OBSERVED_OFFLINE", "before": {"files": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "4ca3803a3d39acdb719745d4cadf56021c49ed5120daf21a4a5f63140d170a46", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2878}, "classification": {"bytes_changed": false, "label": "IDENTICAL_SNAPSHOT_BYTES", "manifest_identity_relation": "same", "manifest_version_relation": "same", "propagation": "UNKNOWN", "semantic_impact": "UNKNOWN", "semantic_version_choice": "NOT PERFORMED", "version_only_basis": "NOT ESTABLISHED"}, "diff": {"added": [], "changed": [], "removed": [], "unchanged": [{"after": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "before": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "group": "manifest", "path": "plugin.json"}, {"after": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "before": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "group": "skill", "path": "skills/meeting-evidence/SKILL.md"}]}, "loaded_or_published_fingerprint": "UNKNOWN"}}, "tool": "release-change-record-v1", "unknowns": ["selected snapshots' completeness as intended runtime", "semantic correctness and impact", "effective components/settings", "actual installed/loaded version and current-session refresh", "actual public version/review/approval", "actual deployed code/tools/auth/permissions", "adopter access, propagation, review timing and rollback capability"]}, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/S10_declared_mcp_addition", "--context", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/mcp-addition.json"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/S10_declared_mcp_addition --context /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/mcp-addition.json", "expected_error_code": null, "expected_exit": 0, "expected_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "IDENTICAL_SNAPSHOT_BYTES", "context_facts": {"channel": "public_directory", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "skills_only", "proposed_mcp_addition": true, "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "diff": {"added": [], "changed": [], "removed": [], "unchanged": ["plugin.json", "skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": [], "next_evidence_rule_ids": [["C01", "C09"], ["C03", "C10"], ["C06"]], "version_relation": "same"}, "id": "S10_declared_mcp_addition", "passed": true, "stderr": "", "stdout": "{\"classification\": \"IDENTICAL_SNAPSHOT_BYTES\", \"output\": \"/tmp/release-change-selftest-74u1959a/S10_declared_mcp_addition\", \"status\": \"RECORDED_OFFLINE_NOT_VALIDATED\"}\n"} ## S11_no_context_compatibility_only $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/compatibility-only --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/compatibility-only --out /tmp/release-change-selftest-74u1959a/S11_no_context_compatibility_only expected exit=0 code=None actual exit=0 stdout: {"classification": "IDENTICAL_SNAPSHOT_BYTES", "output": "/tmp/release-change-selftest-74u1959a/S11_no_context_compatibility_only", "status": "RECORDED_OFFLINE_NOT_VALIDATED"} stderr: exact checks=PASS {"actual_exit": 0, "actual_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 45, "group": "other_runtime_file", "path": ".codex-plugin/plugin.json", "sha256": "cf4ce3ebbc66bca28610d414f4b6ed84af1f85d72e40f08b647b9ca4958a6674"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 45, "group": "other_runtime_file", "path": ".codex-plugin/plugin.json", "sha256": "cf4ce3ebbc66bca28610d414f4b6ed84af1f85d72e40f08b647b9ca4958a6674"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "IDENTICAL_SNAPSHOT_BYTES", "context_facts": {"channel": "UNKNOWN", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": "UNKNOWN"}, "diff": {"added": [], "changed": [], "removed": [], "unchanged": [".codex-plugin/plugin.json", "skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": ["MISSING_ROOT_MANIFEST"], "next_evidence_rule_ids": [["C01", "C09"], []], "version_relation": "UNKNOWN"}, "actual_record": {"context": {"basis": "ABSENT_CONTEXT_UNKNOWN", "facts": {"channel": "UNKNOWN", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": "UNKNOWN"}, "input_path": "UNKNOWN", "sha256": "UNKNOWN"}, "evidence_kind": "OFFLINE_ENGINEERING_ONLY", "exclusions": ["whole-repository/runtime selection inference", "archive extraction or creation", "complete plugin/schema validation", "effective overlay/extension metadata", "component/service detection", "semantic diff or automatic version choice", "secret/safety scanning", "host installation/update/invocation", "portal/review/approval/publication", "network/deployment/authorization"], "next_evidence": [{"basis": "OUR_MAINTENANCE_RECOMMENDATION", "rule_ids": ["C01", "C09"], "text": "Record actual loaded source/version and fresh-session behavior separately; source hashes never establish a host result."}, {"basis": "OUR_MAINTENANCE_RECOMMENDATION", "rule_ids": [], "text": "Channel UNKNOWN: select and document the intended distribution channel before choosing its next steps."}], "recorder_policy_limits": {"context_bytes": 65536, "depth": 32, "entries": 4096, "file_bytes": 8388608, "files": 1024, "manifest_parse_bytes": 1048576, "path_chars": 1024, "tree_bytes": 67108864}, "schema_version": "1", "scope": "Explicit reader-selected runtime-source regular-file snapshot bytes, root portable identity/version, and reader declarations only.", "source_rules": [{"checked_utc": "2026-10-02", "id": "C01", "scope": "source, cache, restart, portable/overlay boundaries", "url": "https://developers.openai.com/plugins/build/plugins"}, {"checked_utc": "2026-10-02", "id": "C02", "scope": "optional version; root identity reading is not schema validation", "url": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json"}, {"checked_utc": "2026-10-02", "id": "C03", "scope": "public bundled update: complete versioned ZIP, checks, review, Publish", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C04", "scope": "MCP scan/held/live tool definition boundary", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C05", "scope": "live deployed implementation is not frozen by held metadata", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C06", "scope": "MCP addition to an existing skills-only listing currently unsupported", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C07", "scope": "existing MCP URL update unsupported; contact support", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C08", "scope": "path/new version versus origin/new plugin guidance conflicts with C07", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C09", "scope": "supported install/new-session procedure; no version inspection method established here", "url": "https://learn.chatgpt.com/docs/plugins"}, {"checked_utc": "2026-10-02", "id": "C10", "scope": "portable version optional; explicit semantic version for public submission/updates", "url": "https://developers.openai.com/plugins/deploy/submission"}], "states": {"live_backend_deployment": {"actual_test_status": "NOT RUN", "authorized_behavior_evidence": "UNKNOWN", "declarations": {"declared_deployment_id": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}}, "observed_contract": "UNKNOWN", "observed_deployment_id": "UNKNOWN", "observed_endpoint": "UNKNOWN"}, "loaded_host_session": {"actual_test_status": "NOT RUN", "declarations": {"declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN"}, "observed_fingerprint": "UNKNOWN", "observed_source": "UNKNOWN", "observed_version": "UNKNOWN", "session_evidence": "UNKNOWN"}, "reviewed_published_version": {"actual_test_status": "NOT RUN", "declarations": {"declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN"}, "observed_directory_fingerprint": "UNKNOWN", "observed_published_version": "UNKNOWN", "observed_review_status": "UNKNOWN", "publication_evidence": "UNKNOWN"}, "source_bundle": {"after": {"files": [{"bytes": 45, "group": "other_runtime_file", "path": ".codex-plugin/plugin.json", "sha256": "cf4ce3ebbc66bca28610d414f4b6ed84af1f85d72e40f08b647b9ca4958a6674"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "8010a27285ee92f4efeea6288fb03afe6e168bdabfd6ef81f283d1116139f5bc", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/compatibility-only", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": ["MISSING_ROOT_MANIFEST"], "name": "UNKNOWN", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "unsupported-for-manifest-interpretation", "version": "UNKNOWN"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2648}, "basis": "OBSERVED_OFFLINE", "before": {"files": [{"bytes": 45, "group": "other_runtime_file", "path": ".codex-plugin/plugin.json", "sha256": "cf4ce3ebbc66bca28610d414f4b6ed84af1f85d72e40f08b647b9ca4958a6674"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "8010a27285ee92f4efeea6288fb03afe6e168bdabfd6ef81f283d1116139f5bc", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/compatibility-only", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": ["MISSING_ROOT_MANIFEST"], "name": "UNKNOWN", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "unsupported-for-manifest-interpretation", "version": "UNKNOWN"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2648}, "classification": {"bytes_changed": false, "label": "IDENTICAL_SNAPSHOT_BYTES", "manifest_identity_relation": "UNKNOWN", "manifest_version_relation": "UNKNOWN", "propagation": "UNKNOWN", "semantic_impact": "UNKNOWN", "semantic_version_choice": "NOT PERFORMED", "version_only_basis": "NOT ESTABLISHED"}, "diff": {"added": [], "changed": [], "removed": [], "unchanged": [{"after": {"bytes": 45, "group": "other_runtime_file", "path": ".codex-plugin/plugin.json", "sha256": "cf4ce3ebbc66bca28610d414f4b6ed84af1f85d72e40f08b647b9ca4958a6674"}, "before": {"bytes": 45, "group": "other_runtime_file", "path": ".codex-plugin/plugin.json", "sha256": "cf4ce3ebbc66bca28610d414f4b6ed84af1f85d72e40f08b647b9ca4958a6674"}, "group": "other_runtime_file", "path": ".codex-plugin/plugin.json"}, {"after": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "before": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "group": "skill", "path": "skills/meeting-evidence/SKILL.md"}]}, "loaded_or_published_fingerprint": "UNKNOWN"}}, "tool": "release-change-record-v1", "unknowns": ["selected snapshots' completeness as intended runtime", "semantic correctness and impact", "effective components/settings", "actual installed/loaded version and current-session refresh", "actual public version/review/approval", "actual deployed code/tools/auth/permissions", "adopter access, propagation, review timing and rollback capability"]}, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/compatibility-only", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/compatibility-only", "--out", "/tmp/release-change-selftest-74u1959a/S11_no_context_compatibility_only"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/compatibility-only --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/compatibility-only --out /tmp/release-change-selftest-74u1959a/S11_no_context_compatibility_only", "expected_error_code": null, "expected_exit": 0, "expected_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 45, "group": "other_runtime_file", "path": ".codex-plugin/plugin.json", "sha256": "cf4ce3ebbc66bca28610d414f4b6ed84af1f85d72e40f08b647b9ca4958a6674"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 45, "group": "other_runtime_file", "path": ".codex-plugin/plugin.json", "sha256": "cf4ce3ebbc66bca28610d414f4b6ed84af1f85d72e40f08b647b9ca4958a6674"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "IDENTICAL_SNAPSHOT_BYTES", "context_facts": {"channel": "UNKNOWN", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": "UNKNOWN"}, "diff": {"added": [], "changed": [], "removed": [], "unchanged": [".codex-plugin/plugin.json", "skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": ["MISSING_ROOT_MANIFEST"], "next_evidence_rule_ids": [["C01", "C09"], []], "version_relation": "UNKNOWN"}, "id": "S11_no_context_compatibility_only", "passed": true, "stderr": "", "stdout": "{\"classification\": \"IDENTICAL_SNAPSHOT_BYTES\", \"output\": \"/tmp/release-change-selftest-74u1959a/S11_no_context_compatibility_only\", \"status\": \"RECORDED_OFFLINE_NOT_VALIDATED\"}\n"} ## S12_metadata_wording $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/metadata-edit --out /tmp/release-change-selftest-74u1959a/S12_metadata_wording --context /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/local.json expected exit=0 code=None actual exit=0 stdout: {"classification": "CHANGED_BYTES_SAME_VERSION", "output": "/tmp/release-change-selftest-74u1959a/S12_metadata_wording", "status": "RECORDED_OFFLINE_NOT_VALIDATED"} stderr: exact checks=PASS {"actual_exit": 0, "actual_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 199, "group": "manifest", "path": "plugin.json", "sha256": "7425b145699a49f485a74849164799741314e74ad02f99b49cd2ff3b8cc4460e"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "CHANGED_BYTES_SAME_VERSION", "context_facts": {"channel": "local_repository", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "diff": {"added": [], "changed": ["plugin.json"], "removed": [], "unchanged": ["skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": [], "next_evidence_rule_ids": [["C01", "C09"], ["C01", "C09"]], "version_relation": "same"}, "actual_record": {"context": {"basis": "READER_DECLARATION_NOT_OBSERVATION", "facts": {"channel": "local_repository", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/local.json", "sha256": "5d5adbb7b794def41a4148eb63410a2eec97b802647a6ab304014668512a153c"}, "evidence_kind": "OFFLINE_ENGINEERING_ONLY", "exclusions": ["whole-repository/runtime selection inference", "archive extraction or creation", "complete plugin/schema validation", "effective overlay/extension metadata", "component/service detection", "semantic diff or automatic version choice", "secret/safety scanning", "host installation/update/invocation", "portal/review/approval/publication", "network/deployment/authorization"], "next_evidence": [{"basis": "OUR_MAINTENANCE_RECOMMENDATION", "rule_ids": ["C01", "C09"], "text": "Record actual loaded source/version and fresh-session behavior separately; source hashes never establish a host result."}, {"basis": "SOURCE_LINKED_RECOMMENDATION_CONDITIONED_ON_DECLARED_CHANNEL", "rule_ids": ["C01", "C09"], "text": "Update the explicitly chosen catalog source, follow documented refresh/restart/new-session steps for the actual client, then observe the loaded copy. No such action was run here."}], "recorder_policy_limits": {"context_bytes": 65536, "depth": 32, "entries": 4096, "file_bytes": 8388608, "files": 1024, "manifest_parse_bytes": 1048576, "path_chars": 1024, "tree_bytes": 67108864}, "schema_version": "1", "scope": "Explicit reader-selected runtime-source regular-file snapshot bytes, root portable identity/version, and reader declarations only.", "source_rules": [{"checked_utc": "2026-10-02", "id": "C01", "scope": "source, cache, restart, portable/overlay boundaries", "url": "https://developers.openai.com/plugins/build/plugins"}, {"checked_utc": "2026-10-02", "id": "C02", "scope": "optional version; root identity reading is not schema validation", "url": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json"}, {"checked_utc": "2026-10-02", "id": "C03", "scope": "public bundled update: complete versioned ZIP, checks, review, Publish", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C04", "scope": "MCP scan/held/live tool definition boundary", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C05", "scope": "live deployed implementation is not frozen by held metadata", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C06", "scope": "MCP addition to an existing skills-only listing currently unsupported", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C07", "scope": "existing MCP URL update unsupported; contact support", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C08", "scope": "path/new version versus origin/new plugin guidance conflicts with C07", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C09", "scope": "supported install/new-session procedure; no version inspection method established here", "url": "https://learn.chatgpt.com/docs/plugins"}, {"checked_utc": "2026-10-02", "id": "C10", "scope": "portable version optional; explicit semantic version for public submission/updates", "url": "https://developers.openai.com/plugins/deploy/submission"}], "states": {"live_backend_deployment": {"actual_test_status": "NOT RUN", "authorized_behavior_evidence": "UNKNOWN", "declarations": {"declared_deployment_id": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}}, "observed_contract": "UNKNOWN", "observed_deployment_id": "UNKNOWN", "observed_endpoint": "UNKNOWN"}, "loaded_host_session": {"actual_test_status": "NOT RUN", "declarations": {"declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN"}, "observed_fingerprint": "UNKNOWN", "observed_source": "UNKNOWN", "observed_version": "UNKNOWN", "session_evidence": "UNKNOWN"}, "reviewed_published_version": {"actual_test_status": "NOT RUN", "declarations": {"declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN"}, "observed_directory_fingerprint": "UNKNOWN", "observed_published_version": "UNKNOWN", "observed_review_status": "UNKNOWN", "publication_evidence": "UNKNOWN"}, "source_bundle": {"after": {"files": [{"bytes": 199, "group": "manifest", "path": "plugin.json", "sha256": "7425b145699a49f485a74849164799741314e74ad02f99b49cd2ff3b8cc4460e"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "45a753f432874879bf92e5d97ee6066d3d6cdd419ee2ae2f838df20d9812c346", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/metadata-edit", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2802}, "basis": "OBSERVED_OFFLINE", "before": {"files": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "4ca3803a3d39acdb719745d4cadf56021c49ed5120daf21a4a5f63140d170a46", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2878}, "classification": {"bytes_changed": true, "label": "CHANGED_BYTES_SAME_VERSION", "manifest_identity_relation": "same", "manifest_version_relation": "same", "propagation": "UNKNOWN", "semantic_impact": "UNKNOWN", "semantic_version_choice": "NOT PERFORMED", "version_only_basis": "NOT ESTABLISHED"}, "diff": {"added": [], "changed": [{"after": {"bytes": 199, "group": "manifest", "path": "plugin.json", "sha256": "7425b145699a49f485a74849164799741314e74ad02f99b49cd2ff3b8cc4460e"}, "before": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "group": "manifest", "path": "plugin.json"}], "removed": [], "unchanged": [{"after": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "before": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "group": "skill", "path": "skills/meeting-evidence/SKILL.md"}]}, "loaded_or_published_fingerprint": "UNKNOWN"}}, "tool": "release-change-record-v1", "unknowns": ["selected snapshots' completeness as intended runtime", "semantic correctness and impact", "effective components/settings", "actual installed/loaded version and current-session refresh", "actual public version/review/approval", "actual deployed code/tools/auth/permissions", "adopter access, propagation, review timing and rollback capability"]}, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/metadata-edit", "--out", "/tmp/release-change-selftest-74u1959a/S12_metadata_wording", "--context", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/local.json"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/metadata-edit --out /tmp/release-change-selftest-74u1959a/S12_metadata_wording --context /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/local.json", "expected_error_code": null, "expected_exit": 0, "expected_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 199, "group": "manifest", "path": "plugin.json", "sha256": "7425b145699a49f485a74849164799741314e74ad02f99b49cd2ff3b8cc4460e"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "CHANGED_BYTES_SAME_VERSION", "context_facts": {"channel": "local_repository", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "diff": {"added": [], "changed": ["plugin.json"], "removed": [], "unchanged": ["skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": [], "next_evidence_rule_ids": [["C01", "C09"], ["C01", "C09"]], "version_relation": "same"}, "id": "S12_metadata_wording", "passed": true, "stderr": "", "stdout": "{\"classification\": \"CHANGED_BYTES_SAME_VERSION\", \"output\": \"/tmp/release-change-selftest-74u1959a/S12_metadata_wording\", \"status\": \"RECORDED_OFFLINE_NOT_VALIDATED\"}\n"} ## S13_declared_tool_permission_boundaries $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/S13_declared_tool_permission_boundaries --context /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/tool-boundaries.json expected exit=0 code=None actual exit=0 stdout: {"classification": "IDENTICAL_SNAPSHOT_BYTES", "output": "/tmp/release-change-selftest-74u1959a/S13_declared_tool_permission_boundaries", "status": "RECORDED_OFFLINE_NOT_VALIDATED"} stderr: exact checks=PASS {"actual_exit": 0, "actual_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "IDENTICAL_SNAPSHOT_BYTES", "context_facts": {"channel": "public_directory", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": true, "tool_addition": true, "tool_contract_change": true, "tool_removal": true}, "simulation_only": true}, "diff": {"added": [], "changed": [], "removed": [], "unchanged": ["plugin.json", "skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": [], "next_evidence_rule_ids": [["C01", "C09"], ["C03", "C10"], ["C04", "C05"]], "version_relation": "same"}, "actual_record": {"context": {"basis": "READER_DECLARATION_NOT_OBSERVATION", "facts": {"channel": "public_directory", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": true, "tool_addition": true, "tool_contract_change": true, "tool_removal": true}, "simulation_only": true}, "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/tool-boundaries.json", "sha256": "6bde979d25d089b394116ef74471e1c2f4b6b0e8b7d792b9dab8aad6b63db861"}, "evidence_kind": "OFFLINE_ENGINEERING_ONLY", "exclusions": ["whole-repository/runtime selection inference", "archive extraction or creation", "complete plugin/schema validation", "effective overlay/extension metadata", "component/service detection", "semantic diff or automatic version choice", "secret/safety scanning", "host installation/update/invocation", "portal/review/approval/publication", "network/deployment/authorization"], "next_evidence": [{"basis": "OUR_MAINTENANCE_RECOMMENDATION", "rule_ids": ["C01", "C09"], "text": "Record actual loaded source/version and fresh-session behavior separately; source hashes never establish a host result."}, {"basis": "SOURCE_LINKED_RECOMMENDATION_CONDITIONED_ON_DECLARED_CHANNEL", "rule_ids": ["C03", "C10"], "text": "For intended bundled public updates, use the documented complete versioned ZIP/checks/review/Publish path. Choose the version yourself; this record is not an eligibility or submission-readiness verdict."}, {"basis": "SOURCE_LINKED_RECOMMENDATION_CONDITIONED_ON_READER_DECLARATION", "rule_ids": ["C04", "C05"], "text": "Declared service/tool changes need independent deployment, live-contract, scan/availability and authorized behavior evidence. Hash equality says nothing about service behavior or review outcome."}], "recorder_policy_limits": {"context_bytes": 65536, "depth": 32, "entries": 4096, "file_bytes": 8388608, "files": 1024, "manifest_parse_bytes": 1048576, "path_chars": 1024, "tree_bytes": 67108864}, "schema_version": "1", "scope": "Explicit reader-selected runtime-source regular-file snapshot bytes, root portable identity/version, and reader declarations only.", "source_rules": [{"checked_utc": "2026-10-02", "id": "C01", "scope": "source, cache, restart, portable/overlay boundaries", "url": "https://developers.openai.com/plugins/build/plugins"}, {"checked_utc": "2026-10-02", "id": "C02", "scope": "optional version; root identity reading is not schema validation", "url": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json"}, {"checked_utc": "2026-10-02", "id": "C03", "scope": "public bundled update: complete versioned ZIP, checks, review, Publish", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C04", "scope": "MCP scan/held/live tool definition boundary", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C05", "scope": "live deployed implementation is not frozen by held metadata", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C06", "scope": "MCP addition to an existing skills-only listing currently unsupported", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C07", "scope": "existing MCP URL update unsupported; contact support", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C08", "scope": "path/new version versus origin/new plugin guidance conflicts with C07", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C09", "scope": "supported install/new-session procedure; no version inspection method established here", "url": "https://learn.chatgpt.com/docs/plugins"}, {"checked_utc": "2026-10-02", "id": "C10", "scope": "portable version optional; explicit semantic version for public submission/updates", "url": "https://developers.openai.com/plugins/deploy/submission"}], "states": {"live_backend_deployment": {"actual_test_status": "NOT RUN", "authorized_behavior_evidence": "UNKNOWN", "declarations": {"declared_deployment_id": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": true, "tool_addition": true, "tool_contract_change": true, "tool_removal": true}}, "observed_contract": "UNKNOWN", "observed_deployment_id": "UNKNOWN", "observed_endpoint": "UNKNOWN"}, "loaded_host_session": {"actual_test_status": "NOT RUN", "declarations": {"declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN"}, "observed_fingerprint": "UNKNOWN", "observed_source": "UNKNOWN", "observed_version": "UNKNOWN", "session_evidence": "UNKNOWN"}, "reviewed_published_version": {"actual_test_status": "NOT RUN", "declarations": {"declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN"}, "observed_directory_fingerprint": "UNKNOWN", "observed_published_version": "UNKNOWN", "observed_review_status": "UNKNOWN", "publication_evidence": "UNKNOWN"}, "source_bundle": {"after": {"files": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "4ca3803a3d39acdb719745d4cadf56021c49ed5120daf21a4a5f63140d170a46", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2878}, "basis": "OBSERVED_OFFLINE", "before": {"files": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "4ca3803a3d39acdb719745d4cadf56021c49ed5120daf21a4a5f63140d170a46", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2878}, "classification": {"bytes_changed": false, "label": "IDENTICAL_SNAPSHOT_BYTES", "manifest_identity_relation": "same", "manifest_version_relation": "same", "propagation": "UNKNOWN", "semantic_impact": "UNKNOWN", "semantic_version_choice": "NOT PERFORMED", "version_only_basis": "NOT ESTABLISHED"}, "diff": {"added": [], "changed": [], "removed": [], "unchanged": [{"after": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "before": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "group": "manifest", "path": "plugin.json"}, {"after": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "before": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "group": "skill", "path": "skills/meeting-evidence/SKILL.md"}]}, "loaded_or_published_fingerprint": "UNKNOWN"}}, "tool": "release-change-record-v1", "unknowns": ["selected snapshots' completeness as intended runtime", "semantic correctness and impact", "effective components/settings", "actual installed/loaded version and current-session refresh", "actual public version/review/approval", "actual deployed code/tools/auth/permissions", "adopter access, propagation, review timing and rollback capability"]}, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/S13_declared_tool_permission_boundaries", "--context", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/tool-boundaries.json"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/S13_declared_tool_permission_boundaries --context /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/tool-boundaries.json", "expected_error_code": null, "expected_exit": 0, "expected_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "IDENTICAL_SNAPSHOT_BYTES", "context_facts": {"channel": "public_directory", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": true, "tool_addition": true, "tool_contract_change": true, "tool_removal": true}, "simulation_only": true}, "diff": {"added": [], "changed": [], "removed": [], "unchanged": ["plugin.json", "skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": [], "next_evidence_rule_ids": [["C01", "C09"], ["C03", "C10"], ["C04", "C05"]], "version_relation": "same"}, "id": "S13_declared_tool_permission_boundaries", "passed": true, "stderr": "", "stdout": "{\"classification\": \"IDENTICAL_SNAPSHOT_BYTES\", \"output\": \"/tmp/release-change-selftest-74u1959a/S13_declared_tool_permission_boundaries\", \"status\": \"RECORDED_OFFLINE_NOT_VALIDATED\"}\n"} ## S14_optional_version_absent $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/missing-version --out /tmp/release-change-selftest-74u1959a/S14_optional_version_absent expected exit=0 code=None actual exit=0 stdout: {"classification": "CHANGED_BYTES_VERSION_UNKNOWN", "output": "/tmp/release-change-selftest-74u1959a/S14_optional_version_absent", "status": "RECORDED_OFFLINE_NOT_VALIDATED"} stderr: exact checks=PASS {"actual_exit": 0, "actual_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 253, "group": "manifest", "path": "plugin.json", "sha256": "9f4d1a11827c7a0ad4cbe0b1d5556f3f0b984fb3ba84fb5e774a41953f6a09c8"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "CHANGED_BYTES_VERSION_UNKNOWN", "context_facts": {"channel": "UNKNOWN", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": "UNKNOWN"}, "diff": {"added": [], "changed": ["plugin.json"], "removed": [], "unchanged": ["skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": ["UNKNOWN_VERSION"], "next_evidence_rule_ids": [["C01", "C09"], []], "version_relation": "UNKNOWN"}, "actual_record": {"context": {"basis": "ABSENT_CONTEXT_UNKNOWN", "facts": {"channel": "UNKNOWN", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": "UNKNOWN"}, "input_path": "UNKNOWN", "sha256": "UNKNOWN"}, "evidence_kind": "OFFLINE_ENGINEERING_ONLY", "exclusions": ["whole-repository/runtime selection inference", "archive extraction or creation", "complete plugin/schema validation", "effective overlay/extension metadata", "component/service detection", "semantic diff or automatic version choice", "secret/safety scanning", "host installation/update/invocation", "portal/review/approval/publication", "network/deployment/authorization"], "next_evidence": [{"basis": "OUR_MAINTENANCE_RECOMMENDATION", "rule_ids": ["C01", "C09"], "text": "Record actual loaded source/version and fresh-session behavior separately; source hashes never establish a host result."}, {"basis": "OUR_MAINTENANCE_RECOMMENDATION", "rule_ids": [], "text": "Channel UNKNOWN: select and document the intended distribution channel before choosing its next steps."}], "recorder_policy_limits": {"context_bytes": 65536, "depth": 32, "entries": 4096, "file_bytes": 8388608, "files": 1024, "manifest_parse_bytes": 1048576, "path_chars": 1024, "tree_bytes": 67108864}, "schema_version": "1", "scope": "Explicit reader-selected runtime-source regular-file snapshot bytes, root portable identity/version, and reader declarations only.", "source_rules": [{"checked_utc": "2026-10-02", "id": "C01", "scope": "source, cache, restart, portable/overlay boundaries", "url": "https://developers.openai.com/plugins/build/plugins"}, {"checked_utc": "2026-10-02", "id": "C02", "scope": "optional version; root identity reading is not schema validation", "url": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json"}, {"checked_utc": "2026-10-02", "id": "C03", "scope": "public bundled update: complete versioned ZIP, checks, review, Publish", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C04", "scope": "MCP scan/held/live tool definition boundary", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C05", "scope": "live deployed implementation is not frozen by held metadata", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C06", "scope": "MCP addition to an existing skills-only listing currently unsupported", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C07", "scope": "existing MCP URL update unsupported; contact support", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C08", "scope": "path/new version versus origin/new plugin guidance conflicts with C07", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C09", "scope": "supported install/new-session procedure; no version inspection method established here", "url": "https://learn.chatgpt.com/docs/plugins"}, {"checked_utc": "2026-10-02", "id": "C10", "scope": "portable version optional; explicit semantic version for public submission/updates", "url": "https://developers.openai.com/plugins/deploy/submission"}], "states": {"live_backend_deployment": {"actual_test_status": "NOT RUN", "authorized_behavior_evidence": "UNKNOWN", "declarations": {"declared_deployment_id": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}}, "observed_contract": "UNKNOWN", "observed_deployment_id": "UNKNOWN", "observed_endpoint": "UNKNOWN"}, "loaded_host_session": {"actual_test_status": "NOT RUN", "declarations": {"declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN"}, "observed_fingerprint": "UNKNOWN", "observed_source": "UNKNOWN", "observed_version": "UNKNOWN", "session_evidence": "UNKNOWN"}, "reviewed_published_version": {"actual_test_status": "NOT RUN", "declarations": {"declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN"}, "observed_directory_fingerprint": "UNKNOWN", "observed_published_version": "UNKNOWN", "observed_review_status": "UNKNOWN", "publication_evidence": "UNKNOWN"}, "source_bundle": {"after": {"files": [{"bytes": 253, "group": "manifest", "path": "plugin.json", "sha256": "9f4d1a11827c7a0ad4cbe0b1d5556f3f0b984fb3ba84fb5e774a41953f6a09c8"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "709def638f82051440d8c286d113b81f78bc7f61415408848b4724d59800fbc3", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/missing-version", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": ["UNKNOWN_VERSION"], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "UNKNOWN"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2856}, "basis": "OBSERVED_OFFLINE", "before": {"files": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "4ca3803a3d39acdb719745d4cadf56021c49ed5120daf21a4a5f63140d170a46", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2878}, "classification": {"bytes_changed": true, "label": "CHANGED_BYTES_VERSION_UNKNOWN", "manifest_identity_relation": "same", "manifest_version_relation": "UNKNOWN", "propagation": "UNKNOWN", "semantic_impact": "UNKNOWN", "semantic_version_choice": "NOT PERFORMED", "version_only_basis": "NOT ESTABLISHED"}, "diff": {"added": [], "changed": [{"after": {"bytes": 253, "group": "manifest", "path": "plugin.json", "sha256": "9f4d1a11827c7a0ad4cbe0b1d5556f3f0b984fb3ba84fb5e774a41953f6a09c8"}, "before": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "group": "manifest", "path": "plugin.json"}], "removed": [], "unchanged": [{"after": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "before": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "group": "skill", "path": "skills/meeting-evidence/SKILL.md"}]}, "loaded_or_published_fingerprint": "UNKNOWN"}}, "tool": "release-change-record-v1", "unknowns": ["selected snapshots' completeness as intended runtime", "semantic correctness and impact", "effective components/settings", "actual installed/loaded version and current-session refresh", "actual public version/review/approval", "actual deployed code/tools/auth/permissions", "adopter access, propagation, review timing and rollback capability"]}, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/missing-version", "--out", "/tmp/release-change-selftest-74u1959a/S14_optional_version_absent"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/missing-version --out /tmp/release-change-selftest-74u1959a/S14_optional_version_absent", "expected_error_code": null, "expected_exit": 0, "expected_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 253, "group": "manifest", "path": "plugin.json", "sha256": "9f4d1a11827c7a0ad4cbe0b1d5556f3f0b984fb3ba84fb5e774a41953f6a09c8"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "CHANGED_BYTES_VERSION_UNKNOWN", "context_facts": {"channel": "UNKNOWN", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": "UNKNOWN"}, "diff": {"added": [], "changed": ["plugin.json"], "removed": [], "unchanged": ["skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": ["UNKNOWN_VERSION"], "next_evidence_rule_ids": [["C01", "C09"], []], "version_relation": "UNKNOWN"}, "id": "S14_optional_version_absent", "passed": true, "stderr": "", "stdout": "{\"classification\": \"CHANGED_BYTES_VERSION_UNKNOWN\", \"output\": \"/tmp/release-change-selftest-74u1959a/S14_optional_version_absent\", \"status\": \"RECORDED_OFFLINE_NOT_VALIDATED\"}\n"} ## S15_filename_not_component $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/filename-not-component --out /tmp/release-change-selftest-74u1959a/S15_filename_not_component expected exit=0 code=None actual exit=0 stdout: {"classification": "CHANGED_BYTES_SAME_VERSION", "output": "/tmp/release-change-selftest-74u1959a/S15_filename_not_component", "status": "RECORDED_OFFLINE_NOT_VALIDATED"} stderr: exact checks=PASS {"actual_exit": 0, "actual_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 58, "group": "other_runtime_file", "path": "mcp.json", "sha256": "7c05fb057c26b361f04c2713bac2a6812bd56ae019d7dc9f6e8dd56ffd828723"}, {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "CHANGED_BYTES_SAME_VERSION", "context_facts": {"channel": "UNKNOWN", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": "UNKNOWN"}, "diff": {"added": ["mcp.json"], "changed": [], "removed": [], "unchanged": ["plugin.json", "skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": [], "next_evidence_rule_ids": [["C01", "C09"], []], "version_relation": "same"}, "actual_record": {"context": {"basis": "ABSENT_CONTEXT_UNKNOWN", "facts": {"channel": "UNKNOWN", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": "UNKNOWN"}, "input_path": "UNKNOWN", "sha256": "UNKNOWN"}, "evidence_kind": "OFFLINE_ENGINEERING_ONLY", "exclusions": ["whole-repository/runtime selection inference", "archive extraction or creation", "complete plugin/schema validation", "effective overlay/extension metadata", "component/service detection", "semantic diff or automatic version choice", "secret/safety scanning", "host installation/update/invocation", "portal/review/approval/publication", "network/deployment/authorization"], "next_evidence": [{"basis": "OUR_MAINTENANCE_RECOMMENDATION", "rule_ids": ["C01", "C09"], "text": "Record actual loaded source/version and fresh-session behavior separately; source hashes never establish a host result."}, {"basis": "OUR_MAINTENANCE_RECOMMENDATION", "rule_ids": [], "text": "Channel UNKNOWN: select and document the intended distribution channel before choosing its next steps."}], "recorder_policy_limits": {"context_bytes": 65536, "depth": 32, "entries": 4096, "file_bytes": 8388608, "files": 1024, "manifest_parse_bytes": 1048576, "path_chars": 1024, "tree_bytes": 67108864}, "schema_version": "1", "scope": "Explicit reader-selected runtime-source regular-file snapshot bytes, root portable identity/version, and reader declarations only.", "source_rules": [{"checked_utc": "2026-10-02", "id": "C01", "scope": "source, cache, restart, portable/overlay boundaries", "url": "https://developers.openai.com/plugins/build/plugins"}, {"checked_utc": "2026-10-02", "id": "C02", "scope": "optional version; root identity reading is not schema validation", "url": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json"}, {"checked_utc": "2026-10-02", "id": "C03", "scope": "public bundled update: complete versioned ZIP, checks, review, Publish", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C04", "scope": "MCP scan/held/live tool definition boundary", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C05", "scope": "live deployed implementation is not frozen by held metadata", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C06", "scope": "MCP addition to an existing skills-only listing currently unsupported", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C07", "scope": "existing MCP URL update unsupported; contact support", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C08", "scope": "path/new version versus origin/new plugin guidance conflicts with C07", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C09", "scope": "supported install/new-session procedure; no version inspection method established here", "url": "https://learn.chatgpt.com/docs/plugins"}, {"checked_utc": "2026-10-02", "id": "C10", "scope": "portable version optional; explicit semantic version for public submission/updates", "url": "https://developers.openai.com/plugins/deploy/submission"}], "states": {"live_backend_deployment": {"actual_test_status": "NOT RUN", "authorized_behavior_evidence": "UNKNOWN", "declarations": {"declared_deployment_id": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}}, "observed_contract": "UNKNOWN", "observed_deployment_id": "UNKNOWN", "observed_endpoint": "UNKNOWN"}, "loaded_host_session": {"actual_test_status": "NOT RUN", "declarations": {"declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN"}, "observed_fingerprint": "UNKNOWN", "observed_source": "UNKNOWN", "observed_version": "UNKNOWN", "session_evidence": "UNKNOWN"}, "reviewed_published_version": {"actual_test_status": "NOT RUN", "declarations": {"declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN"}, "observed_directory_fingerprint": "UNKNOWN", "observed_published_version": "UNKNOWN", "observed_review_status": "UNKNOWN", "publication_evidence": "UNKNOWN"}, "source_bundle": {"after": {"files": [{"bytes": 58, "group": "other_runtime_file", "path": "mcp.json", "sha256": "7c05fb057c26b361f04c2713bac2a6812bd56ae019d7dc9f6e8dd56ffd828723"}, {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "7997589551a88b69e928001fb63667157d17c7770af3f68d5e9b9c6fbc3b216e", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/filename-not-component", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2936}, "basis": "OBSERVED_OFFLINE", "before": {"files": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "4ca3803a3d39acdb719745d4cadf56021c49ed5120daf21a4a5f63140d170a46", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2878}, "classification": {"bytes_changed": true, "label": "CHANGED_BYTES_SAME_VERSION", "manifest_identity_relation": "same", "manifest_version_relation": "same", "propagation": "UNKNOWN", "semantic_impact": "UNKNOWN", "semantic_version_choice": "NOT PERFORMED", "version_only_basis": "NOT ESTABLISHED"}, "diff": {"added": [{"after": {"bytes": 58, "group": "other_runtime_file", "path": "mcp.json", "sha256": "7c05fb057c26b361f04c2713bac2a6812bd56ae019d7dc9f6e8dd56ffd828723"}, "before": null, "group": "other_runtime_file", "path": "mcp.json"}], "changed": [], "removed": [], "unchanged": [{"after": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "before": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "group": "manifest", "path": "plugin.json"}, {"after": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "before": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "group": "skill", "path": "skills/meeting-evidence/SKILL.md"}]}, "loaded_or_published_fingerprint": "UNKNOWN"}}, "tool": "release-change-record-v1", "unknowns": ["selected snapshots' completeness as intended runtime", "semantic correctness and impact", "effective components/settings", "actual installed/loaded version and current-session refresh", "actual public version/review/approval", "actual deployed code/tools/auth/permissions", "adopter access, propagation, review timing and rollback capability"]}, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/filename-not-component", "--out", "/tmp/release-change-selftest-74u1959a/S15_filename_not_component"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/filename-not-component --out /tmp/release-change-selftest-74u1959a/S15_filename_not_component", "expected_error_code": null, "expected_exit": 0, "expected_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 58, "group": "other_runtime_file", "path": "mcp.json", "sha256": "7c05fb057c26b361f04c2713bac2a6812bd56ae019d7dc9f6e8dd56ffd828723"}, {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "CHANGED_BYTES_SAME_VERSION", "context_facts": {"channel": "UNKNOWN", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": "UNKNOWN"}, "diff": {"added": ["mcp.json"], "changed": [], "removed": [], "unchanged": ["plugin.json", "skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": [], "next_evidence_rule_ids": [["C01", "C09"], []], "version_relation": "same"}, "id": "S15_filename_not_component", "passed": true, "stderr": "", "stdout": "{\"classification\": \"CHANGED_BYTES_SAME_VERSION\", \"output\": \"/tmp/release-change-selftest-74u1959a/S15_filename_not_component\", \"status\": \"RECORDED_OFFLINE_NOT_VALIDATED\"}\n"} ## S16_malformed_manifest $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/malformed-manifest --out /tmp/release-change-selftest-74u1959a/S16_malformed_manifest expected exit=0 code=None actual exit=0 stdout: {"classification": "CHANGED_BYTES_VERSION_UNKNOWN", "output": "/tmp/release-change-selftest-74u1959a/S16_malformed_manifest", "status": "RECORDED_OFFLINE_NOT_VALIDATED"} stderr: exact checks=PASS {"actual_exit": 0, "actual_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 9, "group": "manifest", "path": "plugin.json", "sha256": "679ad74664131e8e60280f5da3238cc9e56e68b67fa69e6e3195b44d79cdc973"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "CHANGED_BYTES_VERSION_UNKNOWN", "context_facts": {"channel": "UNKNOWN", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": "UNKNOWN"}, "diff": {"added": [], "changed": ["plugin.json"], "removed": [], "unchanged": ["skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": ["MALFORMED_MANIFEST_JSON_OR_UTF8"], "next_evidence_rule_ids": [["C01", "C09"], []], "version_relation": "UNKNOWN"}, "actual_record": {"context": {"basis": "ABSENT_CONTEXT_UNKNOWN", "facts": {"channel": "UNKNOWN", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": "UNKNOWN"}, "input_path": "UNKNOWN", "sha256": "UNKNOWN"}, "evidence_kind": "OFFLINE_ENGINEERING_ONLY", "exclusions": ["whole-repository/runtime selection inference", "archive extraction or creation", "complete plugin/schema validation", "effective overlay/extension metadata", "component/service detection", "semantic diff or automatic version choice", "secret/safety scanning", "host installation/update/invocation", "portal/review/approval/publication", "network/deployment/authorization"], "next_evidence": [{"basis": "OUR_MAINTENANCE_RECOMMENDATION", "rule_ids": ["C01", "C09"], "text": "Record actual loaded source/version and fresh-session behavior separately; source hashes never establish a host result."}, {"basis": "OUR_MAINTENANCE_RECOMMENDATION", "rule_ids": [], "text": "Channel UNKNOWN: select and document the intended distribution channel before choosing its next steps."}], "recorder_policy_limits": {"context_bytes": 65536, "depth": 32, "entries": 4096, "file_bytes": 8388608, "files": 1024, "manifest_parse_bytes": 1048576, "path_chars": 1024, "tree_bytes": 67108864}, "schema_version": "1", "scope": "Explicit reader-selected runtime-source regular-file snapshot bytes, root portable identity/version, and reader declarations only.", "source_rules": [{"checked_utc": "2026-10-02", "id": "C01", "scope": "source, cache, restart, portable/overlay boundaries", "url": "https://developers.openai.com/plugins/build/plugins"}, {"checked_utc": "2026-10-02", "id": "C02", "scope": "optional version; root identity reading is not schema validation", "url": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json"}, {"checked_utc": "2026-10-02", "id": "C03", "scope": "public bundled update: complete versioned ZIP, checks, review, Publish", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C04", "scope": "MCP scan/held/live tool definition boundary", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C05", "scope": "live deployed implementation is not frozen by held metadata", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C06", "scope": "MCP addition to an existing skills-only listing currently unsupported", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C07", "scope": "existing MCP URL update unsupported; contact support", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C08", "scope": "path/new version versus origin/new plugin guidance conflicts with C07", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C09", "scope": "supported install/new-session procedure; no version inspection method established here", "url": "https://learn.chatgpt.com/docs/plugins"}, {"checked_utc": "2026-10-02", "id": "C10", "scope": "portable version optional; explicit semantic version for public submission/updates", "url": "https://developers.openai.com/plugins/deploy/submission"}], "states": {"live_backend_deployment": {"actual_test_status": "NOT RUN", "authorized_behavior_evidence": "UNKNOWN", "declarations": {"declared_deployment_id": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}}, "observed_contract": "UNKNOWN", "observed_deployment_id": "UNKNOWN", "observed_endpoint": "UNKNOWN"}, "loaded_host_session": {"actual_test_status": "NOT RUN", "declarations": {"declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN"}, "observed_fingerprint": "UNKNOWN", "observed_source": "UNKNOWN", "observed_version": "UNKNOWN", "session_evidence": "UNKNOWN"}, "reviewed_published_version": {"actual_test_status": "NOT RUN", "declarations": {"declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN"}, "observed_directory_fingerprint": "UNKNOWN", "observed_published_version": "UNKNOWN", "observed_review_status": "UNKNOWN", "publication_evidence": "UNKNOWN"}, "source_bundle": {"after": {"files": [{"bytes": 9, "group": "manifest", "path": "plugin.json", "sha256": "679ad74664131e8e60280f5da3238cc9e56e68b67fa69e6e3195b44d79cdc973"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "f6f97d7195c53e1b9a8dbf4b4ed0525473da99741574f2da7672da2bc7b7919a", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/malformed-manifest", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": ["MALFORMED_MANIFEST_JSON_OR_UTF8"], "name": "UNKNOWN", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "unsupported-for-manifest-interpretation", "version": "UNKNOWN"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2612}, "basis": "OBSERVED_OFFLINE", "before": {"files": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "4ca3803a3d39acdb719745d4cadf56021c49ed5120daf21a4a5f63140d170a46", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2878}, "classification": {"bytes_changed": true, "label": "CHANGED_BYTES_VERSION_UNKNOWN", "manifest_identity_relation": "UNKNOWN", "manifest_version_relation": "UNKNOWN", "propagation": "UNKNOWN", "semantic_impact": "UNKNOWN", "semantic_version_choice": "NOT PERFORMED", "version_only_basis": "NOT ESTABLISHED"}, "diff": {"added": [], "changed": [{"after": {"bytes": 9, "group": "manifest", "path": "plugin.json", "sha256": "679ad74664131e8e60280f5da3238cc9e56e68b67fa69e6e3195b44d79cdc973"}, "before": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "group": "manifest", "path": "plugin.json"}], "removed": [], "unchanged": [{"after": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "before": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "group": "skill", "path": "skills/meeting-evidence/SKILL.md"}]}, "loaded_or_published_fingerprint": "UNKNOWN"}}, "tool": "release-change-record-v1", "unknowns": ["selected snapshots' completeness as intended runtime", "semantic correctness and impact", "effective components/settings", "actual installed/loaded version and current-session refresh", "actual public version/review/approval", "actual deployed code/tools/auth/permissions", "adopter access, propagation, review timing and rollback capability"]}, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/malformed-manifest", "--out", "/tmp/release-change-selftest-74u1959a/S16_malformed_manifest"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/malformed-manifest --out /tmp/release-change-selftest-74u1959a/S16_malformed_manifest", "expected_error_code": null, "expected_exit": 0, "expected_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 9, "group": "manifest", "path": "plugin.json", "sha256": "679ad74664131e8e60280f5da3238cc9e56e68b67fa69e6e3195b44d79cdc973"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "CHANGED_BYTES_VERSION_UNKNOWN", "context_facts": {"channel": "UNKNOWN", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": "UNKNOWN"}, "diff": {"added": [], "changed": ["plugin.json"], "removed": [], "unchanged": ["skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": ["MALFORMED_MANIFEST_JSON_OR_UTF8"], "next_evidence_rule_ids": [["C01", "C09"], []], "version_relation": "UNKNOWN"}, "id": "S16_malformed_manifest", "passed": true, "stderr": "", "stdout": "{\"classification\": \"CHANGED_BYTES_VERSION_UNKNOWN\", \"output\": \"/tmp/release-change-selftest-74u1959a/S16_malformed_manifest\", \"status\": \"RECORDED_OFFLINE_NOT_VALIDATED\"}\n"} ## S17_nonobject_manifest $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/nonobject-manifest --out /tmp/release-change-selftest-74u1959a/S17_nonobject_manifest expected exit=0 code=None actual exit=0 stdout: {"classification": "CHANGED_BYTES_VERSION_UNKNOWN", "output": "/tmp/release-change-selftest-74u1959a/S17_nonobject_manifest", "status": "RECORDED_OFFLINE_NOT_VALIDATED"} stderr: exact checks=PASS {"actual_exit": 0, "actual_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 5, "group": "manifest", "path": "plugin.json", "sha256": "38e0b9de817f645c4bec37c0d4a3e58baecccb040f5718dc069a72c7385a0bed"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "CHANGED_BYTES_VERSION_UNKNOWN", "context_facts": {"channel": "UNKNOWN", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": "UNKNOWN"}, "diff": {"added": [], "changed": ["plugin.json"], "removed": [], "unchanged": ["skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": ["MANIFEST_NOT_OBJECT"], "next_evidence_rule_ids": [["C01", "C09"], []], "version_relation": "UNKNOWN"}, "actual_record": {"context": {"basis": "ABSENT_CONTEXT_UNKNOWN", "facts": {"channel": "UNKNOWN", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": "UNKNOWN"}, "input_path": "UNKNOWN", "sha256": "UNKNOWN"}, "evidence_kind": "OFFLINE_ENGINEERING_ONLY", "exclusions": ["whole-repository/runtime selection inference", "archive extraction or creation", "complete plugin/schema validation", "effective overlay/extension metadata", "component/service detection", "semantic diff or automatic version choice", "secret/safety scanning", "host installation/update/invocation", "portal/review/approval/publication", "network/deployment/authorization"], "next_evidence": [{"basis": "OUR_MAINTENANCE_RECOMMENDATION", "rule_ids": ["C01", "C09"], "text": "Record actual loaded source/version and fresh-session behavior separately; source hashes never establish a host result."}, {"basis": "OUR_MAINTENANCE_RECOMMENDATION", "rule_ids": [], "text": "Channel UNKNOWN: select and document the intended distribution channel before choosing its next steps."}], "recorder_policy_limits": {"context_bytes": 65536, "depth": 32, "entries": 4096, "file_bytes": 8388608, "files": 1024, "manifest_parse_bytes": 1048576, "path_chars": 1024, "tree_bytes": 67108864}, "schema_version": "1", "scope": "Explicit reader-selected runtime-source regular-file snapshot bytes, root portable identity/version, and reader declarations only.", "source_rules": [{"checked_utc": "2026-10-02", "id": "C01", "scope": "source, cache, restart, portable/overlay boundaries", "url": "https://developers.openai.com/plugins/build/plugins"}, {"checked_utc": "2026-10-02", "id": "C02", "scope": "optional version; root identity reading is not schema validation", "url": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json"}, {"checked_utc": "2026-10-02", "id": "C03", "scope": "public bundled update: complete versioned ZIP, checks, review, Publish", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C04", "scope": "MCP scan/held/live tool definition boundary", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C05", "scope": "live deployed implementation is not frozen by held metadata", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C06", "scope": "MCP addition to an existing skills-only listing currently unsupported", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C07", "scope": "existing MCP URL update unsupported; contact support", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C08", "scope": "path/new version versus origin/new plugin guidance conflicts with C07", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C09", "scope": "supported install/new-session procedure; no version inspection method established here", "url": "https://learn.chatgpt.com/docs/plugins"}, {"checked_utc": "2026-10-02", "id": "C10", "scope": "portable version optional; explicit semantic version for public submission/updates", "url": "https://developers.openai.com/plugins/deploy/submission"}], "states": {"live_backend_deployment": {"actual_test_status": "NOT RUN", "authorized_behavior_evidence": "UNKNOWN", "declarations": {"declared_deployment_id": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}}, "observed_contract": "UNKNOWN", "observed_deployment_id": "UNKNOWN", "observed_endpoint": "UNKNOWN"}, "loaded_host_session": {"actual_test_status": "NOT RUN", "declarations": {"declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN"}, "observed_fingerprint": "UNKNOWN", "observed_source": "UNKNOWN", "observed_version": "UNKNOWN", "session_evidence": "UNKNOWN"}, "reviewed_published_version": {"actual_test_status": "NOT RUN", "declarations": {"declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN"}, "observed_directory_fingerprint": "UNKNOWN", "observed_published_version": "UNKNOWN", "observed_review_status": "UNKNOWN", "publication_evidence": "UNKNOWN"}, "source_bundle": {"after": {"files": [{"bytes": 5, "group": "manifest", "path": "plugin.json", "sha256": "38e0b9de817f645c4bec37c0d4a3e58baecccb040f5718dc069a72c7385a0bed"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "88ae2f8727b539b320275905feda45cf64ff9bc22980d40b55c68a2d8bde717d", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/nonobject-manifest", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": ["MANIFEST_NOT_OBJECT"], "name": "UNKNOWN", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "unsupported-for-manifest-interpretation", "version": "UNKNOWN"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2608}, "basis": "OBSERVED_OFFLINE", "before": {"files": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "4ca3803a3d39acdb719745d4cadf56021c49ed5120daf21a4a5f63140d170a46", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2878}, "classification": {"bytes_changed": true, "label": "CHANGED_BYTES_VERSION_UNKNOWN", "manifest_identity_relation": "UNKNOWN", "manifest_version_relation": "UNKNOWN", "propagation": "UNKNOWN", "semantic_impact": "UNKNOWN", "semantic_version_choice": "NOT PERFORMED", "version_only_basis": "NOT ESTABLISHED"}, "diff": {"added": [], "changed": [{"after": {"bytes": 5, "group": "manifest", "path": "plugin.json", "sha256": "38e0b9de817f645c4bec37c0d4a3e58baecccb040f5718dc069a72c7385a0bed"}, "before": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "group": "manifest", "path": "plugin.json"}], "removed": [], "unchanged": [{"after": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "before": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "group": "skill", "path": "skills/meeting-evidence/SKILL.md"}]}, "loaded_or_published_fingerprint": "UNKNOWN"}}, "tool": "release-change-record-v1", "unknowns": ["selected snapshots' completeness as intended runtime", "semantic correctness and impact", "effective components/settings", "actual installed/loaded version and current-session refresh", "actual public version/review/approval", "actual deployed code/tools/auth/permissions", "adopter access, propagation, review timing and rollback capability"]}, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/nonobject-manifest", "--out", "/tmp/release-change-selftest-74u1959a/S17_nonobject_manifest"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/nonobject-manifest --out /tmp/release-change-selftest-74u1959a/S17_nonobject_manifest", "expected_error_code": null, "expected_exit": 0, "expected_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 5, "group": "manifest", "path": "plugin.json", "sha256": "38e0b9de817f645c4bec37c0d4a3e58baecccb040f5718dc069a72c7385a0bed"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "CHANGED_BYTES_VERSION_UNKNOWN", "context_facts": {"channel": "UNKNOWN", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": "UNKNOWN"}, "diff": {"added": [], "changed": ["plugin.json"], "removed": [], "unchanged": ["skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": ["MANIFEST_NOT_OBJECT"], "next_evidence_rule_ids": [["C01", "C09"], []], "version_relation": "UNKNOWN"}, "id": "S17_nonobject_manifest", "passed": true, "stderr": "", "stdout": "{\"classification\": \"CHANGED_BYTES_VERSION_UNKNOWN\", \"output\": \"/tmp/release-change-selftest-74u1959a/S17_nonobject_manifest\", \"status\": \"RECORDED_OFFLINE_NOT_VALIDATED\"}\n"} ## S18_duplicate_manifest_keys $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/duplicate-manifest --out /tmp/release-change-selftest-74u1959a/S18_duplicate_manifest_keys expected exit=0 code=None actual exit=0 stdout: {"classification": "CHANGED_BYTES_VERSION_UNKNOWN", "output": "/tmp/release-change-selftest-74u1959a/S18_duplicate_manifest_keys", "status": "RECORDED_OFFLINE_NOT_VALIDATED"} stderr: exact checks=PASS {"actual_exit": 0, "actual_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 24, "group": "manifest", "path": "plugin.json", "sha256": "f046ec123e4ec5155ba7d562f5951876da61e47708b2a6bb0f849d51b88c3a23"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "CHANGED_BYTES_VERSION_UNKNOWN", "context_facts": {"channel": "UNKNOWN", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": "UNKNOWN"}, "diff": {"added": [], "changed": ["plugin.json"], "removed": [], "unchanged": ["skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": ["MALFORMED_MANIFEST_JSON_OR_UTF8"], "next_evidence_rule_ids": [["C01", "C09"], []], "version_relation": "UNKNOWN"}, "actual_record": {"context": {"basis": "ABSENT_CONTEXT_UNKNOWN", "facts": {"channel": "UNKNOWN", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": "UNKNOWN"}, "input_path": "UNKNOWN", "sha256": "UNKNOWN"}, "evidence_kind": "OFFLINE_ENGINEERING_ONLY", "exclusions": ["whole-repository/runtime selection inference", "archive extraction or creation", "complete plugin/schema validation", "effective overlay/extension metadata", "component/service detection", "semantic diff or automatic version choice", "secret/safety scanning", "host installation/update/invocation", "portal/review/approval/publication", "network/deployment/authorization"], "next_evidence": [{"basis": "OUR_MAINTENANCE_RECOMMENDATION", "rule_ids": ["C01", "C09"], "text": "Record actual loaded source/version and fresh-session behavior separately; source hashes never establish a host result."}, {"basis": "OUR_MAINTENANCE_RECOMMENDATION", "rule_ids": [], "text": "Channel UNKNOWN: select and document the intended distribution channel before choosing its next steps."}], "recorder_policy_limits": {"context_bytes": 65536, "depth": 32, "entries": 4096, "file_bytes": 8388608, "files": 1024, "manifest_parse_bytes": 1048576, "path_chars": 1024, "tree_bytes": 67108864}, "schema_version": "1", "scope": "Explicit reader-selected runtime-source regular-file snapshot bytes, root portable identity/version, and reader declarations only.", "source_rules": [{"checked_utc": "2026-10-02", "id": "C01", "scope": "source, cache, restart, portable/overlay boundaries", "url": "https://developers.openai.com/plugins/build/plugins"}, {"checked_utc": "2026-10-02", "id": "C02", "scope": "optional version; root identity reading is not schema validation", "url": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json"}, {"checked_utc": "2026-10-02", "id": "C03", "scope": "public bundled update: complete versioned ZIP, checks, review, Publish", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C04", "scope": "MCP scan/held/live tool definition boundary", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C05", "scope": "live deployed implementation is not frozen by held metadata", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C06", "scope": "MCP addition to an existing skills-only listing currently unsupported", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C07", "scope": "existing MCP URL update unsupported; contact support", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C08", "scope": "path/new version versus origin/new plugin guidance conflicts with C07", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C09", "scope": "supported install/new-session procedure; no version inspection method established here", "url": "https://learn.chatgpt.com/docs/plugins"}, {"checked_utc": "2026-10-02", "id": "C10", "scope": "portable version optional; explicit semantic version for public submission/updates", "url": "https://developers.openai.com/plugins/deploy/submission"}], "states": {"live_backend_deployment": {"actual_test_status": "NOT RUN", "authorized_behavior_evidence": "UNKNOWN", "declarations": {"declared_deployment_id": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}}, "observed_contract": "UNKNOWN", "observed_deployment_id": "UNKNOWN", "observed_endpoint": "UNKNOWN"}, "loaded_host_session": {"actual_test_status": "NOT RUN", "declarations": {"declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN"}, "observed_fingerprint": "UNKNOWN", "observed_source": "UNKNOWN", "observed_version": "UNKNOWN", "session_evidence": "UNKNOWN"}, "reviewed_published_version": {"actual_test_status": "NOT RUN", "declarations": {"declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN"}, "observed_directory_fingerprint": "UNKNOWN", "observed_published_version": "UNKNOWN", "observed_review_status": "UNKNOWN", "publication_evidence": "UNKNOWN"}, "source_bundle": {"after": {"files": [{"bytes": 24, "group": "manifest", "path": "plugin.json", "sha256": "f046ec123e4ec5155ba7d562f5951876da61e47708b2a6bb0f849d51b88c3a23"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "b2e52ea7a90604a9f833bbeb867878c36800518b8af84e04536642469e3c89a9", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/duplicate-manifest", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": ["MALFORMED_MANIFEST_JSON_OR_UTF8"], "name": "UNKNOWN", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "unsupported-for-manifest-interpretation", "version": "UNKNOWN"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2627}, "basis": "OBSERVED_OFFLINE", "before": {"files": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "4ca3803a3d39acdb719745d4cadf56021c49ed5120daf21a4a5f63140d170a46", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2878}, "classification": {"bytes_changed": true, "label": "CHANGED_BYTES_VERSION_UNKNOWN", "manifest_identity_relation": "UNKNOWN", "manifest_version_relation": "UNKNOWN", "propagation": "UNKNOWN", "semantic_impact": "UNKNOWN", "semantic_version_choice": "NOT PERFORMED", "version_only_basis": "NOT ESTABLISHED"}, "diff": {"added": [], "changed": [{"after": {"bytes": 24, "group": "manifest", "path": "plugin.json", "sha256": "f046ec123e4ec5155ba7d562f5951876da61e47708b2a6bb0f849d51b88c3a23"}, "before": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "group": "manifest", "path": "plugin.json"}], "removed": [], "unchanged": [{"after": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "before": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "group": "skill", "path": "skills/meeting-evidence/SKILL.md"}]}, "loaded_or_published_fingerprint": "UNKNOWN"}}, "tool": "release-change-record-v1", "unknowns": ["selected snapshots' completeness as intended runtime", "semantic correctness and impact", "effective components/settings", "actual installed/loaded version and current-session refresh", "actual public version/review/approval", "actual deployed code/tools/auth/permissions", "adopter access, propagation, review timing and rollback capability"]}, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/duplicate-manifest", "--out", "/tmp/release-change-selftest-74u1959a/S18_duplicate_manifest_keys"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/duplicate-manifest --out /tmp/release-change-selftest-74u1959a/S18_duplicate_manifest_keys", "expected_error_code": null, "expected_exit": 0, "expected_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 24, "group": "manifest", "path": "plugin.json", "sha256": "f046ec123e4ec5155ba7d562f5951876da61e47708b2a6bb0f849d51b88c3a23"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "CHANGED_BYTES_VERSION_UNKNOWN", "context_facts": {"channel": "UNKNOWN", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": "UNKNOWN"}, "diff": {"added": [], "changed": ["plugin.json"], "removed": [], "unchanged": ["skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": ["MALFORMED_MANIFEST_JSON_OR_UTF8"], "next_evidence_rule_ids": [["C01", "C09"], []], "version_relation": "UNKNOWN"}, "id": "S18_duplicate_manifest_keys", "passed": true, "stderr": "", "stdout": "{\"classification\": \"CHANGED_BYTES_VERSION_UNKNOWN\", \"output\": \"/tmp/release-change-selftest-74u1959a/S18_duplicate_manifest_keys\", \"status\": \"RECORDED_OFFLINE_NOT_VALIDATED\"}\n"} ## S19_invalid_utf8_manifest $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/invalid-utf8-manifest --out /tmp/release-change-selftest-74u1959a/S19_invalid_utf8_manifest expected exit=0 code=None actual exit=0 stdout: {"classification": "CHANGED_BYTES_VERSION_UNKNOWN", "output": "/tmp/release-change-selftest-74u1959a/S19_invalid_utf8_manifest", "status": "RECORDED_OFFLINE_NOT_VALIDATED"} stderr: exact checks=PASS {"actual_exit": 0, "actual_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 2, "group": "manifest", "path": "plugin.json", "sha256": "b3d510ef04275ca8e698e5b3cbb0ece3949ef9252f0cdc839e9ee347409a2209"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "CHANGED_BYTES_VERSION_UNKNOWN", "context_facts": {"channel": "UNKNOWN", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": "UNKNOWN"}, "diff": {"added": [], "changed": ["plugin.json"], "removed": [], "unchanged": ["skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": ["MALFORMED_MANIFEST_JSON_OR_UTF8"], "next_evidence_rule_ids": [["C01", "C09"], []], "version_relation": "UNKNOWN"}, "actual_record": {"context": {"basis": "ABSENT_CONTEXT_UNKNOWN", "facts": {"channel": "UNKNOWN", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": "UNKNOWN"}, "input_path": "UNKNOWN", "sha256": "UNKNOWN"}, "evidence_kind": "OFFLINE_ENGINEERING_ONLY", "exclusions": ["whole-repository/runtime selection inference", "archive extraction or creation", "complete plugin/schema validation", "effective overlay/extension metadata", "component/service detection", "semantic diff or automatic version choice", "secret/safety scanning", "host installation/update/invocation", "portal/review/approval/publication", "network/deployment/authorization"], "next_evidence": [{"basis": "OUR_MAINTENANCE_RECOMMENDATION", "rule_ids": ["C01", "C09"], "text": "Record actual loaded source/version and fresh-session behavior separately; source hashes never establish a host result."}, {"basis": "OUR_MAINTENANCE_RECOMMENDATION", "rule_ids": [], "text": "Channel UNKNOWN: select and document the intended distribution channel before choosing its next steps."}], "recorder_policy_limits": {"context_bytes": 65536, "depth": 32, "entries": 4096, "file_bytes": 8388608, "files": 1024, "manifest_parse_bytes": 1048576, "path_chars": 1024, "tree_bytes": 67108864}, "schema_version": "1", "scope": "Explicit reader-selected runtime-source regular-file snapshot bytes, root portable identity/version, and reader declarations only.", "source_rules": [{"checked_utc": "2026-10-02", "id": "C01", "scope": "source, cache, restart, portable/overlay boundaries", "url": "https://developers.openai.com/plugins/build/plugins"}, {"checked_utc": "2026-10-02", "id": "C02", "scope": "optional version; root identity reading is not schema validation", "url": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json"}, {"checked_utc": "2026-10-02", "id": "C03", "scope": "public bundled update: complete versioned ZIP, checks, review, Publish", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C04", "scope": "MCP scan/held/live tool definition boundary", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C05", "scope": "live deployed implementation is not frozen by held metadata", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C06", "scope": "MCP addition to an existing skills-only listing currently unsupported", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C07", "scope": "existing MCP URL update unsupported; contact support", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C08", "scope": "path/new version versus origin/new plugin guidance conflicts with C07", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C09", "scope": "supported install/new-session procedure; no version inspection method established here", "url": "https://learn.chatgpt.com/docs/plugins"}, {"checked_utc": "2026-10-02", "id": "C10", "scope": "portable version optional; explicit semantic version for public submission/updates", "url": "https://developers.openai.com/plugins/deploy/submission"}], "states": {"live_backend_deployment": {"actual_test_status": "NOT RUN", "authorized_behavior_evidence": "UNKNOWN", "declarations": {"declared_deployment_id": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}}, "observed_contract": "UNKNOWN", "observed_deployment_id": "UNKNOWN", "observed_endpoint": "UNKNOWN"}, "loaded_host_session": {"actual_test_status": "NOT RUN", "declarations": {"declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN"}, "observed_fingerprint": "UNKNOWN", "observed_source": "UNKNOWN", "observed_version": "UNKNOWN", "session_evidence": "UNKNOWN"}, "reviewed_published_version": {"actual_test_status": "NOT RUN", "declarations": {"declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN"}, "observed_directory_fingerprint": "UNKNOWN", "observed_published_version": "UNKNOWN", "observed_review_status": "UNKNOWN", "publication_evidence": "UNKNOWN"}, "source_bundle": {"after": {"files": [{"bytes": 2, "group": "manifest", "path": "plugin.json", "sha256": "b3d510ef04275ca8e698e5b3cbb0ece3949ef9252f0cdc839e9ee347409a2209"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "7a365d1d58ba42b9ba4a15e1c6b25e0b9bcb4b7de714efa0cd8ac319a66665ac", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/invalid-utf8-manifest", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": ["MALFORMED_MANIFEST_JSON_OR_UTF8"], "name": "UNKNOWN", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "unsupported-for-manifest-interpretation", "version": "UNKNOWN"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2605}, "basis": "OBSERVED_OFFLINE", "before": {"files": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "4ca3803a3d39acdb719745d4cadf56021c49ed5120daf21a4a5f63140d170a46", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2878}, "classification": {"bytes_changed": true, "label": "CHANGED_BYTES_VERSION_UNKNOWN", "manifest_identity_relation": "UNKNOWN", "manifest_version_relation": "UNKNOWN", "propagation": "UNKNOWN", "semantic_impact": "UNKNOWN", "semantic_version_choice": "NOT PERFORMED", "version_only_basis": "NOT ESTABLISHED"}, "diff": {"added": [], "changed": [{"after": {"bytes": 2, "group": "manifest", "path": "plugin.json", "sha256": "b3d510ef04275ca8e698e5b3cbb0ece3949ef9252f0cdc839e9ee347409a2209"}, "before": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "group": "manifest", "path": "plugin.json"}], "removed": [], "unchanged": [{"after": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "before": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "group": "skill", "path": "skills/meeting-evidence/SKILL.md"}]}, "loaded_or_published_fingerprint": "UNKNOWN"}}, "tool": "release-change-record-v1", "unknowns": ["selected snapshots' completeness as intended runtime", "semantic correctness and impact", "effective components/settings", "actual installed/loaded version and current-session refresh", "actual public version/review/approval", "actual deployed code/tools/auth/permissions", "adopter access, propagation, review timing and rollback capability"]}, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/invalid-utf8-manifest", "--out", "/tmp/release-change-selftest-74u1959a/S19_invalid_utf8_manifest"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/invalid-utf8-manifest --out /tmp/release-change-selftest-74u1959a/S19_invalid_utf8_manifest", "expected_error_code": null, "expected_exit": 0, "expected_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 2, "group": "manifest", "path": "plugin.json", "sha256": "b3d510ef04275ca8e698e5b3cbb0ece3949ef9252f0cdc839e9ee347409a2209"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "CHANGED_BYTES_VERSION_UNKNOWN", "context_facts": {"channel": "UNKNOWN", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": "UNKNOWN"}, "diff": {"added": [], "changed": ["plugin.json"], "removed": [], "unchanged": ["skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": ["MALFORMED_MANIFEST_JSON_OR_UTF8"], "next_evidence_rule_ids": [["C01", "C09"], []], "version_relation": "UNKNOWN"}, "id": "S19_invalid_utf8_manifest", "passed": true, "stderr": "", "stdout": "{\"classification\": \"CHANGED_BYTES_VERSION_UNKNOWN\", \"output\": \"/tmp/release-change-selftest-74u1959a/S19_invalid_utf8_manifest\", \"status\": \"RECORDED_OFFLINE_NOT_VALIDATED\"}\n"} ## S20_unsupported_schema $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/unsupported-schema --out /tmp/release-change-selftest-74u1959a/S20_unsupported_schema expected exit=0 code=None actual exit=0 stdout: {"classification": "CHANGED_BYTES_VERSION_UNKNOWN", "output": "/tmp/release-change-selftest-74u1959a/S20_unsupported_schema", "status": "RECORDED_OFFLINE_NOT_VALIDATED"} stderr: exact checks=PASS {"actual_exit": 0, "actual_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 99, "group": "manifest", "path": "plugin.json", "sha256": "fa46d1ef13457de697bf856d45828f2e04359acfca7e83fc9a9c3a17b0d65752"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "CHANGED_BYTES_VERSION_UNKNOWN", "context_facts": {"channel": "UNKNOWN", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": "UNKNOWN"}, "diff": {"added": [], "changed": ["plugin.json"], "removed": [], "unchanged": ["skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": ["UNSUPPORTED_ROOT_SCHEMA"], "next_evidence_rule_ids": [["C01", "C09"], []], "version_relation": "UNKNOWN"}, "actual_record": {"context": {"basis": "ABSENT_CONTEXT_UNKNOWN", "facts": {"channel": "UNKNOWN", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": "UNKNOWN"}, "input_path": "UNKNOWN", "sha256": "UNKNOWN"}, "evidence_kind": "OFFLINE_ENGINEERING_ONLY", "exclusions": ["whole-repository/runtime selection inference", "archive extraction or creation", "complete plugin/schema validation", "effective overlay/extension metadata", "component/service detection", "semantic diff or automatic version choice", "secret/safety scanning", "host installation/update/invocation", "portal/review/approval/publication", "network/deployment/authorization"], "next_evidence": [{"basis": "OUR_MAINTENANCE_RECOMMENDATION", "rule_ids": ["C01", "C09"], "text": "Record actual loaded source/version and fresh-session behavior separately; source hashes never establish a host result."}, {"basis": "OUR_MAINTENANCE_RECOMMENDATION", "rule_ids": [], "text": "Channel UNKNOWN: select and document the intended distribution channel before choosing its next steps."}], "recorder_policy_limits": {"context_bytes": 65536, "depth": 32, "entries": 4096, "file_bytes": 8388608, "files": 1024, "manifest_parse_bytes": 1048576, "path_chars": 1024, "tree_bytes": 67108864}, "schema_version": "1", "scope": "Explicit reader-selected runtime-source regular-file snapshot bytes, root portable identity/version, and reader declarations only.", "source_rules": [{"checked_utc": "2026-10-02", "id": "C01", "scope": "source, cache, restart, portable/overlay boundaries", "url": "https://developers.openai.com/plugins/build/plugins"}, {"checked_utc": "2026-10-02", "id": "C02", "scope": "optional version; root identity reading is not schema validation", "url": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json"}, {"checked_utc": "2026-10-02", "id": "C03", "scope": "public bundled update: complete versioned ZIP, checks, review, Publish", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C04", "scope": "MCP scan/held/live tool definition boundary", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C05", "scope": "live deployed implementation is not frozen by held metadata", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C06", "scope": "MCP addition to an existing skills-only listing currently unsupported", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C07", "scope": "existing MCP URL update unsupported; contact support", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C08", "scope": "path/new version versus origin/new plugin guidance conflicts with C07", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C09", "scope": "supported install/new-session procedure; no version inspection method established here", "url": "https://learn.chatgpt.com/docs/plugins"}, {"checked_utc": "2026-10-02", "id": "C10", "scope": "portable version optional; explicit semantic version for public submission/updates", "url": "https://developers.openai.com/plugins/deploy/submission"}], "states": {"live_backend_deployment": {"actual_test_status": "NOT RUN", "authorized_behavior_evidence": "UNKNOWN", "declarations": {"declared_deployment_id": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}}, "observed_contract": "UNKNOWN", "observed_deployment_id": "UNKNOWN", "observed_endpoint": "UNKNOWN"}, "loaded_host_session": {"actual_test_status": "NOT RUN", "declarations": {"declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN"}, "observed_fingerprint": "UNKNOWN", "observed_source": "UNKNOWN", "observed_version": "UNKNOWN", "session_evidence": "UNKNOWN"}, "reviewed_published_version": {"actual_test_status": "NOT RUN", "declarations": {"declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN"}, "observed_directory_fingerprint": "UNKNOWN", "observed_published_version": "UNKNOWN", "observed_review_status": "UNKNOWN", "publication_evidence": "UNKNOWN"}, "source_bundle": {"after": {"files": [{"bytes": 99, "group": "manifest", "path": "plugin.json", "sha256": "fa46d1ef13457de697bf856d45828f2e04359acfca7e83fc9a9c3a17b0d65752"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "7e4fe728c9a03f174b648eaa4ae830533e7b07691d1c46de5926d2fd0ee73475", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/unsupported-schema", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": ["UNSUPPORTED_ROOT_SCHEMA"], "name": "UNKNOWN", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "unsupported-for-manifest-interpretation", "version": "UNKNOWN"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2702}, "basis": "OBSERVED_OFFLINE", "before": {"files": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "4ca3803a3d39acdb719745d4cadf56021c49ed5120daf21a4a5f63140d170a46", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2878}, "classification": {"bytes_changed": true, "label": "CHANGED_BYTES_VERSION_UNKNOWN", "manifest_identity_relation": "UNKNOWN", "manifest_version_relation": "UNKNOWN", "propagation": "UNKNOWN", "semantic_impact": "UNKNOWN", "semantic_version_choice": "NOT PERFORMED", "version_only_basis": "NOT ESTABLISHED"}, "diff": {"added": [], "changed": [{"after": {"bytes": 99, "group": "manifest", "path": "plugin.json", "sha256": "fa46d1ef13457de697bf856d45828f2e04359acfca7e83fc9a9c3a17b0d65752"}, "before": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "group": "manifest", "path": "plugin.json"}], "removed": [], "unchanged": [{"after": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "before": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "group": "skill", "path": "skills/meeting-evidence/SKILL.md"}]}, "loaded_or_published_fingerprint": "UNKNOWN"}}, "tool": "release-change-record-v1", "unknowns": ["selected snapshots' completeness as intended runtime", "semantic correctness and impact", "effective components/settings", "actual installed/loaded version and current-session refresh", "actual public version/review/approval", "actual deployed code/tools/auth/permissions", "adopter access, propagation, review timing and rollback capability"]}, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/unsupported-schema", "--out", "/tmp/release-change-selftest-74u1959a/S20_unsupported_schema"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/unsupported-schema --out /tmp/release-change-selftest-74u1959a/S20_unsupported_schema", "expected_error_code": null, "expected_exit": 0, "expected_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 99, "group": "manifest", "path": "plugin.json", "sha256": "fa46d1ef13457de697bf856d45828f2e04359acfca7e83fc9a9c3a17b0d65752"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "CHANGED_BYTES_VERSION_UNKNOWN", "context_facts": {"channel": "UNKNOWN", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": "UNKNOWN"}, "diff": {"added": [], "changed": ["plugin.json"], "removed": [], "unchanged": ["skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": ["UNSUPPORTED_ROOT_SCHEMA"], "next_evidence_rule_ids": [["C01", "C09"], []], "version_relation": "UNKNOWN"}, "id": "S20_unsupported_schema", "passed": true, "stderr": "", "stdout": "{\"classification\": \"CHANGED_BYTES_VERSION_UNKNOWN\", \"output\": \"/tmp/release-change-selftest-74u1959a/S20_unsupported_schema\", \"status\": \"RECORDED_OFFLINE_NOT_VALIDATED\"}\n"} ## S21_wrong_root_field_types $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/wrong-field-types --out /tmp/release-change-selftest-74u1959a/S21_wrong_root_field_types expected exit=0 code=None actual exit=0 stdout: {"classification": "CHANGED_BYTES_VERSION_UNKNOWN", "output": "/tmp/release-change-selftest-74u1959a/S21_wrong_root_field_types", "status": "RECORDED_OFFLINE_NOT_VALIDATED"} stderr: exact checks=PASS {"actual_exit": 0, "actual_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 112, "group": "manifest", "path": "plugin.json", "sha256": "1e9aa128292e05c1067bcaebc915e2c7c82a30944a75321c1c13b92ebc506006"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "CHANGED_BYTES_VERSION_UNKNOWN", "context_facts": {"channel": "UNKNOWN", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": "UNKNOWN"}, "diff": {"added": [], "changed": ["plugin.json"], "removed": [], "unchanged": ["skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": ["UNKNOWN_NAME", "UNKNOWN_VERSION"], "next_evidence_rule_ids": [["C01", "C09"], []], "version_relation": "UNKNOWN"}, "actual_record": {"context": {"basis": "ABSENT_CONTEXT_UNKNOWN", "facts": {"channel": "UNKNOWN", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": "UNKNOWN"}, "input_path": "UNKNOWN", "sha256": "UNKNOWN"}, "evidence_kind": "OFFLINE_ENGINEERING_ONLY", "exclusions": ["whole-repository/runtime selection inference", "archive extraction or creation", "complete plugin/schema validation", "effective overlay/extension metadata", "component/service detection", "semantic diff or automatic version choice", "secret/safety scanning", "host installation/update/invocation", "portal/review/approval/publication", "network/deployment/authorization"], "next_evidence": [{"basis": "OUR_MAINTENANCE_RECOMMENDATION", "rule_ids": ["C01", "C09"], "text": "Record actual loaded source/version and fresh-session behavior separately; source hashes never establish a host result."}, {"basis": "OUR_MAINTENANCE_RECOMMENDATION", "rule_ids": [], "text": "Channel UNKNOWN: select and document the intended distribution channel before choosing its next steps."}], "recorder_policy_limits": {"context_bytes": 65536, "depth": 32, "entries": 4096, "file_bytes": 8388608, "files": 1024, "manifest_parse_bytes": 1048576, "path_chars": 1024, "tree_bytes": 67108864}, "schema_version": "1", "scope": "Explicit reader-selected runtime-source regular-file snapshot bytes, root portable identity/version, and reader declarations only.", "source_rules": [{"checked_utc": "2026-10-02", "id": "C01", "scope": "source, cache, restart, portable/overlay boundaries", "url": "https://developers.openai.com/plugins/build/plugins"}, {"checked_utc": "2026-10-02", "id": "C02", "scope": "optional version; root identity reading is not schema validation", "url": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json"}, {"checked_utc": "2026-10-02", "id": "C03", "scope": "public bundled update: complete versioned ZIP, checks, review, Publish", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C04", "scope": "MCP scan/held/live tool definition boundary", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C05", "scope": "live deployed implementation is not frozen by held metadata", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C06", "scope": "MCP addition to an existing skills-only listing currently unsupported", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C07", "scope": "existing MCP URL update unsupported; contact support", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C08", "scope": "path/new version versus origin/new plugin guidance conflicts with C07", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C09", "scope": "supported install/new-session procedure; no version inspection method established here", "url": "https://learn.chatgpt.com/docs/plugins"}, {"checked_utc": "2026-10-02", "id": "C10", "scope": "portable version optional; explicit semantic version for public submission/updates", "url": "https://developers.openai.com/plugins/deploy/submission"}], "states": {"live_backend_deployment": {"actual_test_status": "NOT RUN", "authorized_behavior_evidence": "UNKNOWN", "declarations": {"declared_deployment_id": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}}, "observed_contract": "UNKNOWN", "observed_deployment_id": "UNKNOWN", "observed_endpoint": "UNKNOWN"}, "loaded_host_session": {"actual_test_status": "NOT RUN", "declarations": {"declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN"}, "observed_fingerprint": "UNKNOWN", "observed_source": "UNKNOWN", "observed_version": "UNKNOWN", "session_evidence": "UNKNOWN"}, "reviewed_published_version": {"actual_test_status": "NOT RUN", "declarations": {"declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN"}, "observed_directory_fingerprint": "UNKNOWN", "observed_published_version": "UNKNOWN", "observed_review_status": "UNKNOWN", "publication_evidence": "UNKNOWN"}, "source_bundle": {"after": {"files": [{"bytes": 112, "group": "manifest", "path": "plugin.json", "sha256": "1e9aa128292e05c1067bcaebc915e2c7c82a30944a75321c1c13b92ebc506006"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "5851244641bd164042d3b70de45174dca5340cbc67b70df82ba794a0ff029ce1", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/wrong-field-types", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": ["UNKNOWN_NAME", "UNKNOWN_VERSION"], "name": "UNKNOWN", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "UNKNOWN"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2715}, "basis": "OBSERVED_OFFLINE", "before": {"files": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "4ca3803a3d39acdb719745d4cadf56021c49ed5120daf21a4a5f63140d170a46", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2878}, "classification": {"bytes_changed": true, "label": "CHANGED_BYTES_VERSION_UNKNOWN", "manifest_identity_relation": "UNKNOWN", "manifest_version_relation": "UNKNOWN", "propagation": "UNKNOWN", "semantic_impact": "UNKNOWN", "semantic_version_choice": "NOT PERFORMED", "version_only_basis": "NOT ESTABLISHED"}, "diff": {"added": [], "changed": [{"after": {"bytes": 112, "group": "manifest", "path": "plugin.json", "sha256": "1e9aa128292e05c1067bcaebc915e2c7c82a30944a75321c1c13b92ebc506006"}, "before": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "group": "manifest", "path": "plugin.json"}], "removed": [], "unchanged": [{"after": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "before": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "group": "skill", "path": "skills/meeting-evidence/SKILL.md"}]}, "loaded_or_published_fingerprint": "UNKNOWN"}}, "tool": "release-change-record-v1", "unknowns": ["selected snapshots' completeness as intended runtime", "semantic correctness and impact", "effective components/settings", "actual installed/loaded version and current-session refresh", "actual public version/review/approval", "actual deployed code/tools/auth/permissions", "adopter access, propagation, review timing and rollback capability"]}, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/wrong-field-types", "--out", "/tmp/release-change-selftest-74u1959a/S21_wrong_root_field_types"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/wrong-field-types --out /tmp/release-change-selftest-74u1959a/S21_wrong_root_field_types", "expected_error_code": null, "expected_exit": 0, "expected_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 112, "group": "manifest", "path": "plugin.json", "sha256": "1e9aa128292e05c1067bcaebc915e2c7c82a30944a75321c1c13b92ebc506006"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "CHANGED_BYTES_VERSION_UNKNOWN", "context_facts": {"channel": "UNKNOWN", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": "UNKNOWN"}, "diff": {"added": [], "changed": ["plugin.json"], "removed": [], "unchanged": ["skills/meeting-evidence/SKILL.md"]}, "manifest_issues_after": ["UNKNOWN_NAME", "UNKNOWN_VERSION"], "next_evidence_rule_ids": [["C01", "C09"], []], "version_relation": "UNKNOWN"}, "id": "S21_wrong_root_field_types", "passed": true, "stderr": "", "stdout": "{\"classification\": \"CHANGED_BYTES_VERSION_UNKNOWN\", \"output\": \"/tmp/release-change-selftest-74u1959a/S21_wrong_root_field_types\", \"status\": \"RECORDED_OFFLINE_NOT_VALIDATED\"}\n"} ## R01_same_inputs_second_output $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/instruction-same-version --out /tmp/release-change-selftest-74u1959a/repeat --context /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/public.json expected exit=0 code=None actual exit=0 stdout: {"classification": "CHANGED_BYTES_SAME_VERSION", "output": "/tmp/release-change-selftest-74u1959a/repeat", "status": "RECORDED_OFFLINE_NOT_VALIDATED"} stderr: exact checks=PASS {"actual_exit": 0, "actual_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2677, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "8d4d784770db337fd827c932a3974ceeb8a8255357027fe78fce34f0f1d1db65"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "CHANGED_BYTES_SAME_VERSION", "context_facts": {"channel": "public_directory", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "diff": {"added": [], "changed": ["skills/meeting-evidence/SKILL.md"], "removed": [], "unchanged": ["plugin.json"]}, "manifest_issues_after": [], "next_evidence_rule_ids": [["C01", "C09"], ["C03", "C10"]], "version_relation": "same"}, "actual_record": {"context": {"basis": "READER_DECLARATION_NOT_OBSERVATION", "facts": {"channel": "public_directory", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/public.json", "sha256": "ad2091696b27383ac60464913fae91e29042cedd907285dec493e30374073820"}, "evidence_kind": "OFFLINE_ENGINEERING_ONLY", "exclusions": ["whole-repository/runtime selection inference", "archive extraction or creation", "complete plugin/schema validation", "effective overlay/extension metadata", "component/service detection", "semantic diff or automatic version choice", "secret/safety scanning", "host installation/update/invocation", "portal/review/approval/publication", "network/deployment/authorization"], "next_evidence": [{"basis": "OUR_MAINTENANCE_RECOMMENDATION", "rule_ids": ["C01", "C09"], "text": "Record actual loaded source/version and fresh-session behavior separately; source hashes never establish a host result."}, {"basis": "SOURCE_LINKED_RECOMMENDATION_CONDITIONED_ON_DECLARED_CHANNEL", "rule_ids": ["C03", "C10"], "text": "For intended bundled public updates, use the documented complete versioned ZIP/checks/review/Publish path. Choose the version yourself; this record is not an eligibility or submission-readiness verdict."}], "recorder_policy_limits": {"context_bytes": 65536, "depth": 32, "entries": 4096, "file_bytes": 8388608, "files": 1024, "manifest_parse_bytes": 1048576, "path_chars": 1024, "tree_bytes": 67108864}, "schema_version": "1", "scope": "Explicit reader-selected runtime-source regular-file snapshot bytes, root portable identity/version, and reader declarations only.", "source_rules": [{"checked_utc": "2026-10-02", "id": "C01", "scope": "source, cache, restart, portable/overlay boundaries", "url": "https://developers.openai.com/plugins/build/plugins"}, {"checked_utc": "2026-10-02", "id": "C02", "scope": "optional version; root identity reading is not schema validation", "url": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json"}, {"checked_utc": "2026-10-02", "id": "C03", "scope": "public bundled update: complete versioned ZIP, checks, review, Publish", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C04", "scope": "MCP scan/held/live tool definition boundary", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C05", "scope": "live deployed implementation is not frozen by held metadata", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C06", "scope": "MCP addition to an existing skills-only listing currently unsupported", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C07", "scope": "existing MCP URL update unsupported; contact support", "url": "https://developers.openai.com/plugins/deploy/submission"}, {"checked_utc": "2026-10-02", "id": "C08", "scope": "path/new version versus origin/new plugin guidance conflicts with C07", "url": "https://developers.openai.com/plugins/deploy/app-review"}, {"checked_utc": "2026-10-02", "id": "C09", "scope": "supported install/new-session procedure; no version inspection method established here", "url": "https://learn.chatgpt.com/docs/plugins"}, {"checked_utc": "2026-10-02", "id": "C10", "scope": "portable version optional; explicit semantic version for public submission/updates", "url": "https://developers.openai.com/plugins/deploy/submission"}], "states": {"live_backend_deployment": {"actual_test_status": "NOT RUN", "authorized_behavior_evidence": "UNKNOWN", "declarations": {"declared_deployment_id": "UNKNOWN", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}}, "observed_contract": "UNKNOWN", "observed_deployment_id": "UNKNOWN", "observed_endpoint": "UNKNOWN"}, "loaded_host_session": {"actual_test_status": "NOT RUN", "declarations": {"declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN"}, "observed_fingerprint": "UNKNOWN", "observed_source": "UNKNOWN", "observed_version": "UNKNOWN", "session_evidence": "UNKNOWN"}, "reviewed_published_version": {"actual_test_status": "NOT RUN", "declarations": {"declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN"}, "observed_directory_fingerprint": "UNKNOWN", "observed_published_version": "UNKNOWN", "observed_review_status": "UNKNOWN", "publication_evidence": "UNKNOWN"}, "source_bundle": {"after": {"files": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2677, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "8d4d784770db337fd827c932a3974ceeb8a8255357027fe78fce34f0f1d1db65"}], "fingerprint": "1980998fd12312c3b735ff66ff1ce2c0de29f8c44ef0e1f7aaa695f166c0f3f9", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/instruction-same-version", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2952}, "basis": "OBSERVED_OFFLINE", "before": {"files": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "fingerprint": "4ca3803a3d39acdb719745d4cadf56021c49ed5120daf21a4a5f63140d170a46", "fingerprint_method": "sha256(canonical ASCII JSON array of path/bytes/sha256; sorted paths; no mtimes or file modes)", "input_path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "manifest": {"components": "UNKNOWN", "effective_openai_metadata": "unsupported-for-manifest-interpretation", "issues": [], "name": "meeting-evidence", "profile": "portable-root-plugin-json-identity-reading-v1", "schema_validation": "NOT RUN", "status": "portable-root-fields-read-not-validated", "version": "0.1.0"}, "status": "OBSERVED_OFFLINE", "total_bytes": 2878}, "classification": {"bytes_changed": true, "label": "CHANGED_BYTES_SAME_VERSION", "manifest_identity_relation": "same", "manifest_version_relation": "same", "propagation": "UNKNOWN", "semantic_impact": "UNKNOWN", "semantic_version_choice": "NOT PERFORMED", "version_only_basis": "NOT ESTABLISHED"}, "diff": {"added": [], "changed": [{"after": {"bytes": 2677, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "8d4d784770db337fd827c932a3974ceeb8a8255357027fe78fce34f0f1d1db65"}, "before": {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}, "group": "skill", "path": "skills/meeting-evidence/SKILL.md"}], "removed": [], "unchanged": [{"after": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "before": {"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, "group": "manifest", "path": "plugin.json"}]}, "loaded_or_published_fingerprint": "UNKNOWN"}}, "tool": "release-change-record-v1", "unknowns": ["selected snapshots' completeness as intended runtime", "semantic correctness and impact", "effective components/settings", "actual installed/loaded version and current-session refresh", "actual public version/review/approval", "actual deployed code/tools/auth/permissions", "adopter access, propagation, review timing and rollback capability"]}, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/instruction-same-version", "--out", "/tmp/release-change-selftest-74u1959a/repeat", "--context", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/public.json"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/instruction-same-version --out /tmp/release-change-selftest-74u1959a/repeat --context /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/contexts/public.json", "expected_error_code": null, "expected_exit": 0, "expected_observations": {"actual_fields": "UNKNOWN", "actual_test_status": "NOT RUN", "after_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2677, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "8d4d784770db337fd827c932a3974ceeb8a8255357027fe78fce34f0f1d1db65"}], "before_inventory": [{"bytes": 275, "group": "manifest", "path": "plugin.json", "sha256": "25dc68a00061cb228dcf3ac5e2351715e2b7d70123a9de6ce04d3291dc29ace0"}, {"bytes": 2603, "group": "skill", "path": "skills/meeting-evidence/SKILL.md", "sha256": "abd57a1e767a3c42b6c49566286f553e92a7f6e129e342daaf037ca4982217aa"}], "classification": "CHANGED_BYTES_SAME_VERSION", "context_facts": {"channel": "public_directory", "declared_deployment_id": "UNKNOWN", "declared_loaded_source": "UNKNOWN", "declared_loaded_version": "UNKNOWN", "declared_published_version": "UNKNOWN", "declared_review_status": "UNKNOWN", "existing_public_listing_components": "UNKNOWN", "proposed_mcp_addition": "UNKNOWN", "provenance_note": "SIMULATION ONLY: no account, listing, deployment or service exists for this fixture.", "service": {"endpoint_after": "UNKNOWN", "endpoint_before": "UNKNOWN", "endpoint_change": "UNKNOWN", "implementation_change": "UNKNOWN", "permission_boundary_change": "UNKNOWN", "tool_addition": "UNKNOWN", "tool_contract_change": "UNKNOWN", "tool_removal": "UNKNOWN"}, "simulation_only": true}, "diff": {"added": [], "changed": ["skills/meeting-evidence/SKILL.md"], "removed": [], "unchanged": ["plugin.json"]}, "manifest_issues_after": [], "next_evidence_rule_ids": [["C01", "C09"], ["C03", "C10"]], "version_relation": "same"}, "id": "R01_same_inputs_second_output", "passed": true, "stderr": "", "stdout": "{\"classification\": \"CHANGED_BYTES_SAME_VERSION\", \"output\": \"/tmp/release-change-selftest-74u1959a/repeat\", \"status\": \"RECORDED_OFFLINE_NOT_VALIDATED\"}\n"} ## E01_context_malformed $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E01_context_malformed --context /tmp/release-change-selftest-74u1959a/bad/malformed.json expected exit=2 code=CONTEXT_JSON actual exit=2 stdout: {"code": "CONTEXT_JSON", "message": "Context is not readable strict UTF-8 JSON.", "path": "/tmp/release-change-selftest-74u1959a/bad/malformed.json", "status": "RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION"} stderr: exact checks=PASS {"actual_error_code": "CONTEXT_JSON", "actual_exit": 2, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/E01_context_malformed", "--context", "/tmp/release-change-selftest-74u1959a/bad/malformed.json"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E01_context_malformed --context /tmp/release-change-selftest-74u1959a/bad/malformed.json", "expected_error_code": "CONTEXT_JSON", "expected_exit": 2, "id": "E01_context_malformed", "passed": true, "stderr": "", "stdout": "{\"code\": \"CONTEXT_JSON\", \"message\": \"Context is not readable strict UTF-8 JSON.\", \"path\": \"/tmp/release-change-selftest-74u1959a/bad/malformed.json\", \"status\": \"RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION\"}\n"} ## E02_context_null $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E02_context_null --context /tmp/release-change-selftest-74u1959a/bad/null.json expected exit=2 code=CONTEXT_SHAPE actual exit=2 stdout: {"code": "CONTEXT_SHAPE", "message": "Context must be an object with schema_version = '1'.", "path": "/tmp/release-change-selftest-74u1959a/bad/null.json", "status": "RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION"} stderr: exact checks=PASS {"actual_error_code": "CONTEXT_SHAPE", "actual_exit": 2, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/E02_context_null", "--context", "/tmp/release-change-selftest-74u1959a/bad/null.json"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E02_context_null --context /tmp/release-change-selftest-74u1959a/bad/null.json", "expected_error_code": "CONTEXT_SHAPE", "expected_exit": 2, "id": "E02_context_null", "passed": true, "stderr": "", "stdout": "{\"code\": \"CONTEXT_SHAPE\", \"message\": \"Context must be an object with schema_version = '1'.\", \"path\": \"/tmp/release-change-selftest-74u1959a/bad/null.json\", \"status\": \"RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION\"}\n"} ## E03_context_bad_channel $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E03_context_bad_channel --context /tmp/release-change-selftest-74u1959a/bad/channel.json expected exit=2 code=CONTEXT_SHAPE actual exit=2 stdout: {"code": "CONTEXT_SHAPE", "message": "Wrong declaration type/value: channel", "path": "/tmp/release-change-selftest-74u1959a/bad/channel.json", "status": "RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION"} stderr: exact checks=PASS {"actual_error_code": "CONTEXT_SHAPE", "actual_exit": 2, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/E03_context_bad_channel", "--context", "/tmp/release-change-selftest-74u1959a/bad/channel.json"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E03_context_bad_channel --context /tmp/release-change-selftest-74u1959a/bad/channel.json", "expected_error_code": "CONTEXT_SHAPE", "expected_exit": 2, "id": "E03_context_bad_channel", "passed": true, "stderr": "", "stdout": "{\"code\": \"CONTEXT_SHAPE\", \"message\": \"Wrong declaration type/value: channel\", \"path\": \"/tmp/release-change-selftest-74u1959a/bad/channel.json\", \"status\": \"RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION\"}\n"} ## E04_context_fake_actual $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E04_context_fake_actual --context /tmp/release-change-selftest-74u1959a/bad/actual.json expected exit=2 code=CONTEXT_SHAPE actual exit=2 stdout: {"code": "CONTEXT_SHAPE", "message": "Unknown context fields: actual_test_status", "path": "/tmp/release-change-selftest-74u1959a/bad/actual.json", "status": "RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION"} stderr: exact checks=PASS {"actual_error_code": "CONTEXT_SHAPE", "actual_exit": 2, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/E04_context_fake_actual", "--context", "/tmp/release-change-selftest-74u1959a/bad/actual.json"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E04_context_fake_actual --context /tmp/release-change-selftest-74u1959a/bad/actual.json", "expected_error_code": "CONTEXT_SHAPE", "expected_exit": 2, "id": "E04_context_fake_actual", "passed": true, "stderr": "", "stdout": "{\"code\": \"CONTEXT_SHAPE\", \"message\": \"Unknown context fields: actual_test_status\", \"path\": \"/tmp/release-change-selftest-74u1959a/bad/actual.json\", \"status\": \"RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION\"}\n"} ## E05_missing_input $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /tmp/release-change-selftest-74u1959a/bad/missing --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E05_missing_input expected exit=2 code=INPUT_MISSING actual exit=2 stdout: {"code": "INPUT_MISSING", "message": "Path component does not exist.", "path": "/tmp/release-change-selftest-74u1959a/bad/missing", "status": "RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION"} stderr: exact checks=PASS {"actual_error_code": "INPUT_MISSING", "actual_exit": 2, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/tmp/release-change-selftest-74u1959a/bad/missing", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/E05_missing_input"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /tmp/release-change-selftest-74u1959a/bad/missing --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E05_missing_input", "expected_error_code": "INPUT_MISSING", "expected_exit": 2, "id": "E05_missing_input", "passed": true, "stderr": "", "stdout": "{\"code\": \"INPUT_MISSING\", \"message\": \"Path component does not exist.\", \"path\": \"/tmp/release-change-selftest-74u1959a/bad/missing\", \"status\": \"RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION\"}\n"} ## E06_file_as_snapshot $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline/plugin.json --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E06_file_as_snapshot expected exit=2 code=INPUT_NOT_DIRECTORY actual exit=2 stdout: {"code": "INPUT_NOT_DIRECTORY", "message": "Snapshot must be an explicit directory.", "path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline/plugin.json", "status": "RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION"} stderr: exact checks=PASS {"actual_error_code": "INPUT_NOT_DIRECTORY", "actual_exit": 2, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline/plugin.json", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/E06_file_as_snapshot"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline/plugin.json --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E06_file_as_snapshot", "expected_error_code": "INPUT_NOT_DIRECTORY", "expected_exit": 2, "id": "E06_file_as_snapshot", "passed": true, "stderr": "", "stdout": "{\"code\": \"INPUT_NOT_DIRECTORY\", \"message\": \"Snapshot must be an explicit directory.\", \"path\": \"/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline/plugin.json\", \"status\": \"RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION\"}\n"} ## E07_file_symlink $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /tmp/release-change-selftest-74u1959a/bad/E07_file_symlink --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E07_file_symlink expected exit=2 code=INPUT_SYMLINK actual exit=2 stdout: {"code": "INPUT_SYMLINK", "message": "Snapshot symlinks are not followed.", "path": "link.txt", "status": "RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION"} stderr: exact checks=PASS {"actual_error_code": "INPUT_SYMLINK", "actual_exit": 2, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/tmp/release-change-selftest-74u1959a/bad/E07_file_symlink", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/E07_file_symlink"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /tmp/release-change-selftest-74u1959a/bad/E07_file_symlink --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E07_file_symlink", "expected_error_code": "INPUT_SYMLINK", "expected_exit": 2, "id": "E07_file_symlink", "passed": true, "stderr": "", "stdout": "{\"code\": \"INPUT_SYMLINK\", \"message\": \"Snapshot symlinks are not followed.\", \"path\": \"link.txt\", \"status\": \"RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION\"}\n"} ## E08_directory_symlink $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /tmp/release-change-selftest-74u1959a/bad/E08_directory_symlink --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E08_directory_symlink expected exit=2 code=INPUT_SYMLINK actual exit=2 stdout: {"code": "INPUT_SYMLINK", "message": "Snapshot symlinks are not followed.", "path": "link", "status": "RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION"} stderr: exact checks=PASS {"actual_error_code": "INPUT_SYMLINK", "actual_exit": 2, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/tmp/release-change-selftest-74u1959a/bad/E08_directory_symlink", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/E08_directory_symlink"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /tmp/release-change-selftest-74u1959a/bad/E08_directory_symlink --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E08_directory_symlink", "expected_error_code": "INPUT_SYMLINK", "expected_exit": 2, "id": "E08_directory_symlink", "passed": true, "stderr": "", "stdout": "{\"code\": \"INPUT_SYMLINK\", \"message\": \"Snapshot symlinks are not followed.\", \"path\": \"link\", \"status\": \"RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION\"}\n"} ## E09_dangling_input_symlink $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /tmp/release-change-selftest-74u1959a/bad/E09_dangling_input_symlink --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E09_dangling_input_symlink expected exit=2 code=INPUT_SYMLINK actual exit=2 stdout: {"code": "INPUT_SYMLINK", "message": "Snapshot symlinks are not followed.", "path": "link.txt", "status": "RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION"} stderr: exact checks=PASS {"actual_error_code": "INPUT_SYMLINK", "actual_exit": 2, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/tmp/release-change-selftest-74u1959a/bad/E09_dangling_input_symlink", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/E09_dangling_input_symlink"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /tmp/release-change-selftest-74u1959a/bad/E09_dangling_input_symlink --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E09_dangling_input_symlink", "expected_error_code": "INPUT_SYMLINK", "expected_exit": 2, "id": "E09_dangling_input_symlink", "passed": true, "stderr": "", "stdout": "{\"code\": \"INPUT_SYMLINK\", \"message\": \"Snapshot symlinks are not followed.\", \"path\": \"link.txt\", \"status\": \"RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION\"}\n"} ## E10_root_symlink $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /tmp/release-change-selftest-74u1959a/bad/rootlink --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E10_root_symlink expected exit=2 code=INPUT_SYMLINK actual exit=2 stdout: {"code": "INPUT_SYMLINK", "message": "Input/output path symlinks are not followed.", "path": "/tmp/release-change-selftest-74u1959a/bad/rootlink", "status": "RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION"} stderr: exact checks=PASS {"actual_error_code": "INPUT_SYMLINK", "actual_exit": 2, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/tmp/release-change-selftest-74u1959a/bad/rootlink", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/E10_root_symlink"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /tmp/release-change-selftest-74u1959a/bad/rootlink --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E10_root_symlink", "expected_error_code": "INPUT_SYMLINK", "expected_exit": 2, "id": "E10_root_symlink", "passed": true, "stderr": "", "stdout": "{\"code\": \"INPUT_SYMLINK\", \"message\": \"Input/output path symlinks are not followed.\", \"path\": \"/tmp/release-change-selftest-74u1959a/bad/rootlink\", \"status\": \"RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION\"}\n"} ## E11_ancestor_symlink $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /tmp/release-change-selftest-74u1959a/bad/parentlink/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E11_ancestor_symlink expected exit=2 code=INPUT_SYMLINK actual exit=2 stdout: {"code": "INPUT_SYMLINK", "message": "Input/output path symlinks are not followed.", "path": "/tmp/release-change-selftest-74u1959a/bad/parentlink", "status": "RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION"} stderr: exact checks=PASS {"actual_error_code": "INPUT_SYMLINK", "actual_exit": 2, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/tmp/release-change-selftest-74u1959a/bad/parentlink/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/E11_ancestor_symlink"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /tmp/release-change-selftest-74u1959a/bad/parentlink/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E11_ancestor_symlink", "expected_error_code": "INPUT_SYMLINK", "expected_exit": 2, "id": "E11_ancestor_symlink", "passed": true, "stderr": "", "stdout": "{\"code\": \"INPUT_SYMLINK\", \"message\": \"Input/output path symlinks are not followed.\", \"path\": \"/tmp/release-change-selftest-74u1959a/bad/parentlink\", \"status\": \"RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION\"}\n"} ## E12_context_symlink $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E12_context_symlink --context /tmp/release-change-selftest-74u1959a/bad/contextlink expected exit=2 code=INPUT_SYMLINK actual exit=2 stdout: {"code": "INPUT_SYMLINK", "message": "Input/output path symlinks are not followed.", "path": "/tmp/release-change-selftest-74u1959a/bad/contextlink", "status": "RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION"} stderr: exact checks=PASS {"actual_error_code": "INPUT_SYMLINK", "actual_exit": 2, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/E12_context_symlink", "--context", "/tmp/release-change-selftest-74u1959a/bad/contextlink"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E12_context_symlink --context /tmp/release-change-selftest-74u1959a/bad/contextlink", "expected_error_code": "INPUT_SYMLINK", "expected_exit": 2, "id": "E12_context_symlink", "passed": true, "stderr": "", "stdout": "{\"code\": \"INPUT_SYMLINK\", \"message\": \"Input/output path symlinks are not followed.\", \"path\": \"/tmp/release-change-selftest-74u1959a/bad/contextlink\", \"status\": \"RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION\"}\n"} ## E13_output_inside_input $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline/MUST-NOT-WRITE expected exit=2 code=OUTPUT_INSIDE_INPUT actual exit=2 stdout: {"code": "OUTPUT_INSIDE_INPUT", "message": "Output must be outside every input tree/file.", "path": "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline/MUST-NOT-WRITE", "status": "RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION"} stderr: exact checks=PASS {"actual_error_code": "OUTPUT_INSIDE_INPUT", "actual_exit": 2, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline/MUST-NOT-WRITE"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline/MUST-NOT-WRITE", "expected_error_code": "OUTPUT_INSIDE_INPUT", "expected_exit": 2, "id": "E13_output_inside_input", "passed": true, "stderr": "", "stdout": "{\"code\": \"OUTPUT_INSIDE_INPUT\", \"message\": \"Output must be outside every input tree/file.\", \"path\": \"/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline/MUST-NOT-WRITE\", \"status\": \"RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION\"}\n"} ## E14_existing_record $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/S01_identical expected exit=2 code=OUTPUT_EXISTS actual exit=2 stdout: {"code": "OUTPUT_EXISTS", "message": "Never replace an existing record, directory, or dangling symlink.", "path": "/tmp/release-change-selftest-74u1959a/S01_identical", "status": "RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION"} stderr: exact checks=PASS {"actual_error_code": "OUTPUT_EXISTS", "actual_exit": 2, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/S01_identical"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/S01_identical", "expected_error_code": "OUTPUT_EXISTS", "expected_exit": 2, "id": "E14_existing_record", "passed": true, "stderr": "", "stdout": "{\"code\": \"OUTPUT_EXISTS\", \"message\": \"Never replace an existing record, directory, or dangling symlink.\", \"path\": \"/tmp/release-change-selftest-74u1959a/S01_identical\", \"status\": \"RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION\"}\n"} ## E15_dangling_output_symlink $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/bad/outlink expected exit=2 code=OUTPUT_EXISTS actual exit=2 stdout: {"code": "OUTPUT_EXISTS", "message": "Never replace an existing record, directory, or dangling symlink.", "path": "/tmp/release-change-selftest-74u1959a/bad/outlink", "status": "RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION"} stderr: exact checks=PASS {"actual_error_code": "OUTPUT_EXISTS", "actual_exit": 2, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/bad/outlink"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/bad/outlink", "expected_error_code": "OUTPUT_EXISTS", "expected_exit": 2, "id": "E15_dangling_output_symlink", "passed": true, "stderr": "", "stdout": "{\"code\": \"OUTPUT_EXISTS\", \"message\": \"Never replace an existing record, directory, or dangling symlink.\", \"path\": \"/tmp/release-change-selftest-74u1959a/bad/outlink\", \"status\": \"RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION\"}\n"} ## E16_output_parent_symlink $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/bad/parentlink/new-output expected exit=2 code=INPUT_SYMLINK actual exit=2 stdout: {"code": "INPUT_SYMLINK", "message": "Input/output path symlinks are not followed.", "path": "/tmp/release-change-selftest-74u1959a/bad/parentlink", "status": "RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION"} stderr: exact checks=PASS {"actual_error_code": "INPUT_SYMLINK", "actual_exit": 2, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/bad/parentlink/new-output"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/bad/parentlink/new-output", "expected_error_code": "INPUT_SYMLINK", "expected_exit": 2, "id": "E16_output_parent_symlink", "passed": true, "stderr": "", "stdout": "{\"code\": \"INPUT_SYMLINK\", \"message\": \"Input/output path symlinks are not followed.\", \"path\": \"/tmp/release-change-selftest-74u1959a/bad/parentlink\", \"status\": \"RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION\"}\n"} ## E17_existing_output_file $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/bad/null.json expected exit=2 code=OUTPUT_EXISTS actual exit=2 stdout: {"code": "OUTPUT_EXISTS", "message": "Never replace an existing record, directory, or dangling symlink.", "path": "/tmp/release-change-selftest-74u1959a/bad/null.json", "status": "RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION"} stderr: exact checks=PASS {"actual_error_code": "OUTPUT_EXISTS", "actual_exit": 2, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/bad/null.json"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/bad/null.json", "expected_error_code": "OUTPUT_EXISTS", "expected_exit": 2, "id": "E17_existing_output_file", "passed": true, "stderr": "", "stdout": "{\"code\": \"OUTPUT_EXISTS\", \"message\": \"Never replace an existing record, directory, or dangling symlink.\", \"path\": \"/tmp/release-change-selftest-74u1959a/bad/null.json\", \"status\": \"RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION\"}\n"} ## E18_parent_traversal $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /tmp/release-change-selftest-74u1959a/bad/../bad --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E18_parent_traversal expected exit=2 code=INPUT_PATH_BOUNDARY actual exit=2 stdout: {"code": "INPUT_PATH_BOUNDARY", "message": "Parent traversal is outside recorder path policy.", "path": "/tmp/release-change-selftest-74u1959a/bad/../bad", "status": "RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION"} stderr: exact checks=PASS {"actual_error_code": "INPUT_PATH_BOUNDARY", "actual_exit": 2, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/tmp/release-change-selftest-74u1959a/bad/../bad", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/E18_parent_traversal"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /tmp/release-change-selftest-74u1959a/bad/../bad --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E18_parent_traversal", "expected_error_code": "INPUT_PATH_BOUNDARY", "expected_exit": 2, "id": "E18_parent_traversal", "passed": true, "stderr": "", "stdout": "{\"code\": \"INPUT_PATH_BOUNDARY\", \"message\": \"Parent traversal is outside recorder path policy.\", \"path\": \"/tmp/release-change-selftest-74u1959a/bad/../bad\", \"status\": \"RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION\"}\n"} ## E19_special_file $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /tmp/release-change-selftest-74u1959a/bad/fifo-tree --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E19_special_file expected exit=2 code=INPUT_NOT_REGULAR actual exit=2 stdout: {"code": "INPUT_NOT_REGULAR", "message": "Special files refused; no device/FIFO reads.", "path": "pipe", "status": "RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION"} stderr: exact checks=PASS {"actual_error_code": "INPUT_NOT_REGULAR", "actual_exit": 2, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/tmp/release-change-selftest-74u1959a/bad/fifo-tree", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/E19_special_file"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /tmp/release-change-selftest-74u1959a/bad/fifo-tree --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E19_special_file", "expected_error_code": "INPUT_NOT_REGULAR", "expected_exit": 2, "id": "E19_special_file", "passed": true, "stderr": "", "stdout": "{\"code\": \"INPUT_NOT_REGULAR\", \"message\": \"Special files refused; no device/FIFO reads.\", \"path\": \"pipe\", \"status\": \"RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION\"}\n"} ## E20_file_limit $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /tmp/release-change-selftest-74u1959a/bad/large-tree --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E20_file_limit expected exit=2 code=INPUT_RESOURCE_LIMIT actual exit=2 stdout: {"code": "INPUT_RESOURCE_LIMIT", "message": "File byte limit exceeded (recorder policy).", "path": "too-large", "status": "RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION"} stderr: exact checks=PASS {"actual_error_code": "INPUT_RESOURCE_LIMIT", "actual_exit": 2, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/tmp/release-change-selftest-74u1959a/bad/large-tree", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/E20_file_limit"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /tmp/release-change-selftest-74u1959a/bad/large-tree --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E20_file_limit", "expected_error_code": "INPUT_RESOURCE_LIMIT", "expected_exit": 2, "id": "E20_file_limit", "passed": true, "stderr": "", "stdout": "{\"code\": \"INPUT_RESOURCE_LIMIT\", \"message\": \"File byte limit exceeded (recorder policy).\", \"path\": \"too-large\", \"status\": \"RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION\"}\n"} ## E21_duplicate_context_keys $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E21_duplicate_context_keys --context /tmp/release-change-selftest-74u1959a/bad/duplicate.json expected exit=2 code=CONTEXT_JSON actual exit=2 stdout: {"code": "CONTEXT_JSON", "message": "Context is not readable strict UTF-8 JSON.", "path": "/tmp/release-change-selftest-74u1959a/bad/duplicate.json", "status": "RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION"} stderr: exact checks=PASS {"actual_error_code": "CONTEXT_JSON", "actual_exit": 2, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/E21_duplicate_context_keys", "--context", "/tmp/release-change-selftest-74u1959a/bad/duplicate.json"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E21_duplicate_context_keys --context /tmp/release-change-selftest-74u1959a/bad/duplicate.json", "expected_error_code": "CONTEXT_JSON", "expected_exit": 2, "id": "E21_duplicate_context_keys", "passed": true, "stderr": "", "stdout": "{\"code\": \"CONTEXT_JSON\", \"message\": \"Context is not readable strict UTF-8 JSON.\", \"path\": \"/tmp/release-change-selftest-74u1959a/bad/duplicate.json\", \"status\": \"RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION\"}\n"} ## E22_service_shape $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E22_service_shape --context /tmp/release-change-selftest-74u1959a/bad/service.json expected exit=2 code=CONTEXT_SHAPE actual exit=2 stdout: {"code": "CONTEXT_SHAPE", "message": "Wrong service declaration type/value: implementation_change", "path": "/tmp/release-change-selftest-74u1959a/bad/service.json", "status": "RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION"} stderr: exact checks=PASS {"actual_error_code": "CONTEXT_SHAPE", "actual_exit": 2, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/E22_service_shape", "--context", "/tmp/release-change-selftest-74u1959a/bad/service.json"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E22_service_shape --context /tmp/release-change-selftest-74u1959a/bad/service.json", "expected_error_code": "CONTEXT_SHAPE", "expected_exit": 2, "id": "E22_service_shape", "passed": true, "stderr": "", "stdout": "{\"code\": \"CONTEXT_SHAPE\", \"message\": \"Wrong service declaration type/value: implementation_change\", \"path\": \"/tmp/release-change-selftest-74u1959a/bad/service.json\", \"status\": \"RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION\"}\n"} ## E23_depth_limit $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /tmp/release-change-selftest-74u1959a/bad/deep-tree --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E23_depth_limit expected exit=2 code=INPUT_RESOURCE_LIMIT actual exit=2 stdout: {"code": "INPUT_RESOURCE_LIMIT", "message": "Directory depth limit exceeded.", "path": "d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/", "status": "RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION"} stderr: exact checks=PASS {"actual_error_code": "INPUT_RESOURCE_LIMIT", "actual_exit": 2, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/tmp/release-change-selftest-74u1959a/bad/deep-tree", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/E23_depth_limit"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /tmp/release-change-selftest-74u1959a/bad/deep-tree --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E23_depth_limit", "expected_error_code": "INPUT_RESOURCE_LIMIT", "expected_exit": 2, "id": "E23_depth_limit", "passed": true, "stderr": "", "stdout": "{\"code\": \"INPUT_RESOURCE_LIMIT\", \"message\": \"Directory depth limit exceeded.\", \"path\": \"d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/d/\", \"status\": \"RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION\"}\n"} ## E24_file_count_limit $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /tmp/release-change-selftest-74u1959a/bad/many-files --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E24_file_count_limit expected exit=2 code=INPUT_RESOURCE_LIMIT actual exit=2 stdout: {"code": "INPUT_RESOURCE_LIMIT", "message": "File count or tree byte limit exceeded.", "path": "f1024", "status": "RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION"} stderr: exact checks=PASS {"actual_error_code": "INPUT_RESOURCE_LIMIT", "actual_exit": 2, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/tmp/release-change-selftest-74u1959a/bad/many-files", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/E24_file_count_limit"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /tmp/release-change-selftest-74u1959a/bad/many-files --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E24_file_count_limit", "expected_error_code": "INPUT_RESOURCE_LIMIT", "expected_exit": 2, "id": "E24_file_count_limit", "passed": true, "stderr": "", "stdout": "{\"code\": \"INPUT_RESOURCE_LIMIT\", \"message\": \"File count or tree byte limit exceeded.\", \"path\": \"f1024\", \"status\": \"RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION\"}\n"} ## E25_context_limit $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E25_context_limit --context /tmp/release-change-selftest-74u1959a/bad/huge.json expected exit=2 code=INPUT_RESOURCE_LIMIT actual exit=2 stdout: {"code": "INPUT_RESOURCE_LIMIT", "message": "File byte limit exceeded (recorder policy).", "path": "/tmp/release-change-selftest-74u1959a/bad/huge.json", "status": "RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION"} stderr: exact checks=PASS {"actual_error_code": "INPUT_RESOURCE_LIMIT", "actual_exit": 2, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/E25_context_limit", "--context", "/tmp/release-change-selftest-74u1959a/bad/huge.json"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/E25_context_limit --context /tmp/release-change-selftest-74u1959a/bad/huge.json", "expected_error_code": "INPUT_RESOURCE_LIMIT", "expected_exit": 2, "id": "E25_context_limit", "passed": true, "stderr": "", "stdout": "{\"code\": \"INPUT_RESOURCE_LIMIT\", \"message\": \"File byte limit exceeded (recorder policy).\", \"path\": \"/tmp/release-change-selftest-74u1959a/bad/huge.json\", \"status\": \"RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION\"}\n"} ## E26_missing_output_parent $ /usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/bad/missing-parent/out expected exit=2 code=INPUT_MISSING actual exit=2 stdout: {"code": "INPUT_MISSING", "message": "Path component does not exist.", "path": "/tmp/release-change-selftest-74u1959a/bad/missing-parent", "status": "RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION"} stderr: exact checks=PASS {"actual_error_code": "INPUT_MISSING", "actual_exit": 2, "command": ["/usr/bin/python3", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py", "--before", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--after", "/srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline", "--out", "/tmp/release-change-selftest-74u1959a/bad/missing-parent/out"], "command_shell": "/usr/bin/python3 /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/record.py --before /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --after /srv/shaduf/workspaces/job-4d80646ec20c8644ce685fd5ee3a92a5f69c48d559de6977eb4c704a5d2fc531/workspace/runner/runs/5ba03869-db28-413a-8937-1156d3ac008b/change-record/fixtures/snapshots/baseline --out /tmp/release-change-selftest-74u1959a/bad/missing-parent/out", "expected_error_code": "INPUT_MISSING", "expected_exit": 2, "id": "E26_missing_output_parent", "passed": true, "stderr": "", "stdout": "{\"code\": \"INPUT_MISSING\", \"message\": \"Path component does not exist.\", \"path\": \"/tmp/release-change-selftest-74u1959a/bad/missing-parent\", \"status\": \"RECORDER_INPUT_ERROR_NOT_PLATFORM_VIOLATION\"}\n"} ## Invariants [{"actual": true, "expected": "record.json and record.md byte-identical for same explicit inputs/context", "id": "I01_deterministic_records", "passed": true}] ## Summary { "all_actual_host_portal_service_tests": "NOT RUN", "assertions": 49, "failed": 0, "invariants": [ { "actual": true, "expected": "record.json and record.md byte-identical for same explicit inputs/context", "id": "I01_deterministic_records", "passed": true } ], "negative_input_boundary_commands": 26, "passed": 49, "python": "3.11.2 (main, May 12 2026, 05:17:27) [GCC 12.2.0]", "repeat_commands": 1, "scenario_commands": 21, "scope": "RECORDER_ENGINEERING_ONLY; every snapshot revision/declaration is simulation-only, not a release/host/platform result", "subprocess_commands": 48 }