Reconcile completed evidence and block remaining external acceptance
Some checks failed
CI Smoke / host-smoke (push) Successful in 1s
CI Smoke / container-smoke (push) Has been cancelled

Assistant: codex
Assistant-Model: gpt-6-astra
Assistant-Session: 01a0e72b-466d-75c0-b550-2474a3be5f36
This commit is contained in:
tegwick 2026-09-28 10:43:27 +02:00
parent dda7aa6a46
commit 62192028d6
8 changed files with 454 additions and 16 deletions

View file

@ -0,0 +1,39 @@
{
"date": "2026-09-27",
"installation": {
"authority": "User approved configuration/code update, no paid call; ADMINISTER @ realm:host/railiance01; activation=APPROVED",
"old_source": "f7c12bedc8149bbf484065fb58411a9fac706798",
"new_source": "11cc0d5452c1520060031f50d77f20b80f6dcf85",
"owner_sha256": "e0d3fb84649fdca302eccd9415f3cc2beaee84bf07bd83205cdffbe93e5573bc",
"owner_mode": "0600",
"backup_sha256": "0e263f8299a42f63caf3595ff3eb7adc10354673f7b5125e0811def3bea7c274",
"spend_policy_sha256": "f31c585916de1ea8bd8e48c72421803dfde1015e6201704b9320f77d2c545d9c",
"ledger_rows": {
"reservations": 0,
"request_routes": 0,
"request_reservations": 0
},
"standing_worker_unchanged": true,
"paid_requests": 0,
"credentials_read": false
},
"checks": {
"source": "11cc0d5452c1520060031f50d77f20b80f6dcf85",
"owner_digest": "97ee637a8e022922bbf6264b57a55f68d05d4372dabd20e3cd74bed14db57cd2",
"path_and_pin_checks": "passed",
"substituted_child_denied": true,
"standalone_companion_denied": true,
"companion_catalog": "activity-core-metered-worker-token",
"companion_env": "ACTIVITY_CORE_WORKER_TOKEN",
"owner_check": {
"ok": true,
"check_only": true,
"dispatch_enabled": false,
"policy_sha256": "de3d01c9f4753994e8f73c111cde328a649e05dbb2563c37b5c12d86a488b2fa",
"runtime_sha256": "b6e4e8a429393d68831c996a65c0489664205df969ac9882e581983ec2da4969"
},
"credentials_read": false,
"queue_claimed": false,
"provider_request": false
}
}

View file

@ -0,0 +1,310 @@
{
"scope": "standalone installed packages and real CLI/bwrap; synthetic key/provider/empty queue",
"ok": true,
"runtime_sha256": "b6e4e8a429393d68831c996a65c0489664205df969ac9882e581983ec2da4969",
"proof_script_sha256": "984c062d3e4c36671065803b1e2706f81388f31b97a8a5af9d488a31e96ca5b2",
"claude_sha256": "19842705e989393fce936804df6d2ab034860e24b8f8880357981d87ffd83fac",
"imports": {
"rein_aharness": "lib/python3.12/site-packages/rein_aharness/__init__.py",
"llm_connect": "lib/python3.12/site-packages/llm_connect/__init__.py",
"glas_harness": "lib/python3.12/site-packages/glas_harness/__init__.py",
"sandboxer": "lib/python3.12/site-packages/sandboxer/__init__.py"
},
"packaged_definitions": true,
"positive": {
"native_threshold_usd": 1.0,
"probe": {
"runtime_readonly": true,
"python_prefix": "/opt/sandboxer/runtime",
"cli_version": "2.1.266 (Claude Code)",
"private_absent": true,
"source_absent": true,
"proxy_absent": true,
"interfaces": [
"lo"
]
},
"provider_requests": 2,
"cli_exit_code": 0,
"cli_is_error": false,
"cli_estimated_usd": 0.0006000000000000001,
"request_reservations": [
{
"receipt": "5bab05cf-b2ff-427f-b85f-407116d54c11",
"run_id": "fixture-run",
"policy_sha256": "c72c3a7c69e5224c63beb60f699bbc0c28d93d4b300604cae4208e761a1b4825",
"lease_id": "d341c917fb2e1aa82e245ff5e4e6eba62d979527682d90916970cda6dd8dbb7a",
"liability_microusd": 4640000,
"state": "charged",
"observed_microusd": 500,
"created_at": "2026-09-27T15:05:05.507407+00:00"
},
{
"receipt": "2a59879d-c6d0-496d-8f2c-0e45dddaa19f",
"run_id": "fixture-run",
"policy_sha256": "c72c3a7c69e5224c63beb60f699bbc0c28d93d4b300604cae4208e761a1b4825",
"lease_id": "d341c917fb2e1aa82e245ff5e4e6eba62d979527682d90916970cda6dd8dbb7a",
"liability_microusd": 4640000,
"state": "charged",
"observed_microusd": 500,
"created_at": "2026-09-27T15:05:05.686105+00:00"
}
],
"route_revoked": true,
"workspace_removed": true,
"bootstrap": {
"ok": true,
"claimed": false,
"empty": true,
"run_id": "",
"ops_state": null
},
"profile_ref": "harness.agent-dev-local@1.1.1",
"model": "claude-sonnet-5",
"request_shapes": [
{
"model": "claude-sonnet-5",
"max_tokens": 64000,
"thinking_type": "adaptive",
"manual_thinking_budget": false,
"sampling_parameters": {},
"betas": [
"claude-code-20250219",
"interleaved-thinking-2025-05-14",
"thinking-token-count-2026-05-13",
"context-management-2025-06-27",
"prompt-caching-scope-2026-01-05",
"mid-conversation-system-2026-04-07",
"effort-2025-11-24"
],
"tool_results": []
},
{
"model": "claude-sonnet-5",
"max_tokens": 64000,
"thinking_type": "adaptive",
"manual_thinking_budget": false,
"sampling_parameters": {},
"betas": [
"claude-code-20250219",
"interleaved-thinking-2025-05-14",
"thinking-token-count-2026-05-13",
"context-management-2025-06-27",
"prompt-caching-scope-2026-01-05",
"mid-conversation-system-2026-04-07",
"effort-2025-11-24"
],
"tool_results": [
{
"id": "fixture_git_status",
"is_error": false
}
]
}
],
"policy_context_tokens": 1000000,
"admission_requests": [
{
"model": "claude-sonnet-5",
"max_tokens": 64000,
"thinking_type": "disabled",
"top_level_fields": [
"max_tokens",
"messages",
"metadata",
"model",
"output_config",
"stream",
"system",
"thinking",
"tools"
],
"betas": [
"claude-code-20250219",
"interleaved-thinking-2025-05-14",
"thinking-token-count-2026-05-13",
"context-management-2025-06-27",
"prompt-caching-scope-2026-01-05",
"mid-conversation-system-2026-04-07",
"effort-2025-11-24",
"structured-outputs-2025-12-15"
],
"message_roles": [
"user"
],
"output_config_keys": [
"effort",
"format"
],
"output_effort": "high",
"refusal": "beta feature not admitted"
},
{
"model": "claude-sonnet-5",
"max_tokens": 64000,
"thinking_type": "adaptive",
"top_level_fields": [
"context_management",
"max_tokens",
"messages",
"metadata",
"model",
"output_config",
"stream",
"system",
"thinking",
"tools"
],
"betas": [
"claude-code-20250219",
"interleaved-thinking-2025-05-14",
"thinking-token-count-2026-05-13",
"context-management-2025-06-27",
"prompt-caching-scope-2026-01-05",
"mid-conversation-system-2026-04-07",
"effort-2025-11-24"
],
"message_roles": [
"user"
],
"output_config_keys": [
"effort"
],
"output_effort": "high"
},
{
"model": "claude-sonnet-5",
"max_tokens": 64000,
"thinking_type": "adaptive",
"top_level_fields": [
"context_management",
"max_tokens",
"messages",
"metadata",
"model",
"output_config",
"stream",
"system",
"thinking",
"tools"
],
"betas": [
"claude-code-20250219",
"interleaved-thinking-2025-05-14",
"thinking-token-count-2026-05-13",
"context-management-2025-06-27",
"prompt-caching-scope-2026-01-05",
"mid-conversation-system-2026-04-07",
"effort-2025-11-24"
],
"message_roles": [
"user",
"assistant",
"user"
],
"output_config_keys": [
"effort"
],
"output_effort": "high"
}
]
},
"refused": {
"native_threshold_usd": 0.01,
"probe": {
"runtime_readonly": true,
"python_prefix": "/opt/sandboxer/runtime",
"cli_version": "2.1.266 (Claude Code)",
"private_absent": true,
"source_absent": true,
"proxy_absent": true,
"interfaces": [
"lo"
]
},
"provider_requests": 0,
"cli_exit_code": 1,
"cli_is_error": true,
"cli_estimated_usd": 0,
"request_reservations": [],
"route_revoked": true,
"workspace_removed": true,
"bootstrap": null,
"profile_ref": "harness.agent-dev-local@1.1.1",
"model": "claude-sonnet-5",
"request_shapes": [],
"policy_context_tokens": 1000000,
"admission_requests": [
{
"model": "claude-sonnet-5",
"max_tokens": 64000,
"thinking_type": "disabled",
"top_level_fields": [
"max_tokens",
"messages",
"metadata",
"model",
"output_config",
"stream",
"system",
"thinking",
"tools"
],
"betas": [
"claude-code-20250219",
"interleaved-thinking-2025-05-14",
"thinking-token-count-2026-05-13",
"context-management-2025-06-27",
"prompt-caching-scope-2026-01-05",
"mid-conversation-system-2026-04-07",
"effort-2025-11-24",
"structured-outputs-2025-12-15"
],
"message_roles": [
"user"
],
"output_config_keys": [
"effort",
"format"
],
"output_effort": "high",
"refusal": "beta feature not admitted"
},
{
"model": "claude-sonnet-5",
"max_tokens": 64000,
"thinking_type": "adaptive",
"top_level_fields": [
"context_management",
"max_tokens",
"messages",
"metadata",
"model",
"output_config",
"stream",
"system",
"thinking",
"tools"
],
"betas": [
"claude-code-20250219",
"interleaved-thinking-2025-05-14",
"thinking-token-count-2026-05-13",
"context-management-2025-06-27",
"prompt-caching-scope-2026-01-05",
"mid-conversation-system-2026-04-07",
"effort-2025-11-24"
],
"message_roles": [
"user"
],
"output_config_keys": [
"effort"
],
"output_effort": "high"
}
]
},
"artifact_unchanged": true,
"live_factory_attempts": 0
}

View file

@ -1,9 +1,13 @@
# Metered owner activation candidate — 2026-09-27
Historical preparation packet. The [replacement-window final outcome](../glas-metered-tool-renewal-20260927/README.md#final-attended-outcome--2026-09-27) supersedes the pending installation and approval statements below. Native credential delivery/revocation completed; the owner attempt failed. Accounting reconciliation, corrected runtime admission and separate retry authority remain.
This is a reviewed source candidate, not native authorization. No provider key
was read, no approval created or consumed, and no paid/production queue attempt
was made. The live owner still has the old file; the source catalog now pins the
corrected file and will refuse that old file.
was made. After explicit user approval, the corrected owner and Secrets Engine commit
`11cc0d5452c1520060031f50d77f20b80f6dcf85` were installed on Railiance.
[Deployment checks](../../evidence/2026-09-27-metered-owner-deployment.json) pass;
spend limits and the standing worker are unchanged.
## Concrete correction
@ -18,7 +22,9 @@ reference. Only its Messages policy changes:
The optional CLI title-generation request remains refused: its structured-output
beta/format are not admitted. The primary request succeeds in the synthetic
proof. Mid-conversation system-role messages remain refused by the narrow
transport; this first-response proof does not establish a complete tool loop.
transport. The later [synthetic tool proof](../../evidence/2026-09-27-sonnet5-tool-session-proof.json)
establishes a successful two-request Bash tool/result exchange using a disposable
EUR 10 fixture envelope; it does not establish paid/native queue admission.
Do not broaden that transport as an implied consequence of allowing the header.
The input upper rate remains 4 micro-USD/token (covers one-hour cache creation),
@ -74,16 +80,16 @@ credential retrieval, host mutation, queue claim or approval consumption.
## Remaining native sequence
1. Approve the corrected host owner file and exact source release. Replace only
1. **Completed with user approval:** install corrected host owner and source release. Replace only
`/home/tegwick/hfact/owner-metered/owner.json`, preserving mode 0600. Require
the old SHA-256 `0e263f8299a42f63caf3595ff3eb7adc10354673f7b5125e0811def3bea7c274`,
unchanged spend-policy pin and empty parent/request/route tables before the
replacement. Refuse drift; do not reset or recreate the existing ledger.
2. Update the host Secrets Engine from `f7c12bed` to the reviewed source including
2. **Completed:** host Secrets Engine updated from `f7c12bed` to `11cc0d5`, including
the companion-only guards and corrected catalog pin. No worker restart or
profile promotion is required for this file-only correction. Validate the
exact recipient path/pins and run its backend-free `metered-once --check`.
3. Choose and accept the next proof's budget and scope. The existing EUR 5 cap
3. User selected preparation of the [€10 proposal](../../../../prj-helixforge-factory/operations/metered-tool-session-proposal.md). Accept its new native spend grant and exact validity before activation. The existing EUR 5 cap
permits one bounded model response but cannot establish a completed native
tool session. Do not queue the one-commit task expecting two calls to fit.
4. Use the current owner routing catalog and scoped attended requester lane
@ -100,7 +106,11 @@ credential retrieval, host mutation, queue claim or approval consumption.
claim/PDP/consume/readiness gates. Record natural claim/heartbeat/close,
request holds, cleanup, actual outcome and revocation. Retain failures.
Native configuration, requester login, real human entries and paid execution
are not performed by this packet. Required attended authentication cannot be
The approved configuration/code installation is complete. Requester login,
real human entries, a new spend grant and paid execution remain outstanding. Required attended authentication cannot be
substituted by an agent action. The complete factory G0 and useful delivery
remain HFACT T01/T05; this packet is the narrower disposable Glas proof.
The latest observed ECB rate (2026-09-25) is approximately EUR 0.876962/USD,
above the installed 0.87 treatment. Paid execution remains disabled pending
fresh accepted FX/tariff validity; see the €10 proposal.

View file

@ -1,5 +1,7 @@
# EUR 10 native tool-proof candidate — 2026-09-27
Historical preparation packet. The [replacement-window final outcome](../glas-metered-tool-renewal-20260927/README.md#final-attended-outcome--2026-09-27) supersedes the pending installation and approval statements below. Native credential delivery/revocation completed; the owner attempt failed. Accounting reconciliation, corrected runtime admission and separate retry authority remain.
Existing work: REINAH-WP-0003-T05/T06 and SECRETS-WP-0009-T03.
The user approved one disposable attempt. This packet is not installed or active.
Native spend request e9521804-8fce-4fbc-bfdf-8a1aa959fd61 is awaiting the human