Skip to content

OpenFace v0.5.0リリースヘッダー

OpenFace v0.5.0

OpenFace v0.5.0では、pipeline control planeをdurableなPostgreSQL schemaへ 移し、v0.4.0のSQLite historyからの移行を明示的かつ検証可能にしました。 同じreleaseで、repository fileを確認しやすくし、長いSpace名をresponsiveな layout内に収め、repository validationを並列実行できる独立jobへ分割しています。

Highlights

  • Pipeline stateをPostgreSQLへ保存: pipeline audit history、production reconciliation state、cursor、migration markerは、既存の openface_metrics database内にあるopenface_pipeline schemaへ保存されます。 databaseまたはschemaがreadyでない場合、startupと/healthzはfail-closedになります。
  • Legacy historyを意図的に移行:spaces-runner/pipeline_migration.pyはSQLite sourceを明示的に要求し、integrity、 schema、timestamp、reconciliation payload、source digestを確認します。不一致、 conflict、不完全なrowは拒否します。検証済みで変更されていないsourceの再実行は idempotentで、通常startupがlegacy fileを探すことはありません。
  • Upgradeとrestoreを復旧可能に: bilingual runbookと scripts/restore_lxc_deployment.shが、3つのPostgreSQL database、named volume、 optionalなMCP state、protected credential source、fail-closedなpreflight、restore 検証、更新後比較まで扱います。upgrade中にdocker compose down --volumesを使わない 契約も維持しています。
  • 正しいbranchでrepository fileをpreview: blob viewはrepositoryのdefault branchを 使い、既存のsanitize pathでREADME Markdownをrenderし、file directoryを基準にrelative linkとassetを解決します。previewできない場合はsource textへ戻ります。
  • 長いSpace headerを使いやすく: Space identity、repository name、tab、metric、 runtime controlを独立したshrinkable regionに分け、tabletとmobileのrunnerは固定height ではなくwrap後のheaderからsizeを決めます。
  • 独立CI jobで速くvalidation: Compose/configuration、frontend、bilingual docs、 PythonとSkill、Spaces runner test、maintenance-agent testを、isolated cacheと一時状態で 独立実行します。必須のvalidate jobはaggregate gateとして残ります。

Operator impact

  • v0.4.0環境に/data/agents/pipelines/pipeline-audit.dbが残っている場合は、 spaces-runnerを停止し、fileとvolumeをbackupし、migrationの--verify-onlyを実行してから、 importを完了し、新しいpipeline writeを受け付けてください。
  • migrationはautomaticではありません。row count、stable ID、timestamp、audit history、 cursor、reconciliation stateの更新後比較が終わるまで、元のSQLite fileとbackupを保持します。
  • default schemaはopenface_pipelineです。別schemaが必要な場合だけ、safeなPostgreSQL identifierのOPENFACE_PIPELINE_DB_SCHEMAを設定します。OPENFACE_PIPELINE_DATA_DIRは deployment/preview artifact用で、authoritativeなpipeline stateには使いません。
  • fresh installではPostgreSQL initializationがschemaを作成します。既存Compose環境は、 imageやvolumeを変更する前にupgrade runbookの完全なbackupとrestore rehearsalを行います。

Documentation

Repository Pipelines guideupgradeとdata retention runbookOperations guideProxmox LXCへの配備を参照してください。 v0.5.0解説では、operatorの視点からmigrationとvalidationの storyを追います。

Validation

release checklistでは、bilingual documentation validatorとVitePress production build、SVG asset validation、frontend lint/test/build、Python compile、PostgreSQL integrationを含む Spaces runner test、Compose config、restore helper test、CI aggregate gate、release QA inventoryを 確認します。final releaseはdocs deploymentとlive release URLを検証してから公開します。

Upgrade contract

  • Target path: v0.4.0からv0.5.0、またはfresh installです。さらに前のreleaseからは、 該当する過去release noteを確認してからこのrunbookを使います。
  • Breakingな運用変更: pipeline audit/historyとreconciliation stateがlegacy SQLiteから PostgreSQLへ移ります。暗黙のimportはなく、data migration完了後の安全なin-place downgradeもありません。
  • Migration: pipeline_migration.py --source ... --verify-onlyを実行し、同じbackup済みで 変更されていないsourceに対して--verify-onlyなしのcommandを実行します。source digestを記録し、 conflictを拒否するため、更新後確認までsourceを保持します。
  • Backup: forgejoopenface_metricsopenface_maintenanceをdumpし、Forgejo、metrics、 maintenance、shared-token、runner、MCPを有効にしている場合のvolumeをarchiveします。MCPのbind state、 credential、.env、Z.AI config、gateway certificateも別に保護します。
  • Composeとenvironment: PostgreSQL initializationがopenface_pipelineを作り、 OPENFACE_PIPELINE_DB_SCHEMAがsafeなschema名を選びます。upgrade手順として docker compose down --volumesを使わないでください。
  • Rollback: migration前はhealth checkが通ったことを確認してからold checkoutとimageを復元します。 migration後はschemaをin-place downgradeせず、検証済みPostgreSQL dumpとnamed-volume archiveを isolatedなrehearsal環境へrestoreします。
  • 更新後: Compose health、PostgreSQL schema/migration marker、Forgejo repositoryとIssue/PR、 Space、metrics、maintenance、pipeline rowとrun number、runtime logを比較します。
  • 既知のcheck: 実deploymentの時間、operator固有のrestore path、runtime visual checkはdeployment checkです。release noteではrepositoryだけの証拠として扱いません。

完全なsequenceはupgradeとdata retention runbookにまとめています。 日本語ページは英語ページと同期させてください。

Released under the MIT License. Third-party components retain their own licenses.