Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Positive, neutral, and negative positions #680

Merged
merged 7 commits into from
Aug 30, 2022

Conversation

martinthomson
Copy link
Member

A revision of the position taxonomy to use positive, neutral, and negative.

Closes #242.

For the curious, jq does a decent job here.

```bash
jq '.[].mozPosition |= if . == "important" then "positive" else if . == "worth prototyping" then "positive" else if . == "non-harmful" then "neutral" else if . == "harmful" then "negative" else . end end end end' activities.json
```
@martinthomson martinthomson requested review from tantek and bgrins August 29, 2022 00:41
@ekr
Copy link
Contributor

ekr commented Aug 29, 2022

What's your proposed plan for dealing with our previous positions? I feel like we either need to go back and re-label or you need some reference for the old labels.

@martinthomson
Copy link
Member Author

This retroactively applies the new labels to old positions. In reviewing those, I didn't find any that needed changes to make sense.

After merginf this, we will need to rename labels, which isn't perfect with respect to how some of GitHub's systems manage that. But aside from those few corner cases, I don't anticipate any problems with doing that.

@ekr
Copy link
Contributor

ekr commented Aug 29, 2022

So just to confirm, the plan is actually to relabel the old issues? I don't have a problem with that, I just want to make sure we don't have things still publicly saying (for instance) non-harmful but no definition for that.

README.md Outdated Show resolved Hide resolved
@bgrins
Copy link
Member

bgrins commented Aug 29, 2022

So just to confirm, the plan is actually to relabel the old issues?

Yes, confirming that's my understanding of the plan. And the PR doing that with the web UI - it barely touches index.html but the actual content is client side rendered from activities.json which has been rewritten to the new positions. As for issues which are directly labeled in github and not part of the web UI, those would be updated automatically after renaming as per #680 (comment).

README.md Outdated
and the design fundamentals of each specification. Incomplete documentation, minor issues, or lack
interoperability testing are not reasons for a negative position, provided that intent is clear.

We might also use the following labels for specifications where we do not have enough information or
Copy link
Member

Choose a reason for hiding this comment

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

I like splitting these out into a group separate from the others. But the old definition for defer includes a lot of discretion for the reason to not set a position - it's just "does not intend to" (and even stronger with "at all"). This new group header text narrows this quite a bit by basing it on missing information. I can think of cases where any information we'd need to form a position is accessible to us, but we choose not to invest the time to do it. In some sense the text here is still accurate - we don't have enough information, but that's because we aren't seeking it. And I think defined this way it may be construed as a desire for people looking for our position to just send over more information if something is deferred.

WDYT? If we want to keep closer semantics to what we have today we could prefix the group with something simpler like "We may use the following labels for specifications where we haven't formed a position".

Copy link
Member Author

Choose a reason for hiding this comment

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

Yeah, I think that is easier. I wanted to give more context, but it turns out that trying to enumerate the list failed to be complete. Sometimes we just don't want to, but putting that into the README doesn't sound good.

activities.json Outdated
@@ -317,7 +317,7 @@
},
{
"ciuName": null,
"description": "This proposal adds an API for prompting and querying the user\u2019s contacts for one or more items with a handful of contact properties.",
"description": "This proposal adds an API for prompting and querying the user’s contacts for one or more items with a handful of contact properties.",
Copy link
Member

Choose a reason for hiding this comment

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

IIRC this unfortunately breaks the activities.py tool (as per #652)

activities.json Outdated
@@ -365,7 +365,7 @@
},
{
"ciuName": "credential-management",
"description": "This specification describes an imperative API enabling a website to request a user\u2019s credentials from a user agent, and to help the user agent correctly store user credentials for future use.",
"description": "This specification describes an imperative API enabling a website to request a user’s credentials from a user agent, and to help the user agent correctly store user credentials for future use.",
Copy link
Member

Choose a reason for hiding this comment

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

Ditto

activities.json Outdated
@@ -733,10 +733,10 @@
},
{
"ciuName": "mdn-api_keyboardlayoutmap",
"description": "This specification defines an API that allows websites to convert from a given code value to a valid key value that can be shown to the user to identify the given key. The conversion from code to key is based on the user\u2019s currently selected keyboard layout. It is intended to be used by web applications that want to treat the keyboard as a set of buttons and need to describe those buttons to the user.",
"description": "This specification defines an API that allows websites to convert from a given code value to a valid key value that can be shown to the user to identify the given key. The conversion from code to key is based on the user’s currently selected keyboard layout. It is intended to be used by web applications that want to treat the keyboard as a set of buttons and need to describe those buttons to the user.",
Copy link
Member

Choose a reason for hiding this comment

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

Ditto

activities.json Outdated
@@ -1018,11 +1018,11 @@
},
{
"ciuName": null,
"description": "This document specifies modifications to Fetch which are intended to mitigate the risks associated with unintentional exposure of devices and servers on a client\u2019s internal network to the web at large.",
"description": "This document specifies modifications to Fetch which are intended to mitigate the risks associated with unintentional exposure of devices and servers on a client’s internal network to the web at large.",
Copy link
Member

Choose a reason for hiding this comment

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

Ditto - last one :)

Copy link
Member Author

Choose a reason for hiding this comment

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

Thanks for catching these. ./activities.py sort fixed them all up.

Copy link
Member

@bgrins bgrins left a comment

Choose a reason for hiding this comment

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

LGTM

Copy link
Member

@tantek tantek left a comment

Choose a reason for hiding this comment

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

Looks good to me with the updated edits.

@martinthomson martinthomson merged commit 33bdc22 into mozilla:main Aug 30, 2022
@martinthomson martinthomson deleted the positive-neutral-negative branch August 30, 2022 22:11
@zcorpan zcorpan mentioned this pull request Dec 19, 2022
Daasin pushed a commit to FOSS-Archives/standards-positions that referenced this pull request Jan 5, 2023
* Update position taxonomy

For the curious, jq does a decent job here.

```bash
jq '.[].mozPosition |= if . == "important" then "positive" else if . == "worth prototyping" then "positive" else if . == "non-harmful" then "neutral" else if . == "harmful" then "negative" else . end end end end' activities.json
```

* Fix positions in index.html

* Provide more context on positions in README

* Fix misimpression

* of

* Revert \u2019

* We sometimes don't form a view
@zcorpan zcorpan mentioned this pull request Oct 25, 2024
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.

Consider renaming worth prototyping (or adding a label)
4 participants