Releases do not check that each environment calls its own simulation service
メンテナーはふだん 3 日以内に返信
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 46/100
- issue の種類
- バグ
- 明瞭さ
- 明確に書かれている
- 活発さ
- 活発
- 技術スタック
- github-actions, python
調査の方向性
Start by reading the staging and production model-version alignment jobs and the release workflow jobs that depend on them. Check how each job requests /health and reads response headers, then identify how the expected environment is represented in Cloud Run revision names. Done means each job fails for a missing or opposite-environment revision, and staging live simulation tests use the staging endpoint after the secret is updated.
索引モデルが issue の本文から書いたものです。
説明
What
The Public API's staging environment calls the production Simulation Entrypoint. Its staging environment secret SIMULATION_ENTRYPOINT_URL resolves to https://simulation.api.policyengine.org, the same URL as production. As a result, the release workflow's live simulation tests against the staging candidate send their economy, budget-window and job requests to production simulation infrastructure, and staging simulation infrastructure receives none of them.
Nothing in the release workflow notices this. The staging and production model-version alignment jobs only ask the configured URL which bundle it supports; they never check which environment's service answers.
Wanted result
- Each release checks that it calls its own environment's Simulation Entrypoint. The staging and production model-version alignment jobs read the
x-policyengine-simulation-revisionheader from the selected URL's/healthresponse, and fail if the Cloud Run revision belongs to the other environment's service, or if no revision is named. - Because every staging and production deploy job needs these alignment jobs, a release whose environments are crossed stops before it deploys.
- Once the
stagingsecret points at the staging Simulation Entrypoint, the staging live simulation tests run against staging simulation infrastructure and the staging Modal environment.
Order
The staging secret must first be changed to the staging Simulation Entrypoint's stable URL (after confirming that URL's /health names a policyengine-simulation-entry-staging-… revision). If the check merges before that change, every release fails at its staging alignment job.
- 主要言語
- Python
- スター
- 18
- フォーク
- 33
- 平均マージ
- 2日 18時間
- マージ済み PR(30日)
- 36
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
PolicyEngine/policyengine-api のほかの issue
-
難易度 1/5 1〜3時間 初心者へのやさしさ 88/100
PolicyEngine/policyengine-api#3911 ·
メンテナーはふだん 3 日以内に返信
-
難易度 1/5 1時間未満 初心者へのやさしさ 82/100
PolicyEngine/policyengine-api#3910 ·
メンテナーはふだん 3 日以内に返信
-
Remove the v1 user routes and keep complete simulation and report results final対応中かも @MaxGhenis が今日担当しました。 オープン
難易度 4/5 3〜5日 初心者へのやさしさ 45/100
PolicyEngine/policyengine-api#4028 ·
メンテナーはふだん 3 日以内に返信
-
Store the metadata v3 reads in the v2 catalog, from PolicyEngine.py's public records対応中かも このイシューにリンクされたプルリクエストがオープン中、またはマージ済みです。 オープン
難易度 4/5 3〜5日 初心者へのやさしさ 48/100
PolicyEngine/policyengine-api#4022 ·
メンテナーはふだん 3 日以内に返信
-
Publish v2 catalog regions from the Public API's own region reference files対応中かも このイシューにリンクされたプルリクエストがオープン中、またはマージ済みです。 オープン
難易度 5/5 1週間以上 初心者へのやさしさ 38/100
PolicyEngine/policyengine-api#4019 ·
メンテナーはふだん 3 日以内に返信
PolicyEngine/policyengine-api の issue をすべて見る
似ている issue
-
enhancement
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
fossasia/visdom-dev#77 ·
メンテナーはふだん 4 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
aws-cloudformation/cfn-lint#4890 ·
メンテナーはふだん 2 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
volcengine/OpenViking#6521 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 77/100
AstrBotDevs/AstrBot#10720 ·
メンテナーはふだん 1 日以内に返信