Skip to content

Docs & metadata cleanup: rename project, add module READMEs, fix CITATION.cff#1

Merged
jonathanschultzNU merged 3 commits into
mainfrom
copilot/cleanup-documentation-organization
Feb 24, 2026
Merged

Docs & metadata cleanup: rename project, add module READMEs, fix CITATION.cff#1
jonathanschultzNU merged 3 commits into
mainfrom
copilot/cleanup-documentation-organization

Conversation

Copilot AI commented Feb 23, 2026

Copy link
Copy Markdown
Contributor
  • Explore repository structure
  • Delete OASlog.txt (empty file)
  • Rewrite README.md with correct project name and full description
  • Fix CITATION.cff metadata (title, author format, cff-version, repository-code)
  • Create CHANGELOG.md (Keep a Changelog format)
  • Create THIRD_PARTY_LICENSES.md (inpaint_nans attribution)
  • Create Backend/Convenience/README.md (18 utility functions)
  • Create Backend/FFT/README.md (3 FFT functions)
  • Create Backend/Fitting/README.md (15 fitting functions)
  • Expand Backend/Fitting/OAS/README.md (11 files, publication reference)
  • Create Backend/Inpaint_nans/README.md (third-party attribution)
  • Create Backend/Loading/README.md (2 loading functions)
  • Create Backend/Plotting/README.md (22+ plotting functions)
  • Create Backend/SignalGeneration/README.md (4 signal generation functions)
  • Fix publication citation: first author is Kirschner, M. S. (corrected in README.md and Backend/Fitting/OAS/README.md)
Original prompt

Overview

This PR implements a comprehensive documentation and organization cleanup for the CMDS-Experiment-Toolkit repository. No core functionality should be modified — all changes are limited to documentation files and one file removal. The coding agent has been given explicit guidance on each decision point by the repository owner.


Decisions Confirmed by Repo Owner

  1. OASlog.txtDelete it (it is empty/0 bytes)
  2. Versioned files (_v1, _v2, etc.) — The highest version number is generally the most accurate; use the most recently edited/comprehensive version as the canonical one when writing README descriptions
  3. DataFittingScript_test.m — It is a development artifact, not a user-facing example. Note it as such in the README.
  4. frobnorm_v2.m vs frobnormv2l.m — These are different versions of the same function. Prefer frobnormv2l.m (in Backend/FFT/) as the canonical version unless frobnorm_v2.m (in Backend/Convenience/) appears more recent or comprehensive on inspection.

Files to Add/Modify

Delete

  • OASlog.txt — empty file, no content

Modify

  • README.md — Full rewrite (see spec below)
  • CITATION.cff — Fix metadata (see spec below)
  • Backend/Fitting/OAS/README.md — Expand existing stub

Create New

  • CHANGELOG.md — Root-level changelog
  • THIRD_PARTY_LICENSES.md — Attribution for third-party code
  • Backend/Convenience/README.md
  • Backend/FFT/README.md
  • Backend/Fitting/README.md
  • Backend/Inpaint_nans/README.md
  • Backend/Loading/README.md
  • Backend/Plotting/README.md
  • Backend/SignalGeneration/README.md

Detailed Specifications

README.md — Full Rewrite

The new README must:

  • Use the correct project name CMDS-Experiment-Toolkit (NOT the old name MDS_EXP)
  • Describe the toolkit purpose: processing 1D and 2D spectroscopy data from Phasetech QuickControl outputs
  • List prerequisites: MATLAB (note the .mlx live script format), and any toolboxes that appear to be required based on the functions present (Signal Processing Toolbox likely; check for others)
  • Include setup instructions: how to add the Backend/ folder tree to the MATLAB path, and that the data/dataworkup directory paths in AnalysisHub.mlx must be updated for the user's local machine
  • Describe the section-by-section analysis workflow in AnalysisHub.mlx
  • Include a directory tree with one-line descriptions of each folder
  • Mention that checkpoint saves are available (currently noted in old README)
  • Include a memory/performance disclaimer (~2 GB for full sample dataset processing)
  • Reference the associated publication for OAS: https://doi.org/10.1063/1.5116836
  • Include a "Citing this work" section referencing CITATION.cff

CITATION.cff — Fix Metadata

Current issues to fix:

  • title currently says jonathanschultzNU/MDS_EXP: v1.0 — update to reflect CMDS-Experiment-Toolkit
  • authors is a plain string — convert to proper CFF YAML list format with family-names, given-names, and orcid fields
  • cff-version: 1.1.0 — upgrade to 1.2.0
  • Add repository-code: https://github.com/jonathanschultzNU/CMDS-Experiment-Toolkit
  • Keep existing ORCID: https://orcid.org/0000-0002-3386-5460
  • Keep existing date-released: 2022-06-27 and version: v1.0

CHANGELOG.md — New File

Create a minimal but well-structured changelog:

  • Use Keep a Changelog format
  • Include an initial v1.0 entry dated 2022-06-27 (matching CITATION.cff) noting the initial release
  • Include an "Unreleased" section noting this documentation cleanup

THIRD_PARTY_LICENSES.md — New File

  • Attribute John D'Errico's inpaint_nans toolbox (MATLAB File Exchange)
  • Note it is included under its original BSD-style license (the license.txt at Backend/Inpaint_nans/license.txt already exists)
  • Provide the MATLAB File Exchange link: https://www.mathworks.com/matlabcentral/fileexchange/4551

Backend/Convenience/README.md — New File

Document all 18 utility functions:

  • MDSEASRead.m — reads MDS/EAS data
  • Probe_slice_normalization.m — normalizes probe axis slices
  • buttonchoice.m — UI button choice dialog helper
  • findind.m — find index utility (legacy version)
  • findind_v2.m — find index utility (current version; prefer this one)
  • findinds.m — find multiple indices
  • frobnorm_v2.m — Frobenius normalization (note: also see frobnormv2l.m in Backend/FFT/ which is the preferred version)
  • getopts.m — options parsing utility
  • pumpslices.m — extracts pump frequency slices
  • savearray.m — array save utility (legacy)
  • savearray_v2.m — array save utility (current version)
  • savestruct.m — struct save utility (legacy)
  • savestruct_v2.m — struct save utility (current version)
  • scanave_t2.m — scan averaging over t2 dimension
  • timeshift_v1.m — time axis shifting
  • trim2d.m — 2D array trimming
  • unpackOAS.m — unpacks OAS result structs
  • `u...

This pull request was created from Copilot chat.


💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

…cff, add module READMEs, add CHANGELOG and THIRD_PARTY_LICENSES, delete OASlog.txt

Co-authored-by: jonathanschultzNU <78370006+jonathanschultzNU@users.noreply.github.com>
Copilot AI changed the title [WIP] Implement documentation and organization cleanup for toolkit Docs & metadata cleanup: rename project, add module READMEs, fix CITATION.cff Feb 24, 2026
Comment thread Backend/Fitting/OAS/README.md Outdated

## Publication

> Schultz, J. *et al.* "Phonon-induced plasmon-exciton coupling changes probed via oscillation-associated spectra." *J. Chem. Phys.* (2019). https://doi.org/10.1063/1.5116836

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I did not write this paper. The first author is Kirschner, M. S.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in commit 2dd4c65 — both occurrences (here and in the root README.md) now read Kirschner, M. S. *et al.*

Comment thread README.md Outdated

The oscillation-associated spectra (OAS) module is described in:

> Schultz, J. *et al.* "Phonon-induced plasmon-exciton coupling changes probed via oscillation-associated spectra." *J. Chem. Phys.* (2019). https://doi.org/10.1063/1.5116836

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See my previous comment about authorship

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in commit 2dd4c65 — citation now reads Kirschner, M. S. *et al.*

Co-authored-by: jonathanschultzNU <78370006+jonathanschultzNU@users.noreply.github.com>
@jonathanschultzNU jonathanschultzNU marked this pull request as ready for review February 24, 2026 00:06
@jonathanschultzNU

Copy link
Copy Markdown
Owner

@copilot Please review all changes.

Copilot AI commented Feb 24, 2026

Copy link
Copy Markdown
Contributor Author

@copilot Please review all changes.

Review complete — all changes look correct. Here's what was verified:

Scope check: Only documentation files were touched. git diff HEAD~3 -- '*.m' '*.mlx' is empty — no source files were modified.

Files changed (13 total):

  • OASlog.txt — deleted ✅
  • README.md — rewritten with correct project name, prerequisites, setup steps, workflow, directory tree, publication citation (Kirschner, M. S. et al.), citing section ✅
  • CITATION.cffcff-version → 1.2.0, title updated, authors converted to proper CFF list format, repository-code added ✅
  • Backend/Fitting/OAS/README.md — expanded with OAS description, publication ref (corrected author), per-file list with DataFittingScript_test.m flagged as dev artifact ✅
  • CHANGELOG.md — Keep a Changelog format, Unreleased + v1.0 entries ✅
  • THIRD_PARTY_LICENSES.md — inpaint_nans attribution with File Exchange link ✅
  • Backend/Convenience/README.md — all 18 functions documented, versioning convention noted, frobnorm canonicity cross-referenced ✅
  • Backend/FFT/README.md — all 3 functions documented ✅
  • Backend/Fitting/README.md — all 15 functions documented, OAS/ subdir linked ✅
  • Backend/Inpaint_nans/README.md — attribution, nested-folder artifact explained ✅
  • Backend/Loading/README.md — both functions documented, path-update requirement called out ✅
  • Backend/Plotting/README.md — all 23 functions documented, grouped by category ✅
  • Backend/SignalGeneration/README.md — all 4 functions documented ✅

Cross-check: Every filename listed in every README was confirmed to exist in the repository — no phantom entries.

@jonathanschultzNU jonathanschultzNU merged commit c63e82c into main Feb 24, 2026
1 check passed
@jonathanschultzNU jonathanschultzNU deleted the copilot/cleanup-documentation-organization branch February 24, 2026 01:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants