Sienna-Platform / Sienna-Platform/PowerFlowFileParser.jl

PSY parsing changes post package split

Open
#54 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Julia
Stars
1
Forks
2
Avg merge
22h 29m
Merged PRs (30d)
10

Description

I had Claude audit the commit history of PSY's main for parsing changes that didn't make their way into PFFP.

There were a few things that clearly looked like bugfixes, so I ported them over: #51, #52, and #53 .

Probably should be ported over:

  • 5b298a811 / f5e9f0dd4: PFFP's ramp_limits ignores base_conversion. Its docstring calls this out as a deliberate verbatim port of PSCB's inconsistency. PSY has since ruled it a bug and threads base_conversion through all four branches. Every other limit in _gen_base_and_limits is scaled, so ramp limits are the lone unscaled quantity whenever mbase != sys_mbase.
  • b3542ea98 / 297a4759e: PSY moved VSC control modes to VSCDCControlModes/VSCACControlModes enums and promoted REMOT/RMPCT to first-class remote_bus_control_*/rmpct_* fields. PFFP keeps booleans and drops REMOT/RMPCT entirely. Different component model — but if you want VSC remote-regulation round-tripping, those two fields are simply absent today.

Divergences in behavior that look intentional:

  • cb8ed3363 / 36a33acd0: PSY zeroes switched-shunt initial_status for MODSW ∈ (0,1,2) in all versions. PFFP reworked this — unconditional for pre-v35, actual S1..S8 for v35. PFFP's looks more correct; noting it because the behaviors genuinely differ for v35.
  • 624516aec / cc34620d5 / 0cf823e18 / cca947511 / e7e8b6639: the branch_type_override / network-reduction feature set. PSY-only, no PFFP counterpart.

Strikethough on the first one: component behavior is tied up in this one, too. See PSY #1774: once those struct changes land, we should check back on the parsing situation here.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by comparing the referenced PSY commits with PFFP's _gen_base_and_limits and the VSC component parsing model. Verify that base_conversion reaches all ramp-limit branches and determine how REMOT/RMPCT map to the proposed fields, while checking PSY issue #1774 before changing structs. Done means the confirmed parsing divergences are ported without altering the intentional switched-shunt or network-reduction behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
julia
Domain
data
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.