Skip to content

Align inherited feature requests with consumer needs and scenarios #88

Description

Describe the change

Context and request

Contributors using the inherited PSModule feature form need to explain the current situation first, then the value for the user, the desired change, and the expected behavior. Keep the intake sequence, maintainer refinement of external feedback, and routing declarations in PSModule/.github#89. Apply the user-directed prose alignment without changing those behaviors. Internal Tasks and Bugs retain their technical decisions and delivery plans.

The user also directs this delivery to comply with MSX Testing: Test supported behavior. The added Pester file freezes checked-in form prose and configuration shape; parsing that YAML does not exercise GitHub form behavior or an owned runtime. Remove that suite rather than recasting it as functional coverage.

Acceptance criteria

  • The feature form retains the current-situation-first introduction, user-value-before-change prompts, optional ordinary-language starters, and expected-behavior scenario.
  • The feature-form prose follows the fixed MSX writing baseline 1b0d4893c8fefabe604d04393068a8ff6f848082: remove courtesy filler, use direct imperative prompts, and use present-tense maintainer responsibilities. Only displayed prose changes; machine keys, routing declarations, required-field behavior, prompt sequence, and the removed-test state remain unchanged. The prior blob 8fb4a887c15961430e78980ac695a8af83029fbc is before-revision evidence, not the current identity.
  • Existing chooser metadata, title prefix, declared labels, description field ID, single required textarea, blank-issue fallback, and native feedback routing remain unchanged.
  • The added tests\FeatureIntake.Tests.ps1 suite is removed without equivalent required-phrase, field/count/shape snapshots, copied schema tests, simulated GitHub behavior, or a new validator/runtime.
  • The resulting PR diff contains only .github\ISSUE_TEMPLATE\10-feature.yml. Existing applicable static checks and read-only inspection are reported honestly, not as functional or live submission tests.
  • No test issue is submitted, and no new tooling, dependency, workflow, hook, live label, protection, native relationship, issue state, PR review state, or automatic-landing setting changes.

Constraints and non-goals

Revise the latest form prose for the user-directed writing campaign while preserving all in-flight intake decisions. The new prose-review direction supersedes the old wording hold, not the lifecycle or separate testing-cleanup hold. Bug/patch/general forms and technical Task/Bug plans are out of scope. The user does not want linter/validator/toolchain additions in this repository; pre-commit alignment is deferred. The withdrawn PSModule/.github#86 and retired PSModule/.github#83, PSModule/.github#84, and PSModule/.github#85 are not prerequisites and must not be restored. Do not merge or enable auto-merge.


Technical decisions

  • Retain the single existing feature form with its current situation, user value, desired change, and expected behavior sequence. Keep canonical issue and planning links; the merged source guidance preserves external refinement and Task/Bug technical plans.
  • Remove the entire newly added Pester suite: inspection found only assertions over checked-in YAML strings, keys, types, and counts, with no executable behavior owned by this repository. Do not replace it or introduce an API simulation.
  • The earlier 25 Pester results are historical content/configuration assertions, not evidence that GitHub rendered, validated, routed, or submitted the form. Withdraw the earlier functional-coverage characterization in current PR/Task evidence.
  • Use only the already installed yamllint --strict and Git read-only diff/identity inspection for this correction. Classify them as static/maintenance checks. Do not run an empty test suite or count zero tests as success.
  • A real GitHub form submission is not executed or claimed. Creating a test issue requires separate scoped authorization and is not necessary to remove prohibited tests.
  • Make one ordinary corrective commit on the existing branch, preserve the current PR state and landing settings, and refresh author review for the exact new head without reinstating retired validation/governance work.

Implementation plan

  • Preserve the latest current-situation-first feature copy and record its immutable identity before the correction.
  • Inspect the full added suite against the current Testing policy and establish that it has no owned runtime behavior to retain.
  • Remove only the added form-content/configuration snapshot suite, with no replacement tests or tooling.
  • Run the existing applicable static checks and compare the preserved form and final changed-file inventory; distinguish these checks from unexecuted live submission coverage.
  • Commit and push the focused correction, refresh PR evidence and exact-head author review, and hand off without changing issue/PR/governance state.

Current evidence boundary

The prose revision is published at 7eedb8a44c00bfa0f38d541ea88a7d7d791eaa19. GitHub reports exactly one changed repository file, .github\ISSUE_TEMPLATE\10-feature.yml, with 23 additions and 5 deletions. The current form blob is 29b9a60ed7e77745fdcf7f0e22b66026c864036a. The old 8fb4a887c15961430e78980ac695a8af83029fbc blob was preserved during the earlier test-only correction, then intentionally changed by this user-directed prose revision; it is not the current identity.

The exact-head review approved the current source at 2026-11-04T12:27:50Z, with zero inline comments and no active review issues. Existing static YAML lint and branch whitespace inspection pass. A one-time read-only comparison found changes only in the introduction, textarea description, and optional starter values; other keys and values match the preceding source. No comparison script or test suite is committed.

The fixed MSX writing baseline and official STE sources, including the complete Issue 9 PDF, were available. Relevant rules and selected dictionary entries were consulted. This is not a full word-by-word STE certification. No live form submission or runtime test was executed or claimed; static/manual observations and review do not establish that coverage.

The removed-test state is preserved. Earlier fixture counts remain historical only, and the previous functional-coverage claim stays withdrawn. PR lifecycle and landing settings remain unchanged: open, not draft, unmerged; GitHub auto-merge null; native Agent merge disabled with address_reviews/fix_ci/resolve_conflicts true and merge_pr false. The separate testing-policy cleanup remains independent and must not be bypassed.

User-directed prose alignment

The campaign owner relayed the confirmed choice, "Revise the prose and preserve the form behavior (Recommended)". Apply it only to the existing feature-form delivery. Other sessions own README/AGENTS/profile and bug/patch/general forms; do not edit those paths.

The fixed source is MSXOrg/docs at 1b0d4893c8fefabe604d04393068a8ff6f848082: Documentation Model; Natural Language, Writing Guide, Markdown, and Documentation; and the applicable issue/PR formats. The official STE overview, FAQ, and Issue 9 DOI are available. The official PDF was read in memory and its MD5 matched the published record. Relevant active-voice/procedural rules and selected dictionary entries were consulted; this is not a full word-by-word STE certification.

Before revision: the form includes the courtesy opening "Thank you for suggesting a feature", future-tense maintainer routing, question-form prompts, and optional "would like" starters. After revision: remove the courtesy opening, use imperative prompts, name maintainer review/refinement/type selection in present tense, and keep the same current situation, user benefit, requested change, and expected-result sequence. Keep ordinary-language optional starters and the same canonical URLs. No new submission requirement is introduced.

  • Read the fixed writing baseline and relevant official STE rules/dictionary; record source availability and the starting PR/Agent merge settings.
  • Revise only feature-form display prose; preserve machine keys, identity, routing, IDs, single required textarea, fallback, and removed-test state.
  • Run existing static lint and a one-time read-only interface comparison; do not add content-assertion tests, tooling, or claim live GitHub form coverage.
  • Make a small ordinary commit, push to this PR, refresh exact-head review and evidence, and report to the campaign owner without changing lifecycle or landing settings.

Lifecycle baseline: PR open, not draft, unmerged; GitHub auto-merge is null. Native Agent merge is disabled with address_reviews=true, fix_ci=true, resolve_conflicts=true, and merge_pr=false. Preserve every setting. The separate testing-policy cleanup remains independent and must not be bypassed.

Prose acceptance comparison

Concern Before Revised display copy Preserved meaning
Opening Courtesy thanks before the first instruction Starts directly with how things work today Current situation first
User benefit and change Question-form and conditional prompts Imperative Tell/Give prompts; user benefit before the requested change Same need and value, no new field or obligation
Acceptance example Real-situation question A real example with context, action, and expected result Same observable scenario; no literal Gherkin requirement
Maintainer responsibility Will review and decide how to route Review and refine feedback, then select the issue type Same maintainers and native routing; present tense
Optional starters Would help / would like Change helps / I want Same ordinary-language hints, no prefilled answer

A one-time read-only YAML comparison removes only the three permitted display values before comparing the remaining data. All non-prose keys and values match the preceding source. Canonical URLs, field label, placeholder role, required flag, and fallback remain intact. This is maintenance inspection, not a retained snapshot test or a claim that GitHub form behavior was executed.

The verified prose revision was published and reported to the repository campaign owner at source 7eedb8a. No source-availability or prose implementation blocker remains. The independent testing-policy cleanup and lifecycle hold remain in force; no landing action is performed.

Activity

  1. MariusStorhaug commented on Oct 31, 2026

    @MariusStorhaug
    MemberAuthor

    The baseline GitHub form-structure and routing plan step is complete: all 13 focused Pester checks pass, and PowerShell analysis reports no errors or warnings. Existing strict YAML diagnostics were reproduced before any form edit (missing document start and the long introductory line). The next step is a separate early draft PR; the consumer prompt change and frozen-source correspondence check remain pending.

  2. MariusStorhaug commented on Oct 31, 2026

    @MariusStorhaug
    MemberAuthor

    The separate early draft PR is open at #89 with initial head 71ee262. It contains only the 13 passing baseline form/routing checks and closes this Task alone. Consumer assertions will be made red locally before any feature-form edit; no failing consumer contract is pushed.

  3. MariusStorhaug commented on Oct 31, 2026

    @MariusStorhaug
    MemberAuthor

    The consumer assertion step is complete before implementation: the unchanged feature form passes all 13 structure/routing checks and fails all 10 new consumer-expectation checks, with no skipped or unchecked cases. The expected red command is Invoke-Pester -Path .\tests\FeatureIntake.Tests.ps1 -Output Normal -CI (exit 10). The form had no diff before that run. The edited form will also receive a document-start marker and wrapped new prose to resolve its two baseline strict YAML diagnostics without touching other forms or lint configuration.

  4. MariusStorhaug commented on Oct 31, 2026

    @MariusStorhaug
    MemberAuthor

    The form implementation step is complete at a747f71: 23 focused tests pass and targeted strict YAML lint passes. The single required description field, chooser metadata, title prefix, declared labels, and native feedback classification are preserved. Frozen correspondence was checked against MSXOrg/docs#230 at 1c8f98cabe64b12aaa5fa9fb5f51b9d03f5de9de: consumer need/motivation, ordinary-language context/action/result, maintainer routing, and retained Task/Bug technical plans agree. Both shipped canonical page links resolve; no new source anchor is used. The upstream source remains unmerged, and author review plus current-head CI readiness remain to be recorded.

  5. MariusStorhaug commented on Oct 31, 2026

    @MariusStorhaug
    MemberAuthor

    The final scoped validation/evidence step is complete: all 23 Pester checks, strict feature-form YAML lint, PowerShell analysis, current canonical link checks, and the exact two-file branch/whitespace check pass. Frozen correspondence and the standards/convergence results are in the draft PR. Formal readiness remains explicit rather than assumed: the current head has no CI checks/statuses, the source PR is unmerged, and the live hub feature label is absent. These observations do not authorize CI/governance/label changes in this slice. The explicitly requested author review is the remaining in-scope handoff step.

  6. MariusStorhaug commented on Oct 31, 2026

    @MariusStorhaug
    MemberAuthor

    The explicitly requested Copilot round approved a747f71 with both changed files covered, zero inline comments, and no active review issues: #89 (review). GitHub native closing linkage confirms that the separate draft closes only this Task. Readiness was refreshed after review: only the Copilot check succeeds; the active strict main rule still requires the absent Community file validation check from integration 15368. The source guidance PR is still unmerged, and the pre-existing live feature-label gap remains untouched. The PR body now distinguishes author approval from the unmet CI/source gates.

  7. MariusStorhaug commented on Oct 31, 2026

    @MariusStorhaug
    MemberAuthor

    The final frozen-source/author-handoff plan step is complete: the verified draft and Task were published, and the assigned coordinator handoff was saved at head a747f71. All six scoped implementation steps are checked; the native Task remains open until merge. The PR remains draft with no auto-merge while the required Community file validation check is absent and the upstream guidance is unmerged. The live-label observation stays outside this delivery.

  8. MariusStorhaug commented on Nov 4, 2026

    @MariusStorhaug
    MemberAuthor

    The user requested current situation first, followed by user value, the additional need or desired change, and expected behavior. The Task acceptance criterion and technical prompt decisions now reflect that sequence, with a new test-first revision plan. No form, routing declaration, native classification, draft state, CI/governance setting, or live label has changed yet.

  9. MariusStorhaug commented on Nov 4, 2026

    @MariusStorhaug
    MemberAuthor

    The revised parsed public form contract is red before implementation: 18 checks pass and all 7 current-situation/order/label/starter checks fail (25 total, 0 skipped). The existing feature form had no diff before that run. PowerShell analysis of the updated assertions passes. These checks cover what the GitHub form displays, not source-text or documentation drift.

  10. MariusStorhaug commented on Nov 4, 2026

    @MariusStorhaug
    MemberAuthor

    The form-copy revision is complete: current situation first, then user value, desired change, and expected behavior, with matching optional starters and no additional required fields. All 25 parsed form/routing checks now pass, as do strict feature-form YAML lint, PowerShell analysis, and diff whitespace checks. The Gherkin check now distinguishes a literal scenario template from ordinary English such as Then; it still rejects implementation solicitation and prescribed syntax. Commit, PR evidence, and refreshed author review are next.

  11. MariusStorhaug commented on Nov 4, 2026

    @MariusStorhaug
    MemberAuthor

    The November 4 revision is complete at 54b0771: current situation first, then user value, desired change, and expected behavior. All 25 focused checks plus strict YAML lint, PowerShell analysis, and branch scope/whitespace checks pass. The new-head author review approved with zero inline comments and no active issues: #89 (review). The byte-identical commit was fast-forwarded through supported Git APIs after Git transport server failures. PR review state, routing declarations, live labels, and automatic-landing settings were not changed.

  12. MariusStorhaug commented on Nov 4, 2026

    @MariusStorhaug
    MemberAuthor

    The user-directed testing-policy correction supersedes the earlier snapshot-test decisions. Full-suite inspection found no owned executable behavior: every assertion freezes checked-in form prose or configuration shape. The current Task now plans removal of that added file, preserves the latest feature-form blob exactly, and withdraws the earlier claim that 25 parsed-YAML assertions supplied functional GitHub form coverage. No replacement validator, new tooling, live submission, or state/governance change is authorized.

  13. MariusStorhaug commented on Nov 4, 2026

    @MariusStorhaug
    MemberAuthor

    The 198-line Pester snapshot suite is removed with no replacement. Existing yamllint --strict on the feature form and git diff --check pass. Read-only inspection confirms the form remains Git blob 8fb4a887c15961430e78980ac695a8af83029fbc, and the full working PR diff now contains only that form. These are static/maintenance observations, not functional GitHub coverage; no live submission or empty Pester run occurred.

  14. MariusStorhaug commented on Nov 4, 2026

    @MariusStorhaug
    MemberAuthor

    The small ordinary correction is pushed at e7a14f7. GitHub now lists only the feature form in the PR (22 additions/5 deletions); the form blob remains 8fb4a887c15961430e78980ac695a8af83029fbc. The exact-head author round approved with zero inline comments and no active issues: #89 (review). Earlier 25-check fixture results are not current functional coverage. No live form submission, test issue, replacement test/validator, dependency, hook, workflow, label/protection, native relationship, issue/PR-state, or landing-setting change occurred.

  15. MariusStorhaug commented on Nov 4, 2026

    @MariusStorhaug
    MemberAuthor

    The campaign owner relayed a user-directed prose revision while preserving form behavior. The Task acceptance text now permits that narrow edit instead of claiming the old form blob stays current. Fixed-baseline writing guidance and the official Issue 9 PDF are available; selected relevant rules/dictionary entries were read, without a claim of full STE certification. The starting PR and disabled Agent merge/landing settings are recorded and will not be changed.

  16. MariusStorhaug commented on Nov 4, 2026

    @MariusStorhaug
    MemberAuthor

    The display-prose revision removes the courtesy opening, uses imperative prompts and present-tense maintainer review/refinement/type selection, and retains the current-situation, user-value, requested-change, and expected-result sequence. One-time read-only interface comparison found no non-prose key/value changes. No tests, validators, dependencies, hooks, workflows, required fields, or lifecycle settings were added or changed. The evidence is static/manual, not a live form test.

  17. MariusStorhaug commented on Nov 4, 2026

    @MariusStorhaug
    MemberAuthor

    The prose-only commit is published at 7eedb8a. Current form blob: 29b9a60ed7e77745fdcf7f0e22b66026c864036a; the prior identical-blob claim is now explicitly limited to the earlier test-removal step. Static YAML lint and whitespace inspection pass, the one-time interface comparison preserves all non-prose data, and no removed tests or tooling returned. The exact-head review approved with zero inline comments: #89 (review). Fixed-baseline and official STE sources were available; relevant rules/selected entries were read, without a claim of full certification or live form coverage. Lifecycle and landing holds remain unchanged.

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

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions