Skip to content

[BLOCKER R12-B13] 一回のChat要求→17対象非公開終端の真正E2E #491

Closed

Description

@ShutenOishi

AUTO v2.5 現行の受入条件(過去本文の外部事象待ちを上書き): AUTO v2.5: 本人の新規非公開1要求→protected CI/merge→中央 original→17 distinct local original/ZIP bytes→State App CAS terminal→別Runner鍵なしreadbackが一気通貫で成立したら非公開AUTOを完成。#481-483の未来stable、#492-493の正式Release、現policyに無い承認不足は依存しない。従来のR10/R11枝番全部PASSを前提とする部分はAUTOの完成判定には適用しない。安全ゲート・実原本は維持。

正本: #311 / 将来留意点 #501。PUBLISH_DENY/runtimeEnabled=false、旧scheduleの安全撤去条件・必須CI・保護設定不変。

2026-11-01 完成優先の実行順序:P0/先行実装→適格イベントで最終検証

今すぐ進める: 真正1回の非公開中央要求→17 local original→receipt ZIP/SHA256→CAS terminal→別Runner鍵なしreadbackを通し、1サイクルで完結させる。

イベント成立時だけ行う: 形式的R10/R11依存の最終PASSは各固有契約の実事象成立時に判定。非公開成功を正式公開や9枝番PASSに流用しない。

運用: イベント不在のGET監査・成功Run再実行は繰り返さない。残余はEVENT_GATEDで保持し、発火時に本Issueの手順と受入条件を利用する。コード完成と正式受入は別。PUBLISH_DENY/runtimeEnabled=false・必須CI・旧schedule・元の受入条件を変更しない。

子タスクID: R12-B13
分類・対象枝番: IMPLEMENT + VERIFY_LIVE / R12-02・親R12・W12-A

親: #311、関連親 #75。受入契約v2.1+ metadata/issue311-remaining-work-v22.json v2.2を優先し、現在の正式 85/94 PASS・9 PENDING は変更しない。各子タスクのコード完成/fixture PASSとoriginal live合格を区別。
共通条件: 既存成功Run rerun禁止、偽入力/任意失敗/未認可公開禁止、PUBLISH_DENY / runtimeEnabled=false・必須App15368・保護main維持。ソース変更は保護PR→必須CI→期待HEADマージ→original postmerge→実原本検証→#311/#75更新。

現在の阻害条件

R12-01の対応表は受入済みだが、R10/R11の前提条件不足のため1要求から17対象を最後まで自律完了し、独立readbackする最終運用原本は未受入。

再現可能な実施手順

  1. R10-02・R11-01/02と各親R10/R11の実受入を認証済みで先に確認。
  2. 一回の真正operator非公開要求を単一immutable request/cycle/17保護target main SHAへ固定。
  3. 保護PR→必須CI→期待HEADマージ→中央PREPARE→17 distinct original local Run/receipt→有限CAS terminal→別Runner鍵なしState readback。
  4. 実際に存在する17 original ZIPの実SHA256/CRC、Run/attempt/HEAD/actor/expiryを照合し、正常/異常と最終成功地点・理由・再開条件を含む運用報告作成。
  5. 親R12 v2.1のR07〜R11依存を個別再照合。R09公開を勝手に行わない。

受入条件(すべて満たした時のみ)

  • R10/R11前提成立の証拠付きの一回正規要求から17件の真正子Run/cycleが生成
  • 全対象が有限に安全な終端となり、CAS revision+独立鍵なしGETが一致
  • ZIP/署名/来歴について適用される既存契約の独立検証、理由/lastSuccess/resumeが揃う
  • 追加Chat/手動dispatch/cronなしで再現可能な運用手順を記録
  • R12-02と親R12は依存ゲートを分けて正式判定

停止・再開条件

依存: B10-B12、B01-B09の必要受入。旧別Runの継ぎ合わせ禁止。

報告要件: 根拠の原本 URL・PR/Run/HEAD・必要なState blob/SHA256・判定区分を示す。正式9未受入枝番のチェックを自動変更しない。

2026-10-31 単一ユーザー移行(今回の明示指示を適用)

本節は上記の任意の「別human intent」「第二人間」「追加Work操作」条件を置き換える。ShutenOishi本人の一回のChat要求を、認証済みGitHub操作で固定する。同じrequestIdの許可scope内のPREPARE・Issue調停・Draft候補・native CI・検証・記録は追加human要求なしで進める。実際のGitHub actor/author/merged_by/Runは独立GETし、Botを人間と呼ばない。

実行可能工程: immutable request(対象・scope・requestId・source SHA・expected HEAD・expiry・replay key)→hostile試験→保護PR→必須App15368 CI→期待HEAD保護マージ→original postmerge→必要な実ZIP/State独立GET。既存成功Runを再実行しない。
受入条件: 上記原本が同じ要求へ結合し、無権限・scope外・改ざん・期限切れ・replayをfail closed。追加の人間操作なしで許可範囲が完走した場合のみ本機能の完了。正式85/94は変更しない。
原本証跡: PR/HEAD、真正author/merged_by/actor、Run/attempt1、request blob、必要なZIP実SHA256/CRC/署名/Attestation、State revision、独立readback URLを記録。
外部条件: GitHub自身の実在する保護/承認規則、サービスquota、真正upstream、特定候補のPUBLISHのみ。有限timeout/retry・単発write/不明応答GET-only・最小権限は維持する。任意件数上限は理由と適用箇所を監査し、無条件に無制限化しない。
再開条件: 具体的な未成立の外部事実、または未実装adapter/検証工程を示す。不在監査だけを反復しない。

非公開統合試験は実在するupstream tag/full commitを使い、隔離資源・実GitHub API・実workflowで行う。新stableの偽造は不可。CONTROLLED_INTEGRATIONと将来真正stableのPUBLIC_E2Eを別判定し、正式契約の判定変更は保護PRのマージ・postmerge後に適用する。旧scheduleは代替受入まで維持。

R10は実policyと実承認状態を確認し、存在しないPREPARE承認不足を捏造しない。policyが承認を要求しない場合は「不足なし」を原本付きで記録し、任意の第二人間待ちを作らず、適用判定の契約改訂へ進む。実在する不足時のみBLOCKED_APPROVALを実証する。

本要求は非公開実装・契約変更の認可。PUBLISH_DENY/runtimeEnabled=falseを維持。正式公開は実在する特定候補への本人一回の明示PUBLISHと全既存公開ゲートが必要。

Activity

  1. ShutenOishi commented on Nov 1, 2026

    @ShutenOishi
    ContributorAuthor

    2026-11-01 最優先の完成判定:#311 (comment)

    新たな一回限りの保護非公開中央要求→17 distinct App-bot local original→17 receipt/存在するZIP実バイトSHA256・CRC→State App CASで有限17 terminal→別Runner鍵なしreadbackを同じsource cycleで実動作させるまで「完成」扱いにしない。R10/R11正式依存は別判定、PUBLISH_DENYの解除なし。

  2. ShutenOishi commented on Nov 1, 2026

    @ShutenOishi
    ContributorAuthor

    AUTO v2.5 今回の真正原本進捗(2026-11-01、非公開)

    • [P0][CHAT UPDATE] 1回の「pgextwinを更新して」→全拡張更新処理(公開版維持) #311 の狭義AUTO完了範囲は 4 COMPLETED_SCOPED / 5 OUT_OF_SCOPE / 6 ACTIVE。#501へ外部事象・実PUBLISHを整理済み。85/94正式歴史台帳は未変更。
    • 中央17 source-bound ID build PR#499 -> main 8e391d4。16 local adaptersは認証済みGETですべてsource-bound ID対応。
    • 新しいPREPARE source PR#500 HEAD af6c5c1 -> protected merge 530fd07。required App15368 resolver SUCCESS、original central scan 41296729404 attempt1 SUCCESS。
    • 同じmainの独立watchdog 41296729562 FAIL/QUARANTINED。要求createdAt起算45分が保護PR・CI前に消費されていた。期限外を成功に読み替えず原本保全。
    • 期限の開始点を「authenticated protected-main push original Run created_at」とし、絶対expiresAtと有限45分は維持する修復 PR#502 は latest HEAD b9d5930 のrequired CI SUCCESS→保護squash merge b2ba628、original postmerge resolver 41297553373 attempt1 SUCCESS。
    • PR#500由来の17 original local Runを別途認証GETして、16本は全体SUCCESS、orafceのみFAILURE(41296912350 attempt1)。orafceの本物のlocal PREPARE job/receiptはSUCCESSだが PG18 Windows job124819771712の「Generate build provenance attestation」で Rekor sigstore.dev のtlog entry GET network timeout。全体Windows required SummaryはFAIL、R08監査はSKIPPED。中央fleet original 41296771813は17 child記録・1 QUARANTINEDでFAIL。17/17成功・State App CAS・独立鍵なしreadback成功とは主張しない。
    • 次に実装する修復: NO_UPDATEの非公開PREPAREを、正式PUBLISH時に必須のWindows Sigstore/Rekor可用性と適切に分離する(成功資格のすり替え・署名未検証の公開は不可)。失敗したchildはFAILED/QUARANTINEDとする。新たな必要最小の真正要求のみ認可し、元Runの成功rerun/古い要求再利用はしない。[P2][HARDENING] 旧新Writer共有資源のfence/CASと制御競合 #484/#485の安全fenceと [BLOCKER R10-B12] 専用State App CAS・失効401・鍵なしreadbackと有限再開 #490/#491の実17 State CAS・独立readbackを完了後にACTIVE解消する。
    • PUBLISH_DENY/runtimeEnabled=false、旧schedule、branch protection、App15368 CI、SHA/署名/Attestation、適格PUBLISHを維持。
  3. ShutenOishi commented on Nov 1, 2026

    @ShutenOishi
    ContributorAuthor

    AUTO v2.5 / #491 — 2026-11-01 修正実行(非公開、途中証跡)

    確認済み実障害: orafce Run41296912350 は App local PREPARE 検証PASS後、更新がなくてもWindows PG14〜18/Rekorへ進み PG18 のAttestation timeoutで全体FAILURE。中央17集約もorafceのWindows/署名ZIPを無条件に要求。これは新stable待ちではなく、現行NO_UPDATE処理の実障害。

    修正済みPR:

    未成立: 2 PRの必須CI→保護マージ→original postmerge→新規正規非公開1要求→17 original ZIP実SHA256/CRC→App single-writer CAS/revoke401→別Runner鍵なし独立readback。17 E2EはまだPASSではない。AUTO 4 COMPLETED / 5 OUT_OF_SCOPE / 6 ACTIVE、正式歴史台帳85/94不変。

    方針: 将来の自然故障・新stable・個別PUBLISHは#501に集約した留意点のみ。直接取り扱わない。PUBLISH_DENY/runtimeEnabled=false、成功Run再実行禁止、旧schedule代替受入前撤去禁止、ブランチ保護・必須CI・来歴安全ゲート維持。

  4. ShutenOishi commented on Nov 1, 2026

    @ShutenOishi
    ContributorAuthor

    AUTO v2.5 正式子タスク受入 — 2026-11-01 JST

    判定: COMPLETED_SCOPED(非公開AUTO v2.5 の要求された範囲)。将来の新stable/PUBLISHや自然障害を証明した意味ではない。正式歴史台帳85/94は不変。

    新規の一回限りの真正17件原本: protected request build PR#506 #506 (HEAD 8dbe091、required resolver Run41303454534 SUCCESS、保護squash main 5c887e4、postmerge Validate Run41303544117 SUCCESS)。中央 original https://github.com/pgextwin/build/actions/runs/41303544119 SUCCESS、17件 App-bot local original集約 https://github.com/pgextwin/build/actions/runs/41303603386 SUCCESS、原本 coordinator の実ZIP/SHA256/CRC/actor/source/cycle/17 distinct child照合による CHILDREN_17_ORIGINAL_ZIP_VERIFIED_CAS_PENDING、集約 artifact13081379734 sha256:1a833495045d4b0d7a207c8803f42ffbc81d80e92654744b7cdfc3c1ba9c7157。orafce local original https://github.com/pgextwin/orafce/actions/runs/41303692512 SUCCESS(orafce PR#91 main 3a236c78e1118a7da8838ce76b78d43af163db1f、非更新時の不要な署名依存を分離、PG14-18/署名の実候補ゲート維持)。

    専用App CAS + 別Runner読取: https://github.com/pgextwin/build/actions/runs/41303787995 全必須実行ジョブSUCCESS。writer job124839946407 NO_UPDATE_17_APP_CAS_DURABLE_READBACK_PENDING、キーなし独立 readback job124840082173 ORIGINAL_17_GET_CAS_READBACK_DENIAL_PASS、proof artifacts 13082014973 (sha256:d3a92a51284d048ed37c58542a8168ce496a95f4273b04032638d64269f8cbb1) と13082590966 (sha256:132ac9bffade28cb3bcbd3922dc15d05059023e46ebd96cd7087539c2b900437)。

    GitHub Contents独立GET: issue311-state/checkpoints/request-lifecycle/r-20261101-r06appauto41303603386.json 実 blob 5a30f9fe7e9a71dbcbe65a286e6d906113252669、revision2、terminal NO_UPDATE、17/17 SUCCESS、sourceRun 41303603386 attempt1、completionRun 41303787995 attempt1、固定保護source SHA 5c887e4、publisherAuthorized=false、writeOutcomeUnknown=false、eventTransport=workflow_run.completed。独立finite watchdog https://github.com/pgextwin/build/actions/runs/41303544134、無鍵読取ジョブ124840191927 SUCCESS、既存terminal上書きなし。これらは GitHub REST / immutable ZIP actual byte verification by original Actions を区別し、ChatのGitHub RESTメタデータをローカルダウンロード原本と偽らない。

    失効・CAS・敵対的安全境界(成功済み原本を再利用、再実行なし): 現在のCAS runnerが独立readback内でreplay DENY、実State write/revoke401の負例を満たす。先行済み実App PUT ACK制御喪失/GET-only/revoke401 Run41014995197、実二Runner HTTP409 winner1/loser1 / 単発PUT /第三者読取 Run41032550321、GET一時障害最大3回の負例 Run41040267332。詳細の既存正式原本 #311 (comment) を継承。旧新legacy candidate Writer競合とは別境界であり#484には転用しない。

    禁止と除外: PUBLISH_DENY / runtimeEnabled=false、旧scheduleを代替未受入で撤去しない、将来の自然障害/未来stable/個別Releaseは#501の参照のみで直接扱わない。未認可公開なし。歴史85/94への自動加算なし。

    次: #484/#485の共有資源安全境界 → #486対象別旧schedule代替 → #487受入後の保護撤去。#490/#491は今回のAUTO範囲で再オープンや重複実証をしない。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions