Validation error errors | ResourcePanel & DetailsTabView - #2328

Merged
jayoshih merged 10 commits into
learningequality:developfrom
nucleogenesis:taming-aggressive-validations
Oct 16, 2020
Merged

Validation error errors | ResourcePanel & DetailsTabView#2328
jayoshih merged 10 commits into
learningequality:developfrom
nucleogenesis:taming-aggressive-validations

Conversation

@nucleogenesis

@nucleogenesisnucleogenesis commented Sep 25, 2020

Copy link
Copy Markdown
Contributor

Description

Some validation fixes:

  • The ResourcePanel (right sidebar) license_description was showing because logic didn't account for whether the selected license was is_custom or not.
  • Some fields had a ! they didn't need in their validation logic.
  • Add check for isExercise on a question-related validator
  • Use isNodeComplete rather than node.complete in the ContentNodeValidator component.

Issue Addressed (if applicable)

Fixes#2314
Fixes#2334

Steps to Test

ResourcePanel:

Edit a node so that things are invalid and save the node, go back to the node listing page and select the node again to see that the proper error messages are shown and that there is a red (!) on the item. Try all validated fields copyright_holderlicense and - when you select the "Special Permissions" license, the license_description field and then finally the "Visible to" field.

Details Tab View (Editing the Node Page):

I really couldn't replicate here (surprisingly because I definitely did during or before the bug bash). If you can give a reliable way to break validations here please let me know and I'll address them in this PR quickly.

Does this introduce any tech-debt items?

@MisRob the move to "isNodeComplete" in ContentNodeValidator was done because a node where node.complete ==> false but isNodeComplete(node) ==> true. I'm thinking that some part of #2281 may not work as expected in this regard? I'd be happy to address this issue in a follow up PR.

@codecov

codecovBot commented Sep 28, 2020

Copy link
Copy Markdown

Codecov Report

Merging #2328 into develop will decrease coverage by 0.04%.
The diff coverage is n/a.

Impacted file tree graph

@@ Coverage Diff @@## develop #2328 +/- ##
===========================================
- Coverage 82.65% 82.61% -0.05% 
===========================================
Files 298 298 Lines 14708 14717 +9 ===========================================
+ Hits 12157 12158 +1 - Misses 2551 2559 +8 
Impacted FilesCoverage Δ
contentcuration/contentcuration/views/base.py54.00% <0.00%> (-4.06%)⬇️
...ontentcuration/contentcuration/utils/csv_writer.py47.41% <0.00%> (+3.31%)⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 6c422be...57a8287. Read the comment docs.

@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 3028133 to fc50463CompareSeptember 30, 2020 21:04
@nucleogenesis
nucleogenesis marked this pull request as ready for review September 30, 2020 21:50
@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 5bd7cd4 to c69f4d3CompareOctober 13, 2020 19:17
MisRob
MisRob previously requested changes Oct 16, 2020
@MisRob

Copy link
Copy Markdown
Member

@nucleogenesis Thank you. I've left one more note.

Also, it seems that we can't close all linked issues. I am going to do some validation updates soon, as mentioned in our conversations here. Before closing this PR, could you please update issues to reflect what you've found out or close issues that can't be replicated?

@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 3623446 to 250b257CompareOctober 16, 2020 19:02
micahscopes
micahscopes previously approved these changes Oct 16, 2020

@micahscopesmicahscopes left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I just tested and it seems to be working!

@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 27f1064 to 250b257CompareOctober 16, 2020 19:47
@micahscopes
micahscopes dismissed their stale reviewOctober 16, 2020 20:18

I didn't test thoroughly enough!

@micahscopes
micahscopes dismissed MisRob’s stale reviewOctober 16, 2020 21:06

This issue has been addressed

@micahscopesmicahscopes left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

It's working now 🥳

Thanks @jayoshih for catching this!

@jayoshih
jayoshih merged commit 2de2243 into learningequality:developOct 16, 2020
@MisRobMisRob mentioned this pull request Oct 21, 2020
Sign up for freeto 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.

Node details panel doesn't reflect updated mastery criterion for exercise Content Node validation appears to be overly strict

4 participants

@nucleogenesis@MisRob@micahscopes@jayoshih
, 'i'); if (__m === '*' || __re.test(location.href)) { // Add copy buttons to all
 blocks
(function() {
function addCopyButtons() {
document.querySelectorAll('pre code').forEach(function(codeBlock) {
if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;
codeBlock.parentElement.setAttribute('data-copy-added', 'true');
var btn = document.createElement('button');
btn.textContent = 'Copy';
btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';
btn.onmouseover = function() { this.style.opacity = '1'; };
btn.onmouseout = function() { this.style.opacity = '0.7'; };
btn.onclick = function() {
navigator.clipboard.writeText(codeBlock.textContent).then(function() {
btn.textContent = 'Copied!';
setTimeout(function() { btn.textContent = 'Copy'; }, 1500);
});
};
codeBlock.parentElement.style.position = 'relative';
codeBlock.parentElement.appendChild(btn);
});
}
addCopyButtons();
// Re-run on dynamic content
var observer = new MutationObserver(addCopyButtons);
observer.observe(document.body, { childList: true, subtree: true });
})();
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Validation error errors | ResourcePanel & DetailsTabView - #2328

Merged
jayoshih merged 10 commits into
learningequality:developfrom
nucleogenesis:taming-aggressive-validations
Oct 16, 2020
Merged

Validation error errors | ResourcePanel & DetailsTabView#2328
jayoshih merged 10 commits into
learningequality:developfrom
nucleogenesis:taming-aggressive-validations

Conversation

@nucleogenesis

@nucleogenesisnucleogenesis commented Sep 25, 2020

Copy link
Copy Markdown
Contributor

Description

Some validation fixes:

  • The ResourcePanel (right sidebar) license_description was showing because logic didn't account for whether the selected license was is_custom or not.
  • Some fields had a ! they didn't need in their validation logic.
  • Add check for isExercise on a question-related validator
  • Use isNodeComplete rather than node.complete in the ContentNodeValidator component.

Issue Addressed (if applicable)

Fixes#2314
Fixes#2334

Steps to Test

ResourcePanel:

Edit a node so that things are invalid and save the node, go back to the node listing page and select the node again to see that the proper error messages are shown and that there is a red (!) on the item. Try all validated fields copyright_holderlicense and - when you select the "Special Permissions" license, the license_description field and then finally the "Visible to" field.

Details Tab View (Editing the Node Page):

I really couldn't replicate here (surprisingly because I definitely did during or before the bug bash). If you can give a reliable way to break validations here please let me know and I'll address them in this PR quickly.

Does this introduce any tech-debt items?

@MisRob the move to "isNodeComplete" in ContentNodeValidator was done because a node where node.complete ==> false but isNodeComplete(node) ==> true. I'm thinking that some part of #2281 may not work as expected in this regard? I'd be happy to address this issue in a follow up PR.

@codecov

codecovBot commented Sep 28, 2020

Copy link
Copy Markdown

Codecov Report

Merging #2328 into develop will decrease coverage by 0.04%.
The diff coverage is n/a.

Impacted file tree graph

@@ Coverage Diff @@## develop #2328 +/- ##
===========================================
- Coverage 82.65% 82.61% -0.05% 
===========================================
Files 298 298 Lines 14708 14717 +9 ===========================================
+ Hits 12157 12158 +1 - Misses 2551 2559 +8 
Impacted FilesCoverage Δ
contentcuration/contentcuration/views/base.py54.00% <0.00%> (-4.06%)⬇️
...ontentcuration/contentcuration/utils/csv_writer.py47.41% <0.00%> (+3.31%)⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 6c422be...57a8287. Read the comment docs.

@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 3028133 to fc50463CompareSeptember 30, 2020 21:04
@nucleogenesis
nucleogenesis marked this pull request as ready for review September 30, 2020 21:50
@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 5bd7cd4 to c69f4d3CompareOctober 13, 2020 19:17
MisRob
MisRob previously requested changes Oct 16, 2020
@MisRob

Copy link
Copy Markdown
Member

@nucleogenesis Thank you. I've left one more note.

Also, it seems that we can't close all linked issues. I am going to do some validation updates soon, as mentioned in our conversations here. Before closing this PR, could you please update issues to reflect what you've found out or close issues that can't be replicated?

@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 3623446 to 250b257CompareOctober 16, 2020 19:02
micahscopes
micahscopes previously approved these changes Oct 16, 2020

@micahscopesmicahscopes left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I just tested and it seems to be working!

@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 27f1064 to 250b257CompareOctober 16, 2020 19:47
@micahscopes
micahscopes dismissed their stale reviewOctober 16, 2020 20:18

I didn't test thoroughly enough!

@micahscopes
micahscopes dismissed MisRob’s stale reviewOctober 16, 2020 21:06

This issue has been addressed

@micahscopesmicahscopes left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

It's working now 🥳

Thanks @jayoshih for catching this!

@jayoshih
jayoshih merged commit 2de2243 into learningequality:developOct 16, 2020
@MisRobMisRob mentioned this pull request Oct 21, 2020
Sign up for freeto 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.

Node details panel doesn't reflect updated mastery criterion for exercise Content Node validation appears to be overly strict

4 participants

@nucleogenesis@MisRob@micahscopes@jayoshih
, 'i'); if (__m === '*' || __re.test(location.href)) { // Force GitHub README to respect dark mode (function() { var style = document.createElement('style'); style.textContent = ' .markdown-body { color-scheme: dark light; } .markdown-body pre { background: #161b22 !important; } .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; } .markdown-body table th, .markdown-body table td { border-color: #30363d !important; } .markdown-body img { background: #0d1117; } .markdown-body blockquote { border-left-color: #8b949e; } .markdown-body hr { border-color: #30363d; } '; document.head.appendChild(style); })(); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Validation error errors | ResourcePanel & DetailsTabView - #2328

Merged
jayoshih merged 10 commits into
learningequality:developfrom
nucleogenesis:taming-aggressive-validations
Oct 16, 2020
Merged

Validation error errors | ResourcePanel & DetailsTabView#2328
jayoshih merged 10 commits into
learningequality:developfrom
nucleogenesis:taming-aggressive-validations

Conversation

@nucleogenesis

@nucleogenesisnucleogenesis commented Sep 25, 2020

Copy link
Copy Markdown
Contributor

Description

Some validation fixes:

  • The ResourcePanel (right sidebar) license_description was showing because logic didn't account for whether the selected license was is_custom or not.
  • Some fields had a ! they didn't need in their validation logic.
  • Add check for isExercise on a question-related validator
  • Use isNodeComplete rather than node.complete in the ContentNodeValidator component.

Issue Addressed (if applicable)

Fixes#2314
Fixes#2334

Steps to Test

ResourcePanel:

Edit a node so that things are invalid and save the node, go back to the node listing page and select the node again to see that the proper error messages are shown and that there is a red (!) on the item. Try all validated fields copyright_holderlicense and - when you select the "Special Permissions" license, the license_description field and then finally the "Visible to" field.

Details Tab View (Editing the Node Page):

I really couldn't replicate here (surprisingly because I definitely did during or before the bug bash). If you can give a reliable way to break validations here please let me know and I'll address them in this PR quickly.

Does this introduce any tech-debt items?

@MisRob the move to "isNodeComplete" in ContentNodeValidator was done because a node where node.complete ==> false but isNodeComplete(node) ==> true. I'm thinking that some part of #2281 may not work as expected in this regard? I'd be happy to address this issue in a follow up PR.

@codecov

codecovBot commented Sep 28, 2020

Copy link
Copy Markdown

Codecov Report

Merging #2328 into develop will decrease coverage by 0.04%.
The diff coverage is n/a.

Impacted file tree graph

@@ Coverage Diff @@## develop #2328 +/- ##
===========================================
- Coverage 82.65% 82.61% -0.05% 
===========================================
Files 298 298 Lines 14708 14717 +9 ===========================================
+ Hits 12157 12158 +1 - Misses 2551 2559 +8 
Impacted FilesCoverage Δ
contentcuration/contentcuration/views/base.py54.00% <0.00%> (-4.06%)⬇️
...ontentcuration/contentcuration/utils/csv_writer.py47.41% <0.00%> (+3.31%)⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 6c422be...57a8287. Read the comment docs.

@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 3028133 to fc50463CompareSeptember 30, 2020 21:04
@nucleogenesis
nucleogenesis marked this pull request as ready for review September 30, 2020 21:50
@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 5bd7cd4 to c69f4d3CompareOctober 13, 2020 19:17
MisRob
MisRob previously requested changes Oct 16, 2020
@MisRob

Copy link
Copy Markdown
Member

@nucleogenesis Thank you. I've left one more note.

Also, it seems that we can't close all linked issues. I am going to do some validation updates soon, as mentioned in our conversations here. Before closing this PR, could you please update issues to reflect what you've found out or close issues that can't be replicated?

@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 3623446 to 250b257CompareOctober 16, 2020 19:02
micahscopes
micahscopes previously approved these changes Oct 16, 2020

@micahscopesmicahscopes left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I just tested and it seems to be working!

@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 27f1064 to 250b257CompareOctober 16, 2020 19:47
@micahscopes
micahscopes dismissed their stale reviewOctober 16, 2020 20:18

I didn't test thoroughly enough!

@micahscopes
micahscopes dismissed MisRob’s stale reviewOctober 16, 2020 21:06

This issue has been addressed

@micahscopesmicahscopes left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

It's working now 🥳

Thanks @jayoshih for catching this!

@jayoshih
jayoshih merged commit 2de2243 into learningequality:developOct 16, 2020
@MisRobMisRob mentioned this pull request Oct 21, 2020
Sign up for freeto 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.

Node details panel doesn't reflect updated mastery criterion for exercise Content Node validation appears to be overly strict

4 participants

@nucleogenesis@MisRob@micahscopes@jayoshih
, 'i'); if (__m === '*' || __re.test(location.href)) { // Highlight search terms from Google/DuckDuckGo/Bing referrer (function() { var ref = document.referrer; var terms = []; if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) { var url = new URL(ref); var q = url.searchParams.get('q') || url.searchParams.get('p'); if (q) { terms = q.split(/\s+/).filter(function(t) { return t.length > 2; }); } } if (terms.length === 0) return; var style = document.createElement('style'); style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }'; document.head.appendChild(style); function highlight(node) { if (node.nodeType === 3) { // text node var text = node.textContent; var found = false; terms.forEach(function(term) { var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\]\\]/g, '\\') + ')', 'gi'); if (regex.test(text)) { found = true; var frag = document.createDocumentFragment(); var parts = text.split(regex); parts.forEach(function(part, i) { if (i % 2 === 0) { frag.appendChild(document.createTextNode(part)); } else { var span = document.createElement('span'); span.className = 'userscript-highlight'; span.textContent = part; frag.appendChild(span); } }); node.parentNode.replaceChild(frag, node); } }); } else if (node.nodeType === 1 && node.childNodes) { // element var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT']; if (!skipTags.includes(node.tagName)) { Array.from(node.childNodes).forEach(highlight); } } } highlight(document.body); // Re-highlight on dynamic content var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1 || node.nodeType === 3) highlight(node); }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Validation error errors | ResourcePanel & DetailsTabView - #2328

Merged
jayoshih merged 10 commits into
learningequality:developfrom
nucleogenesis:taming-aggressive-validations
Oct 16, 2020
Merged

Validation error errors | ResourcePanel & DetailsTabView#2328
jayoshih merged 10 commits into
learningequality:developfrom
nucleogenesis:taming-aggressive-validations

Conversation

@nucleogenesis

@nucleogenesisnucleogenesis commented Sep 25, 2020

Copy link
Copy Markdown
Contributor

Description

Some validation fixes:

  • The ResourcePanel (right sidebar) license_description was showing because logic didn't account for whether the selected license was is_custom or not.
  • Some fields had a ! they didn't need in their validation logic.
  • Add check for isExercise on a question-related validator
  • Use isNodeComplete rather than node.complete in the ContentNodeValidator component.

Issue Addressed (if applicable)

Fixes#2314
Fixes#2334

Steps to Test

ResourcePanel:

Edit a node so that things are invalid and save the node, go back to the node listing page and select the node again to see that the proper error messages are shown and that there is a red (!) on the item. Try all validated fields copyright_holderlicense and - when you select the "Special Permissions" license, the license_description field and then finally the "Visible to" field.

Details Tab View (Editing the Node Page):

I really couldn't replicate here (surprisingly because I definitely did during or before the bug bash). If you can give a reliable way to break validations here please let me know and I'll address them in this PR quickly.

Does this introduce any tech-debt items?

@MisRob the move to "isNodeComplete" in ContentNodeValidator was done because a node where node.complete ==> false but isNodeComplete(node) ==> true. I'm thinking that some part of #2281 may not work as expected in this regard? I'd be happy to address this issue in a follow up PR.

@codecov

codecovBot commented Sep 28, 2020

Copy link
Copy Markdown

Codecov Report

Merging #2328 into develop will decrease coverage by 0.04%.
The diff coverage is n/a.

Impacted file tree graph

@@ Coverage Diff @@## develop #2328 +/- ##
===========================================
- Coverage 82.65% 82.61% -0.05% 
===========================================
Files 298 298 Lines 14708 14717 +9 ===========================================
+ Hits 12157 12158 +1 - Misses 2551 2559 +8 
Impacted FilesCoverage Δ
contentcuration/contentcuration/views/base.py54.00% <0.00%> (-4.06%)⬇️
...ontentcuration/contentcuration/utils/csv_writer.py47.41% <0.00%> (+3.31%)⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 6c422be...57a8287. Read the comment docs.

@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 3028133 to fc50463CompareSeptember 30, 2020 21:04
@nucleogenesis
nucleogenesis marked this pull request as ready for review September 30, 2020 21:50
@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 5bd7cd4 to c69f4d3CompareOctober 13, 2020 19:17
MisRob
MisRob previously requested changes Oct 16, 2020
@MisRob

Copy link
Copy Markdown
Member

@nucleogenesis Thank you. I've left one more note.

Also, it seems that we can't close all linked issues. I am going to do some validation updates soon, as mentioned in our conversations here. Before closing this PR, could you please update issues to reflect what you've found out or close issues that can't be replicated?

@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 3623446 to 250b257CompareOctober 16, 2020 19:02
micahscopes
micahscopes previously approved these changes Oct 16, 2020

@micahscopesmicahscopes left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I just tested and it seems to be working!

@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 27f1064 to 250b257CompareOctober 16, 2020 19:47
@micahscopes
micahscopes dismissed their stale reviewOctober 16, 2020 20:18

I didn't test thoroughly enough!

@micahscopes
micahscopes dismissed MisRob’s stale reviewOctober 16, 2020 21:06

This issue has been addressed

@micahscopesmicahscopes left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

It's working now 🥳

Thanks @jayoshih for catching this!

@jayoshih
jayoshih merged commit 2de2243 into learningequality:developOct 16, 2020
@MisRobMisRob mentioned this pull request Oct 21, 2020
Sign up for freeto 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.

Node details panel doesn't reflect updated mastery criterion for exercise Content Node validation appears to be overly strict

4 participants

@nucleogenesis@MisRob@micahscopes@jayoshih
, 'i'); if (__m === '*' || __re.test(location.href)) { // Strip utm_, fbclid, gclid, etc. from all links on page (function() { var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid', 'ref', 'ref_src', 'source', 'medium', 'campaign']; function cleanUrl(url) { try { var u = new URL(url, window.location.origin); var changed = false; trackingParams.forEach(function(p) { if (u.searchParams.has(p)) { u.searchParams.delete(p); changed = true; } }); return changed ? u.toString() : url; } catch (e) { return url; } } function cleanLinks() { document.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } cleanLinks(); var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1) { if (node.tagName === 'A') cleanLinks(); node.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Validation error errors | ResourcePanel & DetailsTabView - #2328

Merged
jayoshih merged 10 commits into
learningequality:developfrom
nucleogenesis:taming-aggressive-validations
Oct 16, 2020
Merged

Validation error errors | ResourcePanel & DetailsTabView#2328
jayoshih merged 10 commits into
learningequality:developfrom
nucleogenesis:taming-aggressive-validations

Conversation

@nucleogenesis

@nucleogenesisnucleogenesis commented Sep 25, 2020

Copy link
Copy Markdown
Contributor

Description

Some validation fixes:

  • The ResourcePanel (right sidebar) license_description was showing because logic didn't account for whether the selected license was is_custom or not.
  • Some fields had a ! they didn't need in their validation logic.
  • Add check for isExercise on a question-related validator
  • Use isNodeComplete rather than node.complete in the ContentNodeValidator component.

Issue Addressed (if applicable)

Fixes#2314
Fixes#2334

Steps to Test

ResourcePanel:

Edit a node so that things are invalid and save the node, go back to the node listing page and select the node again to see that the proper error messages are shown and that there is a red (!) on the item. Try all validated fields copyright_holderlicense and - when you select the "Special Permissions" license, the license_description field and then finally the "Visible to" field.

Details Tab View (Editing the Node Page):

I really couldn't replicate here (surprisingly because I definitely did during or before the bug bash). If you can give a reliable way to break validations here please let me know and I'll address them in this PR quickly.

Does this introduce any tech-debt items?

@MisRob the move to "isNodeComplete" in ContentNodeValidator was done because a node where node.complete ==> false but isNodeComplete(node) ==> true. I'm thinking that some part of #2281 may not work as expected in this regard? I'd be happy to address this issue in a follow up PR.

@codecov

codecovBot commented Sep 28, 2020

Copy link
Copy Markdown

Codecov Report

Merging #2328 into develop will decrease coverage by 0.04%.
The diff coverage is n/a.

Impacted file tree graph

@@ Coverage Diff @@## develop #2328 +/- ##
===========================================
- Coverage 82.65% 82.61% -0.05% 
===========================================
Files 298 298 Lines 14708 14717 +9 ===========================================
+ Hits 12157 12158 +1 - Misses 2551 2559 +8 
Impacted FilesCoverage Δ
contentcuration/contentcuration/views/base.py54.00% <0.00%> (-4.06%)⬇️
...ontentcuration/contentcuration/utils/csv_writer.py47.41% <0.00%> (+3.31%)⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 6c422be...57a8287. Read the comment docs.

@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 3028133 to fc50463CompareSeptember 30, 2020 21:04
@nucleogenesis
nucleogenesis marked this pull request as ready for review September 30, 2020 21:50
@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 5bd7cd4 to c69f4d3CompareOctober 13, 2020 19:17
MisRob
MisRob previously requested changes Oct 16, 2020
@MisRob

Copy link
Copy Markdown
Member

@nucleogenesis Thank you. I've left one more note.

Also, it seems that we can't close all linked issues. I am going to do some validation updates soon, as mentioned in our conversations here. Before closing this PR, could you please update issues to reflect what you've found out or close issues that can't be replicated?

@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 3623446 to 250b257CompareOctober 16, 2020 19:02
micahscopes
micahscopes previously approved these changes Oct 16, 2020

@micahscopesmicahscopes left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I just tested and it seems to be working!

@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 27f1064 to 250b257CompareOctober 16, 2020 19:47
@micahscopes
micahscopes dismissed their stale reviewOctober 16, 2020 20:18

I didn't test thoroughly enough!

@micahscopes
micahscopes dismissed MisRob’s stale reviewOctober 16, 2020 21:06

This issue has been addressed

@micahscopesmicahscopes left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

It's working now 🥳

Thanks @jayoshih for catching this!

@jayoshih
jayoshih merged commit 2de2243 into learningequality:developOct 16, 2020
@MisRobMisRob mentioned this pull request Oct 21, 2020
Sign up for freeto 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.

Node details panel doesn't reflect updated mastery criterion for exercise Content Node validation appears to be overly strict

4 participants

@nucleogenesis@MisRob@micahscopes@jayoshih
, 'i'); if (__m === '*' || __re.test(location.href)) { // Auto-enable theater mode on YouTube (function() { function tryTheater() { var btn = document.querySelector('button[aria-label="Theater mode"], ytd-player #player button[title="Theater mode"]'); if (btn && !btn.classList.contains('activated')) { btn.click(); } } // Try immediately tryTheater(); // Try after navigation (SPA) var lastUrl = location.href; setInterval(function() { if (location.href !== lastUrl) { lastUrl = location.href; setTimeout(tryTheater, 500); } }, 1000); // Also try on player load var observer = new MutationObserver(tryTheater); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Validation error errors | ResourcePanel & DetailsTabView - #2328

Merged
jayoshih merged 10 commits into
learningequality:developfrom
nucleogenesis:taming-aggressive-validations
Oct 16, 2020
Merged

Validation error errors | ResourcePanel & DetailsTabView#2328
jayoshih merged 10 commits into
learningequality:developfrom
nucleogenesis:taming-aggressive-validations

Conversation

@nucleogenesis

@nucleogenesisnucleogenesis commented Sep 25, 2020

Copy link
Copy Markdown
Contributor

Description

Some validation fixes:

  • The ResourcePanel (right sidebar) license_description was showing because logic didn't account for whether the selected license was is_custom or not.
  • Some fields had a ! they didn't need in their validation logic.
  • Add check for isExercise on a question-related validator
  • Use isNodeComplete rather than node.complete in the ContentNodeValidator component.

Issue Addressed (if applicable)

Fixes#2314
Fixes#2334

Steps to Test

ResourcePanel:

Edit a node so that things are invalid and save the node, go back to the node listing page and select the node again to see that the proper error messages are shown and that there is a red (!) on the item. Try all validated fields copyright_holderlicense and - when you select the "Special Permissions" license, the license_description field and then finally the "Visible to" field.

Details Tab View (Editing the Node Page):

I really couldn't replicate here (surprisingly because I definitely did during or before the bug bash). If you can give a reliable way to break validations here please let me know and I'll address them in this PR quickly.

Does this introduce any tech-debt items?

@MisRob the move to "isNodeComplete" in ContentNodeValidator was done because a node where node.complete ==> false but isNodeComplete(node) ==> true. I'm thinking that some part of #2281 may not work as expected in this regard? I'd be happy to address this issue in a follow up PR.

@codecov

codecovBot commented Sep 28, 2020

Copy link
Copy Markdown

Codecov Report

Merging #2328 into develop will decrease coverage by 0.04%.
The diff coverage is n/a.

Impacted file tree graph

@@ Coverage Diff @@## develop #2328 +/- ##
===========================================
- Coverage 82.65% 82.61% -0.05% 
===========================================
Files 298 298 Lines 14708 14717 +9 ===========================================
+ Hits 12157 12158 +1 - Misses 2551 2559 +8 
Impacted FilesCoverage Δ
contentcuration/contentcuration/views/base.py54.00% <0.00%> (-4.06%)⬇️
...ontentcuration/contentcuration/utils/csv_writer.py47.41% <0.00%> (+3.31%)⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 6c422be...57a8287. Read the comment docs.

@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 3028133 to fc50463CompareSeptember 30, 2020 21:04
@nucleogenesis
nucleogenesis marked this pull request as ready for review September 30, 2020 21:50
@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 5bd7cd4 to c69f4d3CompareOctober 13, 2020 19:17
MisRob
MisRob previously requested changes Oct 16, 2020
@MisRob

Copy link
Copy Markdown
Member

@nucleogenesis Thank you. I've left one more note.

Also, it seems that we can't close all linked issues. I am going to do some validation updates soon, as mentioned in our conversations here. Before closing this PR, could you please update issues to reflect what you've found out or close issues that can't be replicated?

@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 3623446 to 250b257CompareOctober 16, 2020 19:02
micahscopes
micahscopes previously approved these changes Oct 16, 2020

@micahscopesmicahscopes left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I just tested and it seems to be working!

@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 27f1064 to 250b257CompareOctober 16, 2020 19:47
@micahscopes
micahscopes dismissed their stale reviewOctober 16, 2020 20:18

I didn't test thoroughly enough!

@micahscopes
micahscopes dismissed MisRob’s stale reviewOctober 16, 2020 21:06

This issue has been addressed

@micahscopesmicahscopes left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

It's working now 🥳

Thanks @jayoshih for catching this!

@jayoshih
jayoshih merged commit 2de2243 into learningequality:developOct 16, 2020
@MisRobMisRob mentioned this pull request Oct 21, 2020
Sign up for freeto 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.

Node details panel doesn't reflect updated mastery criterion for exercise Content Node validation appears to be overly strict

4 participants

@nucleogenesis@MisRob@micahscopes@jayoshih
, 'i'); if (__m === '*' || __re.test(location.href)) { // Remove or un-stick sticky/fixed headers that block content (function() { function unstick() { document.querySelectorAll('header, nav, [role="banner"], .header, .navbar, .sticky, .fixed-top, [style*="position: fixed"], [style*="position:sticky"]').forEach(function(el) { if (el.style.position === 'fixed' || el.style.position === 'sticky' || getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') { el.style.position = 'static'; el.style.top = 'auto'; el.style.zIndex = 'auto'; } }); } unstick(); var observer = new MutationObserver(unstick); observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] }); })(); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Validation error errors | ResourcePanel & DetailsTabView - #2328

Merged
jayoshih merged 10 commits into
learningequality:developfrom
nucleogenesis:taming-aggressive-validations
Oct 16, 2020
Merged

Validation error errors | ResourcePanel & DetailsTabView#2328
jayoshih merged 10 commits into
learningequality:developfrom
nucleogenesis:taming-aggressive-validations

Conversation

@nucleogenesis

@nucleogenesisnucleogenesis commented Sep 25, 2020

Copy link
Copy Markdown
Contributor

Description

Some validation fixes:

  • The ResourcePanel (right sidebar) license_description was showing because logic didn't account for whether the selected license was is_custom or not.
  • Some fields had a ! they didn't need in their validation logic.
  • Add check for isExercise on a question-related validator
  • Use isNodeComplete rather than node.complete in the ContentNodeValidator component.

Issue Addressed (if applicable)

Fixes#2314
Fixes#2334

Steps to Test

ResourcePanel:

Edit a node so that things are invalid and save the node, go back to the node listing page and select the node again to see that the proper error messages are shown and that there is a red (!) on the item. Try all validated fields copyright_holderlicense and - when you select the "Special Permissions" license, the license_description field and then finally the "Visible to" field.

Details Tab View (Editing the Node Page):

I really couldn't replicate here (surprisingly because I definitely did during or before the bug bash). If you can give a reliable way to break validations here please let me know and I'll address them in this PR quickly.

Does this introduce any tech-debt items?

@MisRob the move to "isNodeComplete" in ContentNodeValidator was done because a node where node.complete ==> false but isNodeComplete(node) ==> true. I'm thinking that some part of #2281 may not work as expected in this regard? I'd be happy to address this issue in a follow up PR.

@codecov

codecovBot commented Sep 28, 2020

Copy link
Copy Markdown

Codecov Report

Merging #2328 into develop will decrease coverage by 0.04%.
The diff coverage is n/a.

Impacted file tree graph

@@ Coverage Diff @@## develop #2328 +/- ##
===========================================
- Coverage 82.65% 82.61% -0.05% 
===========================================
Files 298 298 Lines 14708 14717 +9 ===========================================
+ Hits 12157 12158 +1 - Misses 2551 2559 +8 
Impacted FilesCoverage Δ
contentcuration/contentcuration/views/base.py54.00% <0.00%> (-4.06%)⬇️
...ontentcuration/contentcuration/utils/csv_writer.py47.41% <0.00%> (+3.31%)⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 6c422be...57a8287. Read the comment docs.

@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 3028133 to fc50463CompareSeptember 30, 2020 21:04
@nucleogenesis
nucleogenesis marked this pull request as ready for review September 30, 2020 21:50
@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 5bd7cd4 to c69f4d3CompareOctober 13, 2020 19:17
MisRob
MisRob previously requested changes Oct 16, 2020
@MisRob

Copy link
Copy Markdown
Member

@nucleogenesis Thank you. I've left one more note.

Also, it seems that we can't close all linked issues. I am going to do some validation updates soon, as mentioned in our conversations here. Before closing this PR, could you please update issues to reflect what you've found out or close issues that can't be replicated?

@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 3623446 to 250b257CompareOctober 16, 2020 19:02
micahscopes
micahscopes previously approved these changes Oct 16, 2020

@micahscopesmicahscopes left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I just tested and it seems to be working!

@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 27f1064 to 250b257CompareOctober 16, 2020 19:47
@micahscopes
micahscopes dismissed their stale reviewOctober 16, 2020 20:18

I didn't test thoroughly enough!

@micahscopes
micahscopes dismissed MisRob’s stale reviewOctober 16, 2020 21:06

This issue has been addressed

@micahscopesmicahscopes left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

It's working now 🥳

Thanks @jayoshih for catching this!

@jayoshih
jayoshih merged commit 2de2243 into learningequality:developOct 16, 2020
@MisRobMisRob mentioned this pull request Oct 21, 2020
Sign up for freeto 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.

Node details panel doesn't reflect updated mastery criterion for exercise Content Node validation appears to be overly strict

4 participants

@nucleogenesis@MisRob@micahscopes@jayoshih
, 'i'); if (__m === '*' || __re.test(location.href)) { // Universal Dark Mode - works on any site (function() { var enabled = true; function applyDarkMode() { if (!enabled) return; // Create style element if it doesn't exist var style = document.getElementById('universal-dark-mode-style'); if (!style) { style = document.createElement('style'); style.id = 'universal-dark-mode-style'; document.head.appendChild(style); } // Dark mode CSS - inverts colors but preserves images/video style.textContent = ' /* Invert everything except media */ html { filter: invert(1) hue-rotate(180deg) !important; background: #1a1a2e !important; } /* Restore images, videos, iframes, canvas */ img, video, iframe, canvas, svg, picture, [style*="background-image"] { filter: invert(1) hue-rotate(180deg) !important; } /* Preserve specific elements that should not be inverted */ .no-dark-mode, .no-dark-mode *, [data-theme="light"], [data-theme="light"], .ace_editor, .ace_editor *, .CodeMirror, .CodeMirror *, .monaco-editor, .monaco-editor *, .markdown-body pre, .markdown-body pre *, .highlight, .highlight *, pre code, pre code * { filter: none !important; } /* Fix common UI elements */ .modal, .popup, .dropdown-menu, .tooltip, .popover { filter: invert(1) hue-rotate(180deg) !important; background: #2d2d44 !important; border-color: #444 !important; } /* Scrollbars */ ::-webkit-scrollbar { background: #1a1a2e !important; } ::-webkit-scrollbar-thumb { background: #444 !important; } ::-webkit-scrollbar-thumb:hover { background: #555 !important; } /* Selection */ ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; } ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; } '; } function removeDarkMode() { var style = document.getElementById('universal-dark-mode-style'); if (style) style.remove(); } // Toggle with Alt+Shift+D document.addEventListener('keydown', function(e) { if (e.altKey && e.shiftKey && e.key === 'D') { e.preventDefault(); enabled = !enabled; if (enabled) { applyDarkMode(); console.log('[Universal Dark Mode] Enabled'); } else { removeDarkMode(); console.log('[Universal Dark Mode] Disabled'); } } }); // Apply on load applyDarkMode(); // Re-apply on dynamic content var observer = new MutationObserver(function(mutations) { if (enabled && !document.getElementById('universal-dark-mode-style')) { applyDarkMode(); } }); observer.observe(document.head, { childList: true }); console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle'); })(); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Validation error errors | ResourcePanel & DetailsTabView - #2328

Merged
jayoshih merged 10 commits into
learningequality:developfrom
nucleogenesis:taming-aggressive-validations
Oct 16, 2020
Merged

Validation error errors | ResourcePanel & DetailsTabView#2328
jayoshih merged 10 commits into
learningequality:developfrom
nucleogenesis:taming-aggressive-validations

Conversation

@nucleogenesis

@nucleogenesisnucleogenesis commented Sep 25, 2020

Copy link
Copy Markdown
Contributor

Description

Some validation fixes:

  • The ResourcePanel (right sidebar) license_description was showing because logic didn't account for whether the selected license was is_custom or not.
  • Some fields had a ! they didn't need in their validation logic.
  • Add check for isExercise on a question-related validator
  • Use isNodeComplete rather than node.complete in the ContentNodeValidator component.

Issue Addressed (if applicable)

Fixes#2314
Fixes#2334

Steps to Test

ResourcePanel:

Edit a node so that things are invalid and save the node, go back to the node listing page and select the node again to see that the proper error messages are shown and that there is a red (!) on the item. Try all validated fields copyright_holderlicense and - when you select the "Special Permissions" license, the license_description field and then finally the "Visible to" field.

Details Tab View (Editing the Node Page):

I really couldn't replicate here (surprisingly because I definitely did during or before the bug bash). If you can give a reliable way to break validations here please let me know and I'll address them in this PR quickly.

Does this introduce any tech-debt items?

@MisRob the move to "isNodeComplete" in ContentNodeValidator was done because a node where node.complete ==> false but isNodeComplete(node) ==> true. I'm thinking that some part of #2281 may not work as expected in this regard? I'd be happy to address this issue in a follow up PR.

@codecov

codecovBot commented Sep 28, 2020

Copy link
Copy Markdown

Codecov Report

Merging #2328 into develop will decrease coverage by 0.04%.
The diff coverage is n/a.

Impacted file tree graph

@@ Coverage Diff @@## develop #2328 +/- ##
===========================================
- Coverage 82.65% 82.61% -0.05% 
===========================================
Files 298 298 Lines 14708 14717 +9 ===========================================
+ Hits 12157 12158 +1 - Misses 2551 2559 +8 
Impacted FilesCoverage Δ
contentcuration/contentcuration/views/base.py54.00% <0.00%> (-4.06%)⬇️
...ontentcuration/contentcuration/utils/csv_writer.py47.41% <0.00%> (+3.31%)⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 6c422be...57a8287. Read the comment docs.

@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 3028133 to fc50463CompareSeptember 30, 2020 21:04
@nucleogenesis
nucleogenesis marked this pull request as ready for review September 30, 2020 21:50
@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 5bd7cd4 to c69f4d3CompareOctober 13, 2020 19:17
MisRob
MisRob previously requested changes Oct 16, 2020
@MisRob

Copy link
Copy Markdown
Member

@nucleogenesis Thank you. I've left one more note.

Also, it seems that we can't close all linked issues. I am going to do some validation updates soon, as mentioned in our conversations here. Before closing this PR, could you please update issues to reflect what you've found out or close issues that can't be replicated?

@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 3623446 to 250b257CompareOctober 16, 2020 19:02
micahscopes
micahscopes previously approved these changes Oct 16, 2020

@micahscopesmicahscopes left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I just tested and it seems to be working!

@nucleogenesis
nucleogenesisforce-pushed the taming-aggressive-validations branch from 27f1064 to 250b257CompareOctober 16, 2020 19:47
@micahscopes
micahscopes dismissed their stale reviewOctober 16, 2020 20:18

I didn't test thoroughly enough!

@micahscopes
micahscopes dismissed MisRob’s stale reviewOctober 16, 2020 21:06

This issue has been addressed

@micahscopesmicahscopes left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

It's working now 🥳

Thanks @jayoshih for catching this!

@jayoshih
jayoshih merged commit 2de2243 into learningequality:developOct 16, 2020
@MisRobMisRob mentioned this pull request Oct 21, 2020
Sign up for freeto 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.

Node details panel doesn't reflect updated mastery criterion for exercise Content Node validation appears to be overly strict

4 participants

@nucleogenesis@MisRob@micahscopes@jayoshih