Skip to content

Rename remaining HDF5 groups to CamelCase + add CLAUDE.md naming convention #226

Closed
1 of 1 issue completed

Description

@logan-nc

Context

PR #225 restructured the edge_scan/ and vacuum/ groups of gpec.h5 into the new CamelCase schema:

  • edge_scan/* → EdgeScan/* (power-norm default) and EdgeScan/XiNorm/* (ξ-space for benchmarking)
  • vacuum/ split into FreeBoundaryStability/ (energy matrices + eigenmode energies) and SurfaceGeometries/{Plasma,Wall}/{x,y,z}

The remaining top-level groups are still lowercase/abbreviated. They should be renamed for a consistent CamelCase schema.

Proposed renames

Current Proposed
equil/ Equilibrium/
info/ Info/
input/ Input/
integration/ EulerLagrangeSolutions/
kinetic/ Kinetic/
locstab/ LocalStability/
matrices/ Matrices/
singular/ SingularSurfaces/
splines/ Splines/

Already migrated (no change needed here): EdgeScan/, FreeBoundaryStability/, SurfaceGeometries/.

Scope of work

  1. Update the writer in src/GeneralizedPerturbedEquilibrium.jl to emit the new group names.
  2. Update every reader:
    • src/Analysis/ForceFreeStates.jl (stability plots)
    • src/Analysis/* (other analysis modules)
    • benchmarks/*.jl
    • test/runtests_fullruns.jl
    • regression-harness/cases/*.toml
    • scripts/*.jl
  3. Rebaseline any hard-coded numerical expectations if they were tied to old paths.
  4. Add a new "HDF5 naming conventions" section to CLAUDE.md so future Claude Code sessions emit consistent CamelCase group names from the start. Recommended content:
    • Top-level groups: CamelCase singular or plural noun (e.g. FreeBoundaryStability, SingularSurfaces)
    • Field names: snake_case (e.g. total_energy, eigenmode_energies)
    • Reserved subgroup names: XiNorm/ for ξ-space counterparts of Φ-space (power-norm) defaults
    • Physical point clouds live under SurfaceGeometries/<SurfaceName>/{x,y,z}
  5. Regenerate regression baselines on develop after the merge.

Why

The mixed schema (EdgeScan/ next to equil/ and integration/) is confusing for anyone inspecting gpec.h5. Tackling the remaining groups in a single focused PR keeps the migration easy to review and limits the blast radius of downstream tool breakage.

The CLAUDE.md addition is the key follow-up — without a codified convention, these renames will drift again the next time a new group is added.

Activity

  1. added this to the GPEC v2.0.0 milestone on Jun 17, 2026
  2. added a commit that references this issue on Aug 14, 2026
  3. added a commit that references this issue on Aug 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions