Skip to content

Feature/submission flow redesign#88

Merged
liunick-msft merged 5 commits intomainfrom
feature/submission-flow-redesign
Feb 13, 2026
Merged

Feature/submission flow redesign#88
liunick-msft merged 5 commits intomainfrom
feature/submission-flow-redesign

Conversation

@liunick-msft
Copy link
Contributor

This pull request significantly enhances the config submission workflow and related documentation for Azure Local network templates. The changes improve the clarity, structure, and validation of switch config submissions, strengthen credential sanitization requirements, and update the backend and testing documentation to reflect new workflows, validation logic, and increased test coverage.

Issue Template Improvements:

  • Broadened the .github/ISSUE_TEMPLATE/config-submission.yml template to support both reporting issues and contributing new vendor/model configs, added dropdowns for submission type and deployment pattern, and clarified/sanitized form fields and instructions for sensitive data. [1] [2]
  • Enhanced the pre-submission checklist to explicitly require removal of SSH keys and clarified field descriptions for vendor, firmware, model, and role. [1] [2] [3] [4] [5]

Process & Validation Instructions:

  • Updated .github/instructions/process-submission.instructions.md to:
    • Emphasize inline (scriptless) normalization and validation of vendor, firmware, role, and deployment pattern, including new mapping logic for dropdowns and improved handling of new vendor contributions. [1] [2]
    • Move all metadata and config validation steps inline, removing reliance on backend scripts, and clarify the logic for vendor/firmware detection and cross-checking.
    • Expand credential search patterns and add explicit checks for SSH keys, SNMP, TACACS+, RADIUS, and enable secrets before PR creation. [1] [2]

Copilot & Test Documentation Updates:

  • Added detailed notes in .github/copilot-instructions.md for handling storage VLANs based on deployment pattern, and updated the test suite documentation to reflect the expanded test coverage (227 tests total, including new submission flow tests). [1] [2] [3] [4] [5]

These changes collectively make the submission process clearer for users, ensure stricter data sanitization, and streamline validation and automation for maintainers.

References:
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16]

…sign

- docs/roadmaps/submission-flow-redesign.md: full plan, decisions, task tracker, flow diagram, file-mapping reference
- submissions/.gitkeep: placeholder for future processed config submissions
…-facing patterns

- Rewrite issue template: add submission type dropdown (Fix vs New Vendor),
  customer-facing deployment patterns (HyperConverged/Switched/Switchless),
  'What's wrong?' textarea, node count, lab JSON input, BMC marked lab-only
- Rewrite process-submission instructions: remove non-existent backend/ refs,
  inline Copilot analysis, add credential scan, data sanitization step,
  file-mapping guide for Fix submissions, artifact creation for New Vendor
- Update triage workflow: validate submission type, credential scan,
  lab JSON syntax check, auto-apply new-vendor label
- Rewrite CONTRIBUTING.md: customer-facing pattern names, two submission
  paths (Fix + New Vendor), pattern identification guide, sanitization
  guidance, example submissions
- Add PATTERN_SWITCHED and PATTERN_SWITCHLESS constants
- Update roadmap with completed phases
- Validation logic: Python replica of triage workflow JS, tested with
  ~40 mock issue body scenarios (valid/invalid submissions, credentials,
  spam injection, checkboxes, required fields, lab JSON)
- YAML schema: parse config-submission.yml, verify required fields,
  dropdown options, render modes, checkboxes
- Cross-file consistency: deployment patterns, roles, field headings,
  credential placeholders, submission types consistent across all files
- File path existence: all paths referenced in process instructions exist
- Constants alignment: VENDOR_FIRMWARE_MAP, pattern constants documented

Total test count: 103 original + 96 submission flow = 199
- Adversarial inputs: empty body, whitespace-only, garbage text, 100K-line
  config, JSON bomb (100 levels deep), malformed JSON, XSS via img/onerror,
  stacked injection, credential-only config, unicode/null bytes, regex bomb
- Error message clarity: all errors have ❌ marker, warnings have ⚠️,
  credential errors tell user about $CREDENTIAL_PLACEHOLDER$, short config
  suggests full running config, missing fields lists which ones, examples
  in 'what's wrong' warning
- Infinite loop guards: workflow only triggers on opened/edited (not labeled
  or issue_comment), requires config-submission label filter

Total test count: 103 original + 121 submission flow = 224
@liunick-msft liunick-msft merged commit 423a742 into main Feb 13, 2026
8 checks passed
@liunick-msft liunick-msft deleted the feature/submission-flow-redesign branch February 13, 2026 20:15
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.

1 participant