Skip to content

Conversation

@gwbischof
Copy link
Collaborator

Migrate Harvard role from ioc-deploy-roles to nsls2.ioc_deploy collection format.

Copilot AI review requested due to automatic review settings November 4, 2025 19:29
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This pull request adds support for two new EPICS IOC device roles: Wiener Crate power supply monitoring via SNMP and Harvard Apparatus syringe pumps (pump33dds and phdultra models). The implementation includes configuration files, database definitions, protocol files, and deployment automation.

Key changes:

  • New wienercrate device role with SNMP-based monitoring for power supply crates
  • New harvard device role supporting two pump models with StreamDevice protocols
  • Module configuration for SNMP-NSCL dependency

Reviewed Changes

Copilot reviewed 28 out of 28 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
roles/install_module/vars/snmp_nscl_3cd2804.yml Defines SNMP-NSCL module configuration and dependencies
roles/device_roles/wienercrate/* Complete wienercrate device role with templates, schema, tasks, and database files
roles/device_roles/harvard/* Complete harvard device role with protocol files, databases, and templates for two pump models
roles/deploy_ioc/vars/wienercrate.yml IOC deployment variables for wienercrate role
roles/deploy_ioc/vars/harvard.yml IOC deployment variables for harvard role

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

field(DOL1, "1")
field(DOL2, "1")
field(LNK1, "$(P)$(DEV)AXIS-A:UPDATE.PROC")
field(LNK1, "$(P)$(DEV)AXIS-B:UPDATE.PROC")
Copy link

Copilot AI Nov 4, 2025

Choose a reason for hiding this comment

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

Duplicate field name 'LNK1' on lines 73-74. The second link should use 'LNK2' instead of 'LNK1', otherwise the first link will be overwritten.

Suggested change
field(LNK1, "$(P)$(DEV)AXIS-B:UPDATE.PROC")
field(LNK2, "$(P)$(DEV)AXIS-B:UPDATE.PROC")

Copilot uses AI. Check for mistakes.
field(PREC, "0")
field(DRVH, "100")
field(DRVL, "0")
field(SDIS, "$(P)$(R)DISABLE")
Copy link

Copilot AI Nov 4, 2025

Choose a reason for hiding this comment

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

Inconsistent macro usage. Lines 9 and 18 use '$(P)$(R)DISABLE' but the record prefix is '$(P){$(DEV)-Ax:$(AX)}', suggesting it should be '$(P){$(DEV)}DISABLE' to match the pattern used in other files.

Copilot uses AI. Check for mistakes.
}

record(mbbi, "$(P){$(DEV)-Ax:$(AX)}$(CMD):EGU") {
#field(DESC, "Ax $(AX) $(CMD) EGU")
Copy link

Copilot AI Nov 4, 2025

Choose a reason for hiding this comment

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

Commented out field definition on line 23. If the DESC field is intentionally omitted, remove the commented line. Otherwise, uncomment it to provide proper description.

Suggested change
#field(DESC, "Ax $(AX) $(CMD) EGU")
field(DESC, "Ax $(AX) $(CMD) EGU")

Copilot uses AI. Check for mistakes.
}

record(mbbi, "$(P){$(DEV)-Ax:$(AX)}$(CMD):RBV:EGU") {
#field(DESC, "Ax $(AX) $(CMD) readback EGU")
Copy link

Copilot AI Nov 4, 2025

Choose a reason for hiding this comment

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

Commented out field definition on line 36. If the DESC field is intentionally omitted, remove the commented line. Otherwise, uncomment it to provide proper description.

Suggested change
#field(DESC, "Ax $(AX) $(CMD) readback EGU")
field(DESC, "Ax $(AX) $(CMD) readback EGU")

Copilot uses AI. Check for mistakes.


record(mbbi, "$(P){$(DEV)-Ax:$(AX)}$(CMD):RBV:EGU") {
#field(DESC, "Pump Status")
Copy link

Copilot AI Nov 4, 2025

Choose a reason for hiding this comment

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

Commented out DESC field on line 25 has misleading description 'Pump Status' for an EGU (engineering units) record. Either uncomment with a correct description or remove the comment.

Suggested change
#field(DESC, "Pump Status")

Copilot uses AI. Check for mistakes.
@thopkins32
Copy link
Contributor

Needs some work to refactor the substitution files so it can be much simpler.

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