More than 3 years have passed since last update.
もしも法律がgitで管理されるとしたら (GitLaw)
111
Last updated at Posted at 2016-09-29
概要
- 法律はソースコードで管理
- 裁判と法の解釈は処理系による判断
リポジトリ
法律リポジトリ
masterブランチ (天皇)
- 国家に1つ
- 実運用(デプロイ)されるリポジトリ
- 天皇しかpushできないリポジトリ
releaseブランチ (議会)
- 議会に1つ
- 国会議員以上でしかpushできないリポジトリ
devブランチ (議員個人)
- 議員につき1つ
- 国会議員以上でしかpushできないリポジトリ
- 議員が好きに弄れる
issueブランチ (国民)
- いくらでも建てられる
- 国民が作成可能で、devにマージするリクエストを送れる
憲法(憲法リポジトリ)の改正
- 憲法はそれ自身はテストの集合(spec)であり、他の法律をe2eテストするプログラム群
- 憲法改正は国会議員がissueを建て、国会議員の2/3以上の 👁 :thumbsup:
で発議 - 国民の過半数がレビューして賛成すると成立し、masterにマージされる
法律の立て方
issue
- 国会議員は、1人1つのdevブランチを所持
- 国民は、国会議員のdevブランチにプルリクエスト付きissueを送ることができる
- issueは 👁 :thumbsup:
と 👁 :thumbsdown:
があるので投票としても効く - プルリクエストは憲法に適合するか、既存法律と整合性が取れているかのユニットテストを行う
- issueは 👁 :thumbsup:
- 国会議員は送られたプルリクを承認できるし、自分で法律を書くことも可能
- 国会議員は release ブランチにマージできる
- マージ前にユニットテストが走る
releaseブランチで国会審議
- releaseブランチにマージされたプログラム(法案)をレビューし、 👁 :thumbsup:
多数で可決- もちろん憲法e2eテストも通す
- 可決すると、masterにマージリクエストを送る
天皇のマージ承認とデプロイ
- 天皇はmasterにマージする承認作業を行う。
- マージされると、デプロイされる
- git diffで法律の差分を読むことができる
Register as a new user and use Qiita more conveniently
- You get articles that match your needs
- You can efficiently read back useful information
- You can use dark theme
