Parameter metadata for the keywords of registered recipe types

クローズ
#409 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

関連するプルリクエストがすでにマージされています。

  • #451 @jtravs による — マージ済み

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
22/100
issue の種類
機能追加
明瞭さ
おおむね明確
活発さ
活発
技術スタック
python
領域
cli

調査の方向性

Start with the registered types in src/solprop/recipe/registry.py (the Factory around line 140) and the existing route metadata in solprop.recipe.metadata, which the S9 consistency tests exercise. Add a summary, level, default, unit, display unit and manual anchor for each keyword of the 24 + 16 registered types beside their factories, then extend the S9 tests to cover them. Done when every registered keyword has an entry and those tests pass.

索引モデルが issue の本文から書いたものです。

説明

area: gui area: interfaces enhancement priority: medium

What is missing

SEP 41's parameter metadata (S9, solprop.recipe.metadata) describes every keyword of the gnlse, capillary and waveguide routes and the execution settings. Each entry gives the form, unit, display unit, level, group, summary, default or resolver, and manual anchor. A registered type (Factory) carries only the units of its keywords. This covers GaussianPulse, the grids, PressureGradient, profiles, MaterialSelection, the spatial grids, SpatialPulse, SpatialMedium, the responses, SpatialAbsorber and the rest of the 24 + 16 registered types.

Why it matters

A front end builds its forms, tooltips and newcomer/advanced levels from this metadata, so that it holds no copy of solprop's defaults or wording. Every table of a recipe has none of it today: a second pulse, a pressure gradient, a profile, and the whole setup of the radial, free and planar routes, whose [build] is entirely tables. A script user reading solprop check messages gets the same gap.

Context

  • SEP 41 phase 1 and phase 4 (free-space half) reports, PR #376.
  • The front end's design, section 12.1 and section 21 (docs/dev/gui/design.md), where this is P2. Needed by its milestones M3 (guided routes) and M5 (free space).

To do

  • Give each registered type's keywords the same entry as a route keyword (summary, level, default, range where there is one, display unit, manual anchor), defined beside the factory.
  • Hold them to the target signatures and the manual's headings with the tests that hold S9's.
  • Expose them through the same public call as the route metadata.

Done when

Every keyword of every registered type has an entry, and the existing S9 consistency tests cover them.

主要言語
Python
スター
3
フォーク
3
平均マージ
8時間 37分
マージ済み PR(30日)
159

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

LupoLab/solprop のほかの issue

LupoLab/solprop の issue をすべて見る

似ている issue

Python の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。