Change Log

This page lists changes to the Tenon.io website and API. Only the most relevant items are listed here. We rarely include things here related to security improvements or purely-internal things that wouldn't make much sense out of context. We encourage you to review this page periodically, especially if you've chosen to unsubscribe from system updates.

2018

February

  1. Improvement TEN-3501 Add "Explainer" doc to research stats
  2. Improvement TEN-3473 Add ability to re-run all URLs in a project
  3. Improvement TEN-3497 Add ariba badge to purchasing page
  4. Improvement TEN-3404 add history by docID documentation
  5. Improvement TEN-3537 Add to research stats: % of logs with zero errors
  6. Improvement TEN-3498 Adjust content on Tenon-research page
  7. Improvement TEN-3538 Get page title needs to set a generic title if one isn't found
  8. Bug TEN-3549 getErrorFree method results in double-escaping of strings
  9. Improvement TEN-3492 give user a way to see their usage numbers in their profile
  10. Improvement TEN-3373 Implement CSP, with reporting
  11. Improvement TEN-3303 Implement Datadog into Docker
  12. Bug TEN-3541 malformed list on stats explainer
  13. Improvement TEN-3493 on profile, set "your plan expires" to "your plan renews"
  14. Bug TEN-3489 Pricing page not switching properly to monthly prices during checkout.
  15. Improvement TEN-3494 provide users with their own full API log
  16. Improvement TEN-3514 remove 'apiErrors' from test API response
  17. Improvement TEN-3539 Review what the regular admin user has access to and verify they can do things that make sense
  18. Improvement TEN-3433 take pass vs. fail chart out of dashboard
  19. Improvement TEN-3534 take priority distribution chart out of dashboard
  20. Improvement TEN-3540 technologyCategoryLookup needs index on catID field
  21. Improvement TEN-3482 Update translation files
  22. Improvement TEN-3544 When user registers/ confirms or is added on Private instances, give them max api calls

January

  1. Bug TEN-3411 TR elements do not have a unique ID value
  2. Improvement TEN-3409 "Issues List" should print out the name of the report
  3. Improvement TEN-3443 add dateAdded and lastmod fields to queueUrls
  4. Improvement TEN-3390 Add health checks for all containers to docker-compose
  5. Improvement TEN-3465 Add webdriver test: trying to register with an email that already exists
  6. Improvement TEN-3468 buy boosts must validate minimum purchase
  7. Bug TEN-2972 Chromeheadless link fetcher timeout exception + time to time crashes
  8. Improvement TEN-3459 Clarify terms of service on overuse
  9. Improvement TEN-3442 create async endpoint to retrieve current queue for user
  10. Improvement TEN-3456 create db migration with new, accurate AWS creds
  11. Improvement TEN-3386 Create private instance admin ability to disallow users from creating site monitors
  12. Improvement TEN-3384 Create private instance admin ability to set default max value for spider projects
  13. Bug TEN-3412 Direct access to history result does not display results
  14. Improvement TEN-3415 Don't create link to issue list unless project is selected
  15. Improvement TEN-3362 Ensure fractal-tenon is on our getCode page
  16. Improvement TEN-3363 Ensure that getCode page lists Intern
  17. Bug TEN-3358 Fix "get code" page so that our code samples point to GH and not Bitbucket
  18. Bug TEN-3392 Generating a new API key doesn't change what's displayed to the user
  19. Improvement TEN-3367 Provide admin ability to give customers boosts
  20. Improvement TEN-3299 Provide admin the ability to prevent users from modifying specific API parameters
  21. Improvement TEN-3446 Reduce the amount of info shown in admin users table. Admin can drill down instead.
  22. Improvement TEN-3315 Remove "Register" link from home template on PC systems that disallow registration
  23. Improvement TEN-3252 Review Ansible Firewall Rules
  24. Improvement TEN-2348 Set secure flag on cookies if server sets HTTPS
  25. Bug TEN-3427 site monitor 'last monitored' only updates based on siteKey. It should use pageHash and/ or URL
  26. Bug TEN-3403 Spider limit doesn't appear to be setting the limit correctly
  27. Bug TEN-3376 tenon-cli works, but fails all of its tests
  28. Bug TEN-3257 Tenon-spider instance blocks incoming api connections from tenon-www
  29. Bug TEN-3449 Test API returns 500 error when attempting to test source
  30. Bug TEN-3451 TestNow (when logged in) expands the window and causes the analyze now button to disappear off screen
  31. Improvement TEN-3455 Update client instances with correct AWS creds
  32. Bug TEN-3447 validateApiUser endpoint lists call info as strings not ints

2017

2017 saw the resolution of 857 user stories, improvements, and bugs in Tenon (almost 2x as many as 2016).

December

  1. Improvement TEN-2896 Need test: absolute positioning (give LOW certainty)
  2. Improvement TEN-2879 Need test: Fieldset element with no form fields inside it.
  3. Improvement TEN-2876 Need test: Look for UL, OL, DL without relevant children
  4. Improvement TEN-2873 Need new test: Image within link cannot have empty alt unless there is other text within the link
  5. Improvement TEN-2693 Need test: <a> element with onclick, no href, no tabindex, no role
  6. Improvement TEN-3109 Reports API: need new report requestsByLevel
  7. Improvement TEN-2565 Reports API: Need new report: listIssuesByLevel
  8. Improvement TEN-3117 get rid of tID_168 in tenon_tests, remove from documentation, etc.
  9. Improvement TEN-2532 Need Test: Labels with display:none
  10. Improvement TEN-2830 Add inlining to site monitor script
  11. Improvement TEN-2891 Need test: Two adjacent links with the same accessible name
  12. Improvement TEN-2890 Need test: Two adjacent images with the same accessible name
  13. Improvement TEN-2888 Need test: the first instance of an abbreviation or acronym should disclose its expanded form
  14. Improvement TEN-2885 New test: Links that begin with unnecessary stuff like "Link" or "Click"
  15. Improvement TEN-2875 Need new test Do not use multiple labeling strategies
  16. Improvement TEN-2855 HistoryList.jsx - Display loader until finished loading instead of HistoryNoResultMessage
  17. Improvement TEN-2849 Strip comments from all public facing code during CI/CD process.
  18. Improvement TEN-3149 Drop tID_179 from all test stuff and docs
  19. Improvement TEN-2602 Need Test: th element has empty 'id' attribute
  20. Improvement TEN-3132 Document changes to Tenon Monitors
  21. Improvement TEN-3119 Create Admin Dashboard
  22. Improvement TEN-3116 Need utility function `isIconFont`
  23. Improvement TEN-3165 eliminate tID_24 from Tenon's tests
  24. Improvement TEN-3158 Improve tID_138 to get the accessible name of the image. Use that instead of the alt
  25. Improvement TEN-3160 add some discussion around security to the privacy and security docs
  26. Improvement TEN-3201 Remove tID_78
  27. Improvement TEN-3217 add rel=noopener to external links with target=_blank
  28. Improvement TEN-3185 Add content category to issue objects in "List Issues" reports
  29. Improvement TEN-3173 Improve ariaValid plugin. Add method for isValidAriaAttribute
  30. Improvement TEN-3148 tID_150 needs improvements
  31. Improvement TEN-3243 Add `area` to getAccessibleName
  32. Improvement TEN-3228 delete tID_244
  33. Improvement TEN-3229 Delete tID_181
  34. Improvement TEN-3241 Need Test: Uninformative alt attribute on image button - matches src attribute
  35. Improvement TEN-3232 Need test: Potentially poor alt attribute found on image button
  36. Improvement TEN-3233 Need test: Bad alt text on image button
  37. Improvement TEN-3234 Need test: Image button has empty alt and non-empty title
  38. Improvement TEN-3235 Need test: Image button has alt & title that are different
  39. Improvement TEN-3236 Need test: image button alt text consisting only of non-alphanumerics
  40. Improvement TEN-3231 Need test: Two adjacent image buttons with the same accessible name
  41. Improvement TEN-3240 Need Test: img button with aria-label and alt that are different.
  42. Improvement TEN-3239 Need test: image button has empty src attribute.
  43. Improvement TEN-3171 Add a 'lastVisit' cookie for users whenever they visit the site.
  44. Improvement TEN-2037 Add test for non-existent aria props as part of ariaValid
  45. Improvement TEN-3019 provide tooltips for project card buttons
  46. Improvement TEN-3264 Adjust labeling on dashboard charts
  47. Improvement TEN-3268 Update VPAT and a11y docs
  48. Improvement TEN-3272 Add accessibility tests on adminBrowseAdminSpec.js
  49. Improvement TEN-2231 New test needed: Item(s) with interactive role must have tabindex=0
  50. Improvement TEN-2200 Prioritiztion information should be provided at the test level and not BP level
  51. Improvement TEN-2844 Ensure Servers No Longer Utilize TLS 1.0
  52. Bug TEN-3060 Breadcrumb not working on admin pages
  53. Improvement TEN-3052 Need test: Multiple consecutive <br> tags next to each other, simulating paragraphs
  54. Improvement TEN-3080 Need test: Do not use blank rows or columns for presentation
  55. Improvement TEN-3081 Need test: avoid screen transitions on entering and leaving
  56. Improvement TEN-3112 Ensure that default project button doesn't react to click or key events
  57. Improvement TEN-2690 Need test: labellable element with empty label
  58. Bug TEN-3036 User settings page has bizarre flash of success message
  59. Bug TEN-3114 Fix templates header meta robots.
  60. Bug TEN-2077 "Warning" icon not displaying in test results display
  61. Improvement TEN-2061 Ensure tID 73 uses getAccessibleName to judge link quality
  62. Bug TEN-2673 tID 38 fails when aria-labelledby contains more than one ID ref
  63. Improvement TEN-3124 eliminate tID_50 entirely
  64. Bug TEN-2522 tID 44 counts fields as duplicates if their accessible name is blank
  65. Improvement TEN-3129 Eliminate tID_51, tID_52, tID_56 from all tests and docs
  66. Improvement TEN-2895 Need test: icon font on element with no accessible name and no aria-hidden
  67. Improvement TEN-2894 Need test: css generated content that is NOT an icon font
  68. Improvement TEN-3137 Make warning icon orange
  69. Improvement TEN-3122 Need test: img with non-empty alt/aria-label/title BUT has role = presentation
  70. Improvement TEN-3123 Add check for non-empty title attribute to tID_78
  71. Bug TEN-3128 Improve getAccessibleName to not return false if the name is blank
  72. Bug TEN-3167 getAccessibleName plugin gets tripped up when there's > 1 ID value in aria-labelledby
  73. Improvement TEN-3183 add testVioTitle to each object in "list issues" reports
  74. Improvement TEN-2880 tenon-plugin-utils: Need utility function to get an element's declared styles from CSS (not computed!)
  75. Improvement TEN-3184 add bpID to each issue object in "list issues" reports
  76. Improvement TEN-3142 tID_38 should use getAccessibleName
  77. Improvement TEN-3223 tID_82 should use getAccessibleName
  78. Improvement TEN-3222 tID_72 should use getAccessibleName
  79. Improvement TEN-3221 tID_68 should use getAccessibleName
  80. Improvement TEN-3220 tID_57 should use getAccessibleName
  81. Improvement TEN-3224 tID_90 should use getAccessibleName
  82. Improvement TEN-3225 tID_91 should use getAccessibleName
  83. Improvement TEN-3218 tID_07 should use getAccessibleName
  84. Improvement TEN-3140 tID_09 should use getAccessibleName
  85. Improvement TEN-3175 Need new test, invalid aria attribute value supplied
  86. Improvement TEN-3237 Need test: Using the same ALT text on image buttons with different src attributes
  87. Bug TEN-3155 a11y_visible doesn't seem to support display:none on TH elements
  88. Improvement TEN-3238 Need test: alt text for image button consisting only of numerics
  89. Improvement TEN-2208 Need test: Text language is in the wrong direction
  90. Improvement TEN-2069 Add test(s) to verify that the `lang` attribute, when supplied, is accurate
  91. Improvement TEN-3174 need new test: element has orphaned aria attributes
  92. Improvement TEN-3259 need test: more than one visible main element
  93. Improvement TEN-3260 Need test: more than one role="navigation" without a label
  94. Bug TEN-3275 research statistics appears to have two top-level headings
  95. Improvement TEN-3172 Need new test: invalid aria role supplied
  96. Bug TEN-3279 admin api log doesn't show tested URL
  97. Improvement TEN-3219 tID_44 should use getAccessibleName
  98. Improvement TEN-3147 tID_132 should use getAccessibleName
  99. Improvement TEN-3230 Need test: Image button missing alt attribute
  100. Improvement TEN-3285 Add sandbox attribute to all iframes within /documentation/videos
  101. Improvement TEN-3287 Set referrer policy header on all pages
  102. Improvement TEN-3286 Set HSTS Header on all pages
  103. Improvement TEN-3288 Remove "issue location" priority weight from Admin Config

November

  1. Improvement TEN-2428 Add new project urls API route: get current queue
  2. Improvement TEN-2975 Combine name and email on users admin table to save horizontal space
  3. Improvement TEN-2973 Add to reports API docs: responseByID
  4. Improvement TEN-2516 Move projects-api docs to tenon-www
  5. Improvement TEN-2851 Provide ability for Admin (on Private Instances) to "Lock" rules
  6. Improvement TEN-2990 Ensure db backup script has accurate list of tables.
  7. Improvement TEN-3011 Add tenon-hooks documentation to tenon-www
  8. Improvement TEN-2822 Document CSP and Akamai WAF issues
  9. Improvement TEN-2833 Need report: list issues by Priority
  10. Improvement TEN-3021 Ensure that all relevant site monitor (sites) events actually post to their web hooks
  11. Improvement TEN-3025 Remove text from project card buttons
  12. Improvement TEN-2530 Need Chart: Priority Distribution
  13. Improvement TEN-3047 Update privacy document
  14. Bug TEN-3042 Field for "Add/ remove urls for testing" on Projects Add page should expand vertically when focused
  15. Improvement TEN-2836 Need report: Duplicates by Test ID
  16. Improvement TEN-3048 Ensure intercom, pipedrive, bugsnag, and google analytics are shut off in PC systems
  17. Improvement TEN-2145 ReportsAPI: Add ability to list issuesBySpecificWcagSc
  18. Improvement TEN-1867 Issues by TestID table should contain a column for the testID
  19. Improvement TEN-2567 Reports API: Need new report: list-issues-by-content-category
  20. Improvement TEN-2566 Reports API: Need new report: list-issues-by-wcag-sc
  21. Improvement TEN-2557 Reports API: Need new report: listIssuesByCertainty
  22. Improvement TEN-2558 Reports API: Need new report: listIssuesByPriority
  23. Improvement TEN-1973 Create cron to get rid of errorstats for tIDs that don't exist
  24. Improvement TEN-2201 Good code/ bad code examples should be at the indivdual test level and not the BP level
  25. Improvement TEN-1974 Add remediation guidance to the tests table, remove from BPs table
  26. Bug TEN-2918 Spider project should not require `limit` and `maxDepth` arguments
  27. Bug TEN-2941 on `tenon-projects`: verify user has API calls and/ or boosts before adding URLs (or adding spider jobs)
  28. Bug TEN-2951 `userPlans` row not inserted on new user creation
  29. Bug TEN-2956 When user is not logged in `userApiSetting is undefined
  30. Bug TEN-2953 Fatal error thrown for too many connections
  31. Improvement TEN-2739 Modify /project/* pages on tenon-www to support any relevant changes to projects API and spider
  32. Improvement TEN-2768 Add report type for response ID
  33. Improvement TEN-2948 Should there be asterix symbols on required fileds.
  34. Bug TEN-2950 `users.userLastLogin` not updating
  35. Bug TEN-2963 Track urlID in queue (and queueUrls table)
  36. Bug TEN-2924 Ensure `tenon-projects` POST route inherits the values from the user's account whenever a paramater is not set
  37. Bug TEN-2967 Ensure that project delete truly deletes everything
  38. Bug TEN-2984 Projects API should not disallow punctuation in `name` or `description` fields
  39. Bug TEN-2998 Changelog content has unescaped code example
  40. Bug TEN-3001 Issue ID not being populated in errorstats
  41. Improvement TEN-2958 Queue should check MIME type before sending request to tenon-api
  42. Bug TEN-1960 Test Now incorrectly states to users that it couldn't connect to the API whenever it receives any HTTP 400+ response
  43. Improvement TEN-2007 Add cron to delete any apiLog (and related records) older than 1 year.
  44. Improvement TEN-2834 Need report: list issues by Certainty
  45. Improvement TEN-2835 Need report: list duplicate issues by test ID
  46. Bug TEN-3041 Label for 'responseTime' should be 'Date Tested' in Worst Performing Pages table on the dashboard
  47. Improvement TEN-3084 Page performance report should include response ID
  48. Story TEN-2687 Need new test: heading content is only punctuation
  49. Story TEN-2692 Need test: link with visible text in it also has aria-label/ aria-labelledby

October

  1. Improvement TEN-2857 Document that issue result content follows markdown convention for delineating code (`)
  2. Improvement TEN-2412 Create full(er) support for Stripe's webhooks
  3. Improvement TEN-2665 Implement Unattended Upgrades Into Ansible
  4. Improvement TEN-2705 Clean-up, clear out, approve/ disapprove PRs on tenon-delivery
  5. Improvement TEN-2868 Document how Site Monitors work
  6. Improvement TEN-2436 In users::realDelete(), delete all of their other stuff (projects, etc.)
  7. Improvement TEN-2802 Update services content on www
  8. Improvement TEN-2866 Add DIG info to Purchasing page
  9. Improvement TEN-2801 Finalize whatever is needed to internationalize Tenon's content.
  10. Improvement TEN-2798 The email that is sent to user from Admin/User confirm should have its own distinct message
  11. Improvement TEN-2852 i18n cron jobs for updating translation files
  12. Bug TEN-2923 `tenon-projects` does not seem to be sending URLs into`tenon-queue`
  13. Improvement TEN-2937 Version Pin Docker-images Dockerfiles.
  14. Bug TEN-2927 PHP Error displayed on /research/statsbytechnology.php
  15. Bug TEN-2698 Fix missing content header on some async_content
  16. Bug TEN-2909 SSL Cert issue on test2 appears to interfere with Stripe Hook delivery
  17. Improvement TEN-2913 Implement dev-sec.ssh-hardening
  18. Bug TEN-2911 Strange artefacts at the bottom of the page "documentation/site-monitor.php"
  19. Bug TEN-2861 Fix country and state dropdowns to follow the flow of the form on subscribe page (subscribe.php)
  20. Bug TEN-2858 Change pricing cards to fit all the text and resize correctly.
  21. Bug TEN-2625 When api call estimator gives people a recommendation, content is hidden
  22. Bug TEN-2902 Unclosed <ul> on services content
  23. Bug TEN-2859 White space appears to negatively impact the allowed domains in PC instances
  24. Bug TEN-2786 Fix country drop down duplication
  25. Improvement TEN-2865 Add tabindex=0 to the show/hide Project-Level API settings button on /projects/add.php
  26. Bug TEN-2843 Remove commented-out social icon for Crunchbase from the template footer
  27. Bug TEN-2825 Footer links have poor contrast when focused via keyboard
  28. Bug TEN-2485 PUT route on projects appears to require all params or validate all params. It should allow for only an update of new/ changed info

September

  1. Bug TEN-2729 "Blog" link exists twice in logged-in footer
  2. Improvement TEN-2734 Add "Purchasing" link to Pricing page
  3. Improvement TEN-2726 Add a "Buy Boosts" button on the profile page.
  4. Improvement TEN-2699 Add CSRF protection
  5. Improvement TEN-2438 Add density info to dashboard summary
  6. Improvement TEN-2761 Add global data to summary
  7. Improvement TEN-2622 Add show/ hide on messages list
  8. Improvement TEN-1749 Create data source for retrieving a list of duplicate issues by testID
  9. Improvement TEN-2496 Create db migration to switch everyone's API calls available to test log counter method
  10. Improvement TEN-1745 Create read-only reports API
  11. Bug TEN-2787 CVC number not posted to stripe
  12. Improvement TEN-2174 Dashboard Summary should include "Unique Instances" and "Repeat Instances". Base on signature.
  13. Improvement TEN-2762 Do not create a "Free" Subscription when users initially register/ get added.
  14. Improvement TEN-2735 Ensure that support user always has a project on install
  15. Improvement TEN-2778 Issues by certainty should show count and percent
  16. Improvement TEN-2779 Issues by priority should show count and percent
  17. Improvement TEN-2694 Need test: link opens new window
  18. Improvement TEN-2691 Need test: title attribute on link
  19. Bug TEN-2741 Node API request examples appear out of date
  20. Bug TEN-2767 Page History Report Response numeric values are coming across as strings
  21. Improvement TEN-2771 Remove 'global' data from summary report.
  22. Improvement TEN-2146 Remove "Address" from settings nav on private systems
  23. Improvement TEN-2765 Remove duplicate issues table from the dashboard.
  24. Improvement TEN-2766 Remove duplicate vs. repeat issues from summary reports.
  25. Improvement TEN-2755 Reports API Document Size - should be rounded
  26. Improvement TEN-2757 Reports api: add issues by docID based on page history
  27. Improvement TEN-2556 Reports API: Issue Instances - rename to listIssueInstances
  28. Improvement TEN-2039 Reports API: Page Performance should have date(s) tested
  29. Improvement TEN-2144 ReportsAPI summary: add totalErrorFree and pctErrorFree
  30. Improvement TEN-2754 Set the X-XSS-Protection HTTP response header to '1'
  31. Improvement TEN-2753 Set X-Content-Type-Options Header
  32. Improvement TEN-2752 Set X-Frame-Options to SAMEORIGIN
  33. Bug TEN-2715 Some integers in test-api response are getting quoted
  34. Bug TEN-2675 There is no whitespace in system emails
  35. Improvement TEN-2711 turn off tenon-research on private instances
  36. Improvement TEN-2717 update password hashing strategies

August

  1. Improvement TEN-2484 Feature request - Tenon inlineAsset service
  2. Improvement TEN-2660 Add ability to view all IPs used by user in /users/view.php
  3. Improvement TEN-2662 Create a best practices content retrieval service
  4. Improvement TEN-2674 Create private instance setting: expiration date
  5. Improvement TEN-2671 need test: ensure multiple aria strategies are not used to label objects
  6. Improvement TEN-2252 New test needed: dir=rtl without lang
  7. Bug TEN-2669 trueHttpResponseCodes report is malformed
  8. Bug TEN-2670 Project cards are broken
  9. Bug TEN-2697 Fix mixed content issue on "About" page

July

  1. Improvement TEN-2083 Honor aria-hidden in the isVisible method
  2. Improvement TEN-1851 add aria-label to a11yText()
  3. Improvement TEN-1815 Need test: Invalid lang code value
  4. Improvement TEN-2596 Need Test: Don't use the same label attribute for different optgroup elements of the same select element
  5. Improvement TEN-2587 Need Test: Use a dt element as the first child of a dl element
  6. Improvement TEN-2626 Generate PO files for translation
  7. Improvement TEN-2604 Need Test: Avoid duplicate legend element values
  8. Improvement TEN-2613 Improve tID_210 by only returning an issue if the caption isn't blank
  9. Improvement TEN-2612 Improve tID_211 by only returning an issue if the summary isn't blank
  10. Improvement TEN-2592 Need Test: If an img element is a child of an a element with text, do not use the same text for its alt attribute as the text inside the a element
  11. Improvement TEN-2598 Need Test: Avoid duplicate label attribute values on optgroup elements

June

  1. Bug TEN-2614 Data being returned by page-performance chart does not appear properly constructed
  2. Improvement TEN-2125 Private cloud: Remove demo log link in admin nav for private cloud users
  3. Improvement TEN-2155 Write navigation to templates with PHP and not React.
  4. Bug TEN-2624 Repair misconfiguration of travis file
  5. Bug TEN-2159 verify user agent string is being sent properly from TestAPI and that client requests are able to override the default
  6. Bug TEN-2616 .support-number css font color is incorrect.
  7. Bug TEN-2605 Default project not being created on login
  8. Bug TEN-2606 Broken link at api documentation site
  9. Bug TEN-2607 random "\" character in api documentation
  10. Improvement TEN-2595 Need Test: Use a scope or id attribute for every non-empty th element
  11. Improvement TEN-2584 Need Test: Don't use a value other than ltr, rtl, or auto on the dir attribute
  12. Improvement TEN-2597 Need Test: Avoid empty label attribute on optgroup element
  13. Improvement TEN-2582 Review & Revise VPAT/ GPAT information
  14. Improvement TEN-2585 Need test: Ensure frame titles are not empty
  15. Improvement TEN-2594 Need Test: Avoid empty summary attribute
  16. Improvement TEN-2601 Need Test: td/ th element has empty headers attribute
  17. Improvement TEN-2591 Need Test: Avoid empty p elements
  18. Improvement TEN-2590 Need Test: Avoid empty dd elements
  19. Improvement TEN-2589 Need Test: Avoid empty dt elements
  20. Improvement TEN-2588 Need Test: Avoid empty li elements/ role=listitem
  21. Improvement TEN-2599 Need Test: Avoid duplicate caption elements
  22. Improvement TEN-2593 Need Test: Avoid empty caption element
  23. Improvement TEN-2603 Need Test: do not open new windows on form submission (look for target=_blank) on form element)
  24. Improvement TEN-2602 Need Test: th element has empty id attribute
  25. Improvement TEN-2600 Need Test: Avoid duplicate summary attributes
  26. Bug TEN-2574 Ensure all 'delete' operations validate that the record to be deleted actually exists first
  27. Bug TEN-2581 Add aria-label on admin table links
  28. Bug TEN-2580 The title for all "View" and "Edit" pages should have the name of the record being acted on.
  29. Bug TEN-2579 Admin add/edit users does no meaningful validation
  30. Bug TEN-2578 Edit API config should give success/ failure feedback
  31. Bug TEN-2575 Create "Purchasing" page
  32. Bug TEN-2573 Lower certainty score of Test 130
  33. Bug TEN-2577 Create db migration to update the plans table to bring it in line with prod

May

  1. Improvement TEN-2526 Add message code to apiLog record so we can see what the specific error was for 400s
  2. Improvement TEN-2547 API Call Estimator should recommend Boosts until calls exceed 2000
  3. Improvement TEN-2232 Create a sandbox file - set it so API calls against that specific sandbox file don't count toward usage limits
  4. Improvement TEN-1750 Create data source for issues by test ID
  5. Improvement TEN-1751 Create data source to retrieve a list of issues by WCAG SC
  6. Improvement TEN-2180 Design UI for purchasing API credits (boosts)
  7. Improvement TEN-2484 Create Tenon inlineAsset service
  8. Improvement TEN-2134 migrate from jshint to eslint
  9. Improvement TEN-2517 Modify pricing page with info about POs and Invoicing
  10. Improvement TEN-2569 Modify tenon's terms of use regarding cancellations
  11. Improvement TEN-2341 Need test: image has empty src attribute
  12. Improvement TEN-2423 Need test: label pointing to non-existent form field (possible duplicate)
  13. Improvement TEN-2414 New test needed: aria-label and alt that are different.
  14. Improvement TEN-2495 New test needed: Do not use aria-hidden="true" on a visible focusable element
  15. Improvement TEN-2251 New test needed: role=presentation on interactive control (i.e. links, buttons, etc.)
  16. Improvement TEN-2418 New test needed. Table with presentation role but has data table structures
  17. Improvement TEN-2362 New Test: detect aria-hidden on body element
  18. Bug TEN-1941 Reports API: Issues By Certainty not complete
  19. Bug TEN-2172 Reports-API: logTime not limited to dates the user has data for.
  20. Improvement TEN-2568 Set up supertest for testing reports api
  21. Bug TEN-2519 SQL Error on Confirm Test User
  22. Improvement TEN-2459 Test URL status code to determine test approach for Tenon Toolkit
  23. Bug TEN-2508 When newly registered user says they want a salesperson to call them, send follow-up email to schedule a call.

April

  1. Improvement TEN-2397 Document test tID 183 radio buttons with the same name attributes
  2. Improvement TEN-2396 Document test tID 182 event handlers bound to non-actionable element that lacks role or tabindex
  3. Improvement TEN-2394 Document test tID 179 onblur, onfocus, or onchange events that shift focus or submit form
  4. Improvement TEN-2395 Document test tID 180 events bound to something that has negative tabindex but that is visible on screen and non-disabled
  5. Improvement TEN-2392 Document test tID 178 table is too complex
  6. Improvement TEN-2393 Document test tID 185 Text language is in the wrong direction.
  7. Improvement TEN-2390 Document test tID 175 verify that the lang attribute, when supplied, is accurate
  8. Improvement TEN-2391 Document test tID 177 poor readability
  9. Improvement TEN-2389 Document test tID 174 ARIA role overrides good role
  10. Improvement TEN-2386 Document test tID 171 area element links directly to sound file
  11. Improvement TEN-2387 Document test tID 172 video or audio elements without track sub elements for captions
  12. Improvement TEN-2388 Document test tID 173 link references media file directly
  13. Improvement TEN-2385 Document test tID 169 visual order must match focus order (1.3.2, 2.4.3)
  14. Improvement TEN-2383 Document test tID 167 Potential focus trap
  15. Improvement TEN-2384 Document test tID 168 CSS blink
  16. Improvement TEN-2381 Document test tID 163 Table headers
  17. Improvement TEN-2382 Document test tID 164 look for optgroup without label; without unique label; without option children
  18. Improvement TEN-2380 Document test tID 162 Suppressing text resize on mobile
  19. Improvement TEN-2377 Document test tID 159 find at least one landmark
  20. Improvement TEN-2378 Document test tID 160 look for css focus definition without identical hover definition
  21. Improvement TEN-2375 Document test tID 131: ensure links that point to an in page anchor: that the anchor exists (anchor does not need to be visible)
  22. Improvement TEN-2376 Document test tID 158 empty lang attribute
  23. Improvement TEN-2374 Document test tID 15 Avoid using tables for layout
  24. Improvement TEN-2372 Document test tID 117 acronym with no title or empty title
  25. Improvement TEN-2371 Document test tID 93 links have identical href attributes but different text
  26. Improvement TEN-2369 Document test tID 87 table has summary but no caption
  27. Improvement TEN-2370 Document test tID 88 List item has no useful text
  28. Improvement TEN-2368 Document test tID 85 Form has no submit mechanism
  29. Improvement TEN-2367 Document test tID 67: Form submits when checkbox is checked
  30. Improvement TEN-2365 Document test tID 55 Do not apply tabindex to elements that are not actionable and don't have events bound to them
  31. Improvement TEN-2366 Document test tID 56: Do not bind events to elements that are not focusable and do not have tabindex
  32. Improvement TEN-2364 Document test tID 184 Adjacent links going to the same destination
  33. Improvement TEN-2435 Document test ID 193 - label pointing to non-existent form field
  34. Improvement TEN-2458 Handle 413 Entity too large issue when POSTing source to the API
  35. Improvement TEN-2476 Create db migration to adjust API source limit
  36. Improvement TEN-2477 Create "ping" endpoint, for use with tenon-toolkit and other internal services to get http status code of urls
  37. Improvement TEN-2462 Update Docs for custom tests specification
  38. Improvement TEN-2336 Route "Garbage can" icon on project cards to project delete
  39. Improvement TEN-2265 Make the PHP form for adding projects work with the projects API
  40. Improvement TEN-2142 Change it so free trial isn't 30 days but rather just 50 free API calls.
  41. Improvement TEN-2493 Ensure that user profile page accurately shows calls available & boosts available
  42. Improvement TEN-2492 Add ability for admin to view users' test settings on /users/view.php
  43. Improvement TEN-2404 on /projects/add.php if validation errors are present, all hidden regions of the form should be shown
  44. Bug TEN-2111 Ensure that the PHP endpoint and UI properly gets/ sets/ sends waitFor when used
  45. Bug TEN-2499 SQL Syntax Error when adding standards
  46. Improvement TEN-2504 On /projects/delete.php verify that the user won't be left without a default.
  47. Bug TEN-2506 "View Results" button isn't showing up on History, even though cached record exists.
  48. Improvement TEN-2379 Document test tID 161 Provide a means to skip past repetitive navigation links
  49. Bug TEN-1972 tID 45 description in DB is poor. Test is about length
  50. Bug TEN-1971 Fix description of tID 57
  51. Improvement TEN-2413 Site Monitors: Get UA string and pass that as part of the request
  52. Improvement TEN-2461 Do not run site monitor test if the UA is Googlebot (or other well-known bot)
  53. Improvement TEN-2502 Eliminate confusing naming of waitFor vs. delay
  54. Bug TEN-2510 SQL error on confirm

March

  1. Improvement TEN-2420 Remove test: tID 118
  2. Improvement TEN-2421 Extend processing timeout on test API to 90 seconds
  3. Improvement TEN-2358 Add stateful messages to form submissions throughout the site
  4. Improvement TEN-2407 Remove test: tID 11
  5. Improvement TEN-1473 Add UI affordance for users to delete projects
  6. Improvement TEN-2434 Add API Call Estimator
  7. Bug TEN-1655 Table sorting is does not use natural language sort
  8. Improvement TEN-2398 Create export of BP/ Test Information
  9. Bug TEN-1502 Sortable table caption shows field key value instead of human readable format

February

  1. Improvement TEN-1473 Add UI affordance for users to delete projects
  2. Improvement TEN-2342 Create new method/ db table to house global stats. Add method to api class
  3. Improvement TEN-1776 Add web hooks
  4. Improvement TEN-1773 Create ability to get a list of all pages tested (inc. narrowing by project, etc.)
  5. Improvement TEN-1671 Adjust Tenon documentation to address change of projectID to auto generated string
  6. Improvement TEN-2318 Provide user setting for "refresh rate" for AJAX driven content
  7. Bug TEN-1502 Sortable table caption shows field key value instead of human readable format
  8. Improvement TEN-2348 Set secure flag on cookies if server sets HTTPS
  9. Bug TEN-2352 fix mismatched collation on research tables
  10. Improvement TEN-2311 small security improvements needed in nginx configs
  11. Improvement TEN-1689 Add user profile option to consent to anonymous stats
  12. Improvement TEN-2335 remove ref and importance from test api response
  13. Improvement TEN-2332 take configuration for api/ spider endpoints out of global config.
  14. Improvement TEN-1478 Create UI affordance to facilitate populating project test queue from sitemap.xml
  15. Improvement TEN-2147 Docs need more named anchors in Issue Response document
  16. Improvement TEN-1752 Create data source for issues by certainty
  17. Improvement TEN-1753 Create data source for api requests by day
  18. Improvement TEN-1770 Get data for chart/ table: Issues by content category
  19. Improvement TEN-2019 Ensure reports API allows for grabbing history by docID
  20. Improvement TEN-2333 Create a single "Settings" page under which all settings are listed
  21. Bug TEN-2020 Test Bug: tID 104
  22. Improvement TEN-2304 Create settings page for users to manage their Test Settings
  23. Bug TEN-2323 Bug on login form requires user to resubmit the form several times before login is successful
  24. Improvement TEN-2197 Need test: radio buttons with the same name attributes in separate fieldsets, groups, or radio groups
  25. Improvement TEN-2002 Allow test for frames/ iframes to honor aria-hidden=true
  26. Improvement TEN-2325 Add "can we have a sales person call you?" + name, phone number field to registration form
  27. Improvement TEN-1833 Need test: All caps text found; also check for uppercase text

January

  1. Bug TEN-1838 Wide-page check (tID_28) not catching errors
  2. Bug TEN-1847 tID_46 finds the outer table. It should be finding the inner tables
  3. Bug TEN-1896 Test bug: tID 30 gets fooled by query string parameters
  4. Bug TEN-2026 memcached not being installed during provisioning of tenon-www
  5. Bug TEN-2209 Project filter on 'History' page does not submit AJAX request
  6. Bug TEN-2287 user api logs first date/ last date breaks SQL query when the user has no logs
  7. Bug TEN-2308 Fix bad markup on https://tenon.io/documentation/json-response-overview.php
  8. Improvement TEN-1071 New Selenium Test: user upgrade self
  9. Improvement TEN-1088 New Selenium Test: testNow from dashboard
  10. Improvement TEN-1475 Add ability to use site's sitemap.xml file to seed URLs to test
  11. Improvement TEN-1814 Need test: Group of radio buttons/ group of checkboxes not enclosed in a fieldset
  12. Improvement TEN-1820 Need test: form field that occurs after the submit button
  13. Improvement TEN-1871 Add test to find at least one landmark, preferably main
  14. Improvement TEN-1897 Deprecate the importance request parameter. Nobody uses it anyway.
  15. Improvement TEN-1914 Remove ref parameter from request - create reference link no matter what.
  16. Improvement TEN-2079 New test needed: area links to sound file
  17. Improvement TEN-2080 New test needed: video or audio elements without track sub elements for captions
  18. Improvement TEN-2081 New test needed: link references media file directly
  19. Improvement TEN-2138 Create Selenium tests for Best Practices CRUD
  20. Improvement TEN-2139 Create Selenium tests for BP meta CRUD
  21. Improvement TEN-2207 Need test: Adjacent links going to the same destination
  22. Improvement TEN-2242 Add other filenames to tests that reference spacer.gif
  23. Improvement TEN-2245 Verify that the generated issueID is truly unique
  24. Improvement TEN-2259 tenon-www: Set endpoints for various services to be configurable via a config file
  25. Improvement TEN-2283 Ensure project delete is a full delete
  26. Improvement TEN-2290 remove references to ref and importance parameters from docs
  27. Improvement TEN-2292 Improve invalid project detection in project URLs routes
  28. Improvement TEN-2303 Clarify on pricing page what an API call is
  29. Improvement TEN-2305 Tests passed/ vs. failed is inaccurate
  30. Improvement TEN-2306 add appID to siteMonitors:runMonitor requests
  31. Improvement TEN-912 New Selenium Test: Register (alt1 Error Handling)
  32. Improvement TEN-914 New Selenium Test: Confirm Registration (alt 1: User already confirmed)
  33. Improvement TEN-916 New Selenium Test: Log In (alt 1: Error State)
  34. Improvement TEN-919 New Selenium Test: Forgotten Password Reset (alt 1: Error state)
  35. Improvement TEN-921 New Selenium Test: Edit Profile (alt 1: Error State)
  36. Improvement TEN-979 Need test. Look for HTML5 audio element without controls AND with autoplay (1.4.2) must have low certainty

2016

2016 saw the resolution of 431 user stories, improvements, and bugs in Tenon.

September - December

  1. Improvement TEN-1001 Need test: any event handlers bound to non-actionable element that lacks role or tabindex
  2. Improvement TEN-1072 New Selenium Test: view profile
  3. Improvement TEN-1074 New Selenium Test: edit address
  4. Improvement TEN-1077 New Selenium Test: edit API settings
  5. Improvement TEN-1079 New Selenium Test: remove URLs from project
  6. Improvement TEN-1081 New Selenium Test: add URLs to project
  7. Improvement TEN-1082 New Selenium Test: view profile from user menu
  8. Improvement TEN-1085 New Selenium Test: view notifications
  9. Improvement TEN-1090 New Selenium Test: view projects
  10. Improvement TEN-1111 Set deploy script to purge pagespeed's cache
  11. Bug TEN-1565 Tenon API testing executes before tested page's JS has executed
  12. Bug TEN-1966 Position information not reliably being returned in results
  13. Improvement TEN-2016 Convert soft deletes to hard deletes
  14. Improvement TEN-2041 sitemonitor: allow user to set the src to be sent by setting a valid selector
  15. Improvement TEN-2059 Ensure that the location for CDN archive is configurable based on environment.
  16. Improvement TEN-2068 Eliminate Unused stuff from deploy scripts/ roles/ playbooks, etc.
  17. Improvement TEN-2074 Create db migration to force 'ref' and 'importance' to '1' for existing projects and userApiSettings
  18. Improvement TEN-2076 Move all repos to Github
  19. Improvement TEN-2082 tID 58: Don't throw this error if the role is redundant
  20. Improvement TEN-2092 Set up a CDN instance for holding/ retrieving things like results archives, tested documents, etc.
  21. Bug TEN-2093 user must submit login form multiple times before being logged in
  22. Bug TEN-2101 The test now doesn't display results, it breaks with undefined.top error
  23. Improvement TEN-2116 Remove the "Monitor" option from Project URLs. It doesn't work well and people are confused by it.
  24. Improvement TEN-2118 Change how we do email sending - send email and then archive it
  25. Improvement TEN-2119 Document API response changes
  26. Bug TEN-2120 Default project is not being created when users log in
  27. Improvement TEN-2133 Eliminate Sparkpost from the system. Should be SendGrid
  28. Improvement TEN-2136 add issueID to errorStats table
  29. Improvement TEN-2148 "Add Site Monitor" form validation should make sure the chosen projectID exists
  30. Bug TEN-2149 ResultUrl not being added to response due to strict type checking
  31. Bug TEN-2150 `urlHttpCode` is inaccurate when users test `src` instead of `url` and a resource returns 404
  32. Improvement TEN-2154 create migration to update mail account settings
  33. Bug TEN-2158 System generated email for new API key and edit profile has excessive spacing between lines.
  34. Improvement TEN-2163 Set up various service "pings" to return proper HTTP status codes
  35. Improvement TEN-2175 Add test API response code to apiLog table in the database
  36. Improvement TEN-2181 Tests for frames and i-frames should ignore those with aria-hidden
  37. Improvement TEN-2188 Create private npm module for all test dependencies
  38. Bug TEN-2211 Project cards have inaccurate counts for Failed items, Queued items, etc.
  39. Improvement TEN-2213 Add tenon-cli to the "Get Code" page
  40. Bug TEN-2227 Bad response from tenon-api (on test2-api.tenon.io)
  41. Improvement TEN-2228 Reports table needs autoincrementing PKID
  42. Improvement TEN-2230 Put back appID into apiLog. Don't create the public list
  43. Improvement TEN-2238 Do not count HTTP 500 errors against user limits
  44. Bug TEN-2246 User profile info on plan and API calls is inaccurate
  45. Improvement TEN-2257 Create migration to add appID back to apilog
  46. Improvement TEN-2258 Create db migration to add field response_code to apiLog table
  47. Bug TEN-2262 Eliminate misspelled field name
  48. Bug TEN-2263 local copy of API results not stored properly before sending to AWS
  49. Improvement TEN-911 New Selenium Test: Register
  50. Improvement TEN-913 New Selenium Test: Confirm Registration
  51. Improvement TEN-915 New Selenium Test: Log In
  52. Improvement TEN-917 New Selenium Test: Log Out
  53. Improvement TEN-918 New Selenium Test: Forgotten Password Reset
  54. Improvement TEN-920 New Selenium Test: Edit Profile
  55. Improvement TEN-922 New Selenium Test: Generate new API key
  56. Improvement TEN-934 Add `npm test` to build

May - August

  1. Bug TEN-1909 Improve performance of apiCache:: processResults()
  2. Bug TEN-1800 Documentation Links are Broken
  3. Bug TEN-1912 Test API response sometimes doesn't include results node
  4. Story TEN-1868 Add trust marks to website.
  5. Story TEN-1911 Limit demo page access to 5x in 24-hour period
  6. Story TEN-1802 JSON response from test API should include URL to view report output
  7. Story TEN-1790 unset/ reset userKey and userTimeout on login
  8. Bug TEN-1915 Add user's expiration date to the profile page
  9. Story TEN-1899 login process should always check for a default project and create one if a default project does not exist.
  10. Sub-task TEN-1541 Ensure project delete completely deletes the project, all test runs, all reports, all errors, etc.
  11. Story TEN-1716 Api Log/ Demo Log: If 'store' not set to '1', don't create a link to the results.
  12. Story TEN-1876 Add better documentation around 522 errors on the TestAPI
  13. Bug TEN-1921 Amend terms of use to discuss Demo usage
  14. Bug TEN-1922 Get rid of "Applications". Let application developers sign up for Referral program
  15. Sub-task TEN-1925 Create a way to see what the current memcached size is
  16. Task TEN-1964 Remove unused tables & fields
  17. Task TEN-1965 Create db migration for plain language improvements to test table
  18. Bug TEN-1961 Print stylesheet doesn't strip off UI, such as nav.
  19. Bug TEN-1969 Create contrast BPs
  20. Bug TEN-1855 tID_77 incorrectly mapped. Needs to be mapped to other "no alt attribute" tests
  21. Bug TEN-1854 modify tID_135 to only work on
  22. Story TEN-1937 add a retry to the PHP api class.
  23. Bug TEN-1933 Handle warnings generated from Ansible
  24. Story TEN-1905 Redirect all traffic to https always
  25. Bug TEN-2000 tenon-api does not appear to be honoring/ make use of 'waitfor'
  26. Bug TEN-636 remove tests relating to font tags (16, 26, and 63, I think)
  27. Story TEN-1926 Take Notifications out of left nav. Put in user menu
  28. Story TEN-2003 Add link to Blog in header navigation.
  29. Story TEN-1923 Create a Services Page
  30. Story TEN-1968 Add Access Monitor onto GetCode
  31. Task TEN-1967 Add Mortise Ruby Client to the Get Code page
  32. Bug TEN-2018 Test API: 'src' parameter appears to have a 116KB limit. Find out what is imposing this limit and increase it
  33. Bug TEN-1906 Do not set X-Powered-By header
  34. Story TEN-1977 create user test queue indexes migration
  35. Story TEN-1985 Add total logs to /users/view
  36. Story TEN-2042 verify that the TestAPI accepts & uses cookies
  37. Story TEN-2046 Block security hole in NGINX
  38. Bug TEN-2022 Project not being created by Test API if project doesn't exist.
  39. Bug TEN-2023 Add ability for customer to register sites for analytics style endpoint
  40. Story TEN-2050 php - add support for 'interval' in sitemonitor endpoint
  41. Story TEN-2048 Add Drupal Module to 'Get Code'
  42. Bug TEN-2035 Add isValidUrl to tenon plugins in test api
  43. Story TEN-2062 Test Api should automatically determine whether the `src` parameter contains a fragment or not
  44. Story TEN-2064 Ensure test API validates the `src` parameter. It must contain HTML
  45. Story TEN-2063 Ensure the test API validates the `url` parameter
  46. Bug TEN-2028 db-migrate migrations are broken
  47. Epic TEN-2027 Create Node microservice to access a PDF file and determine if it is tagged
  48. Bug TEN-1992 Fix template variable issue in Account Upgrade notification email
  49. Story TEN-2008 Fix tenon-api nodeunit tests
  50. Bug TEN-1898 Test API (node) is failing several unit tests
  51. Epic TEN-2030 Finish ariaValid plugin.
  52. Story TEN-2024 Take 'ref' and 'importance' out of projects add.php and user api settings
  53. Story TEN-1970 create test for empty lang that is NOT on the HTML element
  54. Bug TEN-2012 Color contrast gets fooled by transparent backgrounds
  55. Story TEN-2066 Ensure test API validates the viewport parameters
  56. Story TEN-1667 autogenerate projectID on project create
  57. Story TEN-2096 investigate abuse detected warning when registering a new account
  58. Story TEN-2044 Test API should get the page title
  59. Story TEN-1741 Test API should generate a unique ID for all issues in the test API response
  60. Story TEN-1515 Get tested page's HTTP response code. Add it to the JSON response as urlHttpCode
  61. Story TEN-1033 Add screen positioning & size fields to issue nodes
  62. Bug TEN-1547 Add check for array values in Math->isInteger
  63. Bug TEN-2109 Change how PHP assembles the POSTed data

March - April

  1. Bug (Website) TEN-1859 Dashboard data appears incorrect/ not limited to logged-in user.
  2. Improvement (Website) TEN-785 Create VPAT for Tenon.io
  3. Improvement (Website) TEN-1489 Add link to documentation to logged in (side) menu
  4. Bug (Website) TEN-1787 Request parameters documentation does not discuss docID
  5. Improvement (Website) TEN-1865 Create cron to purge superuser test results
  6. Improvement (Website) TEN-1643 Disallow registration by users of disposable email accounts
  7. Improvement (Website) TEN-1870 Create video training page
  8. Bug (Website) TEN-1910 Adding any GET parameter to URL causes TestNow to submit. Should only submit if 'url' exists as parameter
  9. Bug (API) TEN-1715 Test API is not honoring test parameters

As part of the above, there were a lot of code improvements to the Test API:

  1. Added explicit 405 response if request method isn't POST
  2. Added 402 response for users over their monthly limit, rather than the 401 response.
  3. 401 response is now purely reserved for missing/ invalid API key
  4. Removes requirement that both viewport params be set
  5. General code cleanup and improvements

January - February

  1. Improvement (Website) TEN-1759 add all issue data to errorstats table, for use in reports
  2. Improvement (Tests) TEN-1807 Add test for alt attribute on element for which alt is invalid
  3. Bug (Tests) TEN-1049 BUG: label not associated with control, issue not created in resultset
  4. Improvement (Website) TEN-1767 bump deps and react to v14
  5. Bug (Website) TEN-786 Codemirror accessibility issue prevents screen reader from reading back content
  6. Bug (Tests) TEN-1466 False positive from tID 5 when object is svg
  7. Improvement (Website) TEN-1653 Go through entire system and look for opportunities for more memcached queries
  8. Improvement (Tests) TEN-1805 Improve test for justified text by only testing long strings - tID_36
  9. Improvement (Tests) TEN-994 Improve tID 58 by allowing those roles to be applied to SVG elements
  10. Bug (Website) TEN-1520 Incorrect label on hover: Density distribution chart
  11. Improvement (Tests) TEN-1100 Increase robustness of tID 33 by adding an extra check for another table (as the parent of the failing table)
  12. Improvement (Tests) TEN-1816 Need test: Adjacent links going to the same destination
  13. Improvement (Tests) TEN-1832 Need test: bold text in TD as implicit table header. Inspired by tID_20
  14. Improvement (Tests) TEN-976 Need test: check for accuracy of skip link (possible duplicate)
  15. Improvement (Tests) TEN-972 Need test: Check for at least one heading on the page (2.4.10)
  16. Improvement (Tests) TEN-1823 need test: form has no submit button
  17. Improvement (Tests) TEN-990 Need test: Frame titles that reference position
  18. Improvement (Tests) TEN-1829 need test: image button alt should not be blank
  19. Improvement (Tests) TEN-1817 Need test: Image link alt text repeats text in the link
  20. Improvement (Tests) TEN-1813 Need test: lang attribute is blank
  21. Improvement (Tests) TEN-1059 need test: look for area element with href that goes to same place as another
  22. Improvement (Tests) TEN-1091 need test: look for SELECT element with less than 5 options
  23. Improvement (Tests) TEN-1821 Need test: table summary and table caption are identical (1.3.1)
  24. Improvement (Tests) TEN-1080 Need test: Visible label pointing to invisible form field
  25. Improvement (Tests) TEN-1822 Need test: xml:lang and lang attributes are different
  26. Improvement (Tests) TEN-1831 Nested table test should consider the reverse case
  27. Improvement (Tests) TEN-988 New test: Using the same ALT text on images with different src
  28. Improvement (Website) TEN-1791 Remove 'rank' field from all tables
  29. Improvement (Tests) TEN-1400 tID 57 incorrectly generates error when link text is '0'
  30. Bug (Tests) TEN-935 tID_36 should only test when there's actual text in the node.
  31. Bug (Website) TEN-1584 Worst performing pages returns same page more than once

2015

2015 saw the resolution of 658 user stories, improvements, and bugs in Tenon.

December

December's list of resolved tickets is shorter than normal, owing to continued work on a handful of large features.

  1. Improvement (Website) TEN-1748 TEN-1554 Create data source for retrieving page history
  2. Improvement (Website) TEN-656 Drop some design love on /getCode.php
  3. Bug (Website) TEN-1440 Submitting markup from the dashboard (logged in) results in error
  4. Improvement (Website) TEN-1772 Create ability to get JSON data for issue instances by tID
  5. Improvement (Website) TEN-1771 Add links to all current resources we know about to /getcode.php
  6. Improvement (Website) TEN-1769 TEN-1657 create JSON endpoint to retrieve auto test queue
  7. Bug (Website) TEN-1765 issues-by-page incorrectly also counts non-successful test runs
  8. Improvement (Website) TEN-1640 add user's preferred language to the info we send over to Intercom
  9. Improvement (Website) TEN-1619 Add new "master" account to deploy stuff.
  10. Improvement (Website) TEN-1703 TEN-1643 Add to Terms of Use a note explaining that we disallow registration by disposable email accounts
  11. Bug (Website) TEN-1722 When markup is pasted into Logged-in Test now, it expands the field and hides the analyze button

November

The vast majority of work on Tenon during November 2015 was on the soon-to-be-release Projects API & Spider, hence the lower number of closed issues than we normally see. Also, many of the closed issues listed below have not been deployed, as they're part of that work.

  1. Bug (Website) TEN-1763 Pasting HTML into test now in header results in inability to click analyze button
  2. Improvement (Website) TEN-1761 Document that GET requests on the test API will return a 405
  3. Improvement (Website) TEN-1758 Redo the admin index page so it has more useful info for on-prem customers
  4. Improvement (Website) TEN-1756 Add "Standards" to Admin Utilities
  5. Improvement (Website) TEN-1762 Document that expired and exceeded-monthly-limit requests to the test API will get 402 Payment Required
  6. Improvement (Website) TEN-1588 Add city & country to IP cell of demoLog display table
  7. Improvement (Website) TEN-1747 TEN-1746 CLONE - Ensure project delete completely deletes the project, all test runs, all reports, all errors, etc.
  8. Bug (API) TEN-1660 Intermittent tenon script errors appear in the clientErrors API response
  9. Improvement (Website) TEN-1486 Create UI for users to see their test queue(s)
  10. Bug TEN-1028 Load Test fails on some websites
  11. Improvement TEN-1713 Add expiration date to Intercom data
  12. Improvement TEN-1567 Add Anisble MySQL backup playbook
  13. Bug TEN-861 We need a way to go through the User Test Queue much more rapidly than it is now
  14. Bug TEN-1627 Stripe Post for Free Plan is not coming through properly
  15. Improvement TEN-1639 Improve 'schedule' format and validation in tenon-spider
  16. Improvement TEN-1665 Add total logs and total today in the caption for Demo Logs
  17. Improvement TEN-1712 Add phpunit for performing unit tests on PHP
  18. Improvement TEN-1717 'store' should default to '1' for all users except the master account
  19. Bug TEN-1730 ProjectAPI Failing Test Case #5
  20. Bug TEN-1732 ProjectAPI Failing Test Case #22 - too much info returned
  21. Bug TEN-1728 Default Project settings are not applied to testNow.php
  22. Bug TEN-1731 ProjectAPI Failing Test Case #7 when duplicate request submitted
  23. Bug TEN-1729 ProjectAPI Failing Test Cases #2 & #4
  24. Bug TEN-1705 limit field on schedule is always NULL
  25. Improvement TEN-1724 bring addToQueue up to date with what spider is passing

October

  1. Improvement (Website) TEN-1441 Home Design Improvements
  2. Bug (Website) TEN-519 Increase contrast on :focus & :hover styles
  3. Bug (API) TEN-1675 responseID isn't being added to JSON output
  4. Improvement (Website) TEN-1674 Set up Ansible playbooks to properly configure tenon spider for each env.
  5. Bug (Website) TEN-1677 Left Navi Tab labels appear below main content
  6. Improvement (Website) TEN-1621 Add ability to "move" test results to a different project
  7. Improvement (Website) TEN-1649 Add latest api run date to Intercom
  8. Improvement (Website) TEN-1681 TEN-1638 create migration to add phone number field to users
  9. Improvement (Website) TEN-1638 Add phone number field to user profile
  10. Improvement (Website) TEN-1661 Set default pricing to "yearly" on pricing page
  11. Bug (Website) TEN-1683 Alert Icon is missing from error message
  12. Bug (Website) TEN-1684 Left Navi tooltips should not line wrap
  13. Improvement (Website) TEN-1648 Add to intercom: Percentage of 400+ errors. Users with high % of 400+ errors need help
  14. Improvement (Website) TEN-1642 Add a metric to intercom.io data for avg. testrun density and average issues - these are people who really need help
  15. Bug (Website) TEN-1685 Massively huge alert icon for login page
  16. Bug (Website) TEN-1695 Mixed content syntax error when site's delivered over HTTPS
  17. Bug (Website) TEN-1678 Logged in Analyze feature should work like Testnow
  18. Bug (Website) TEN-1700 database migrations fail when run locally
  19. Improvement (Website) TEN-1694 Add plan progress to user info sent over to intercom
  20. Improvement (Website) TEN-1693 Add to intercom data whether user is subscribed to system updates
  21. Improvement (API) TEN-1585 Ensure PHP api class returns 401 if user's plan has expired
  22. Bug (Website) TEN-1704 Fix broken Image links and missing icons
  23. Improvement (Website) TEN-1706 Improving spacing for light footer
  24. Improvement (Website) TEN-1707 Make homepage background color purple
  25. Improvement (Website) TEN-1659 Create ability to export users for integration into email list
  26. Bug (Website) TEN-1510 bad error stats layout for testnow
  27. Bug (API) TEN-1699 Return proper HTTP status codes on validateUserByKey
  28. Bug (API) TEN-1711 When 'fragment' is set to '1', API still returns issues relating to title, etc.
  29. Bug (API) TEN-1682 While PHP is processing TestNow the server is locked
  30. Improvement (Website) TEN-1658 Ditch ability to send email manually from within Tenon. Intercom and MailChimp take care of this much better
  31. Bug (Website) TEN-1714 Historic Tests render error snippet as actual HTML
  32. Bug (Website) TEN-1708 Too much padding between my-account menu links
  33. Bug (Website) TEN-1578 Blog template footer is b0rken
  34. Bug (API) TEN-1508 fragment not set error - analyze error
  35. Improvement (Website) TEN-1662 Enable cloudflare on Test env
  36. Bug (Website) TEN-1509 Left menu layout issue on active link
  37. Bug (Website) TEN-1723 what-tenon-tests layout issues

September

  1. Bug (Website) TEN-1599 blank eventlog causes fatal error due to call to undefined method eventLog::noRecordsFound
  2. Improvement (Website) TEN-820 Chart: Issues by priority (bar chart, issues by priority)
  3. Improvement (Website) TEN-1379 Show "Deleted" users. Provide a link to undelete them
  4. Improvement (API) TEN-1583 Return Events based tests to Tenon API tID_51,52 and 56
  5. Bug (Website) TEN-1610 Link to twitter profile is incorrect
  6. Improvement (Website) TEN-1587 Truncate response ID in demolog
  7. Bug (API) TEN-1614 project ID is not being added to API response
  8. Bug (Website) TEN-1606 processCache.php - bad prepared statement causes problems with cache processing
  9. Bug (Website) TEN-1605 duplicate-issues.php not returning data when data exists
  10. Bug (Website) TEN-1602 issues-by-tid.php not returning data when data exists
  11. Bug (Website) TEN-1616 FAQ link in footer needs to go away. Points to /contact.php
  12. Bug (Website) TEN-1613 Messages to admin users aren't being sent/ template variables aren't being set
  13. Bug (Website) TEN-1534 robots.txt file is not being copied over into tenon-www/dist
  14. Improvement (Website) TEN-1624 Add Intercom.io code to website
  15. Bug (Website) TEN-1538 messages intended for talktous@tenon.io are not being sent
  16. Story (Website) TEN-1641 add "latest test run" on the data we send to Intercom
  17. Bug (Website) TEN-1612 Newly provisioned system has free plan limit set to 50. Should be 500
  18. Bug (Website) TEN-1562 Syntax error in Arrays -> arrayToList
  19. Story (Website) TEN-1626 Switch to new Icon Pack

August

  1. Bug (website): TEN-224 Create admin report: client failure report, to show % of client reports that result in failure.
  2. Improvement (website): TEN-559 Add ability to organize users around Organizations.
  3. Improvement (website): TEN-572 Add user ability to view a specific log entry by ID
  4. Improvement (website): TEN-627 When viewing report, provide ability to download the issues as CSV.
  5. Improvement (website): TEN-685 Add Timezone setting
  6. Improvement (website): TEN-687 Add Number Format setting
  7. Improvement (website): TEN-820 Chart: Issues by priority (bar chart, issues by priority)
  8. Improvement (website): TEN-821 Create table: top-errors
  9. Improvement (website): TEN-894 Chart: add passing / failing tests to testnow.php results
  10. Task (website): TEN-942 Modify API key creation to allow for creating a key for an org
  11. Task (website): TEN-944 Modify projects Add/ Update to support organizations
  12. Task (website): TEN-948 Create UI for adding users to an organization
  13. Bug (website):TEN-1417 Modifying anything in ProfileMenu.jsx breaks everything
  14. Improvement (website): TEN-1424 Require expiration date on bulk user add
  15. Sub-task (website): TEN-1433 TEN-1026 Get data for chart: density distribution
  16. Bug TEN-1447 (website): Owners of accounts that allow multiple users should get a default organization.
  17. Sub-task (website): TEN-1454 TEN-1410 create data for table: duplicated issues
  18. Sub-task (website): TEN-1455 TEN-1409 get data for table: issues by distinct test ID
  19. Improvement (website): TEN-1476 Add profile menu option for "Settings"
  20. Improvement (website): TEN-1477 Fix bad formatting of <select> elements in /settings.php
  21. Improvement (website): TEN-1490 Documentation template footer should match public footer
  22. Improvement (website): TEN-1497 Add link to "Organizations" in logged-in menu
  23. Bug (website): TEN-1514 Dashboard tables should differentiate between warnings and errors
  24. Bug (website): TEN-1518 When user selects "Yes" to both Test Now and Monitor URLs, set last monitored date to now
  25. Improvement (website): TEN-1522 Improve dashboard performance
  26. Bug (website): TEN-1523 Dashboard summary should distinguish between test runs and pages
  27. Bug (website): TEN-1527 Regression: project queued urls count does not decrease as urls are tested
  28. Bug (website): TEN-1529 Add memcached to improve performance
  29. Bug (website): TEN-1530 When populating a project with URLs only add unique URLs
  30. Improvement (website): TEN-1533 Protect queue tester from getting hemmed up by bad URLs
  31. Bug (website): TEN-1539 queue tester requires improvement to fail conditions.
  32. Bug (website): TEN-1540 Clicking subscribe on pricing.php refreshes the page the first time
  33. Bug (website): TEN-1542 Ensure CSV export also includes xpath information
  34. Bug (website): TEN-1543 position column is coming through as undefined in the CSV.
  35. Improvement (website): TEN-1559 Adjust settings options for date format to provide options in php date formats
  36. Bug (website): TEN-1563 Global stats are all returning 0 in API response
  37. Improvement (website): TEN-1566 Correct settings.php visual layout issue
  38. Improvement (website): TEN-1575 Adjust contact page layout to use 3-columns
  39. Bug (website): TEN-1577 free plan ID is getting passed to Stripe as falsey value during subscription create
  40. Improvement (website): TEN-1580 When user confirms, set their Timezone to UTC
  41. Improvement (website): TEN-1581 Verify /messages only shows those messages that were sent
  42. Task (spider): TEN-1590 Handle Throttling the Spider
  43. Bug TEN-1599 (website): blank eventlog causes fatal error due to call to undefined method eventLog::noRecordsFound

July

  1. Bug (Website): /editaddress.php uses different layout than all other forms.
  2. Bug (Website): Mystery project being created
  3. Bug (Website): Multi-line project names reflow and break project card
  4. Bug (Website): Firefox does not display times correctly
  5. New Feature (Website): Improve page Footer
  6. Improvement (Website): Change config form fields to radio buttons
  7. Improvement (Website): on project create, add project name to be project ID if name not set
  8. Bug (API): Error response for empty url is non-conforming to specification
  9. Sub-task (Website): TEN-821 Get data for table: top errors
  10. Sub-task (Website): TEN-820 Get data for chart: Issues by priority
  11. New Feature (Website): User should explicitly agree to T&Cs prior to reg.
  12. Improvement (Website): On admin/plans adminTable, list how many people have that account type
  13. Bug (API): When someone sets a project as their default project, the API isn't honoring that setting.
  14. Bug (API): Supplying an invalid docID does not result in an error
  15. Improvement (API): Unlock free plan features since we are moving to free trials
  16. Sub-task (Website): TEN-814 Get data for chart: logs by day
  17. Sub-task (Website): TEN-1443 Get data for chart, true HTTP response codes
  18. Sub-task (Website): TEN-1407 Get data for summary table
  19. Sub-task (Website): TEN-1427 Get data for chart, response codes
  20. Bug (API): Supplying Invalid source to API call gives non-conforming response

June

  1. New Feature (Website): Allow users to set their session timeout settings in their profile; make system follow this setting
  2. Improvement (Website): add smtp connection details to basicConfig (currently in env config)
  3. Improvement (API): Make globalConfig option for failed retest threshold
  4. New Feature (API): Add a waitFor option
  5. Improvement (Website): Format displayed dates into users' stored preferences
  6. New Feature (Website): Create ability to undelete content
  7. Improvement (API): Paid accounts should default to store=1
  8. Improvement (website): Reports/ Stats Track performance/ issue counts improvements across distinct URLs
  9. Bug (website): Blog template has old support URL
  10. Improvement (API): Remove API validation requirement calling for both viewport parameters to be set.
  11. New Feature (website): Create Stats: Countries that use Tenon
  12. Improvement (website): Refactor failure logs
  13. New Feature (website): Create mechanism to get page title.
  14. New Feature (website): Enhance error storage to support issue signature, tID, bpID and response ID for use in stats
  15. Improvement (website): Add param to mail class to indicate the nature of the message (marketing or system)
  16. Improvement (website): Implement Expiration Dates on plans
  17. New Feature (website): Format displayed dates into users' stored preferences
  18. Improvement (website): Require user to be logged in before submitting support request
  19. New Feature (website): Create ability for Admin to backup their data.
  20. New Feature (website): Create ability to clone project
  21. Bug (website): Queue is not repopulated if user selects "Test Urls Now" in Project add/ edit screen
  22. Bug (website): Best Practices Template needs to remove dashboard link
  23. Improvement (website): Add unsubscribe link to all outgoing emails.
  24. New Feature (website): Create ability to undelete content

May

  1. New Feature (website): Add option to projects to set-as-default
  2. New Feature (website): Add failed test runs to project card
  3. New Feature (website): Enhance calculation of issue signature to ensure uniqueness
  4. Improvement (API): Adjust some tables-related tests to not test tables with 'presentation' role
  5. New Feature (website): Adds Tenon Roadmap (available to paid users only)
  6. Bug (API): appID not being passed back by the API
  7. New Feature (API): Adds waitFor parameter to request options

April

  1. Improvement (website): 17 new Selenium acceptance tests to be run on build & deploy
  2. Improvement (API): 21 test improvements including 16 new tests

March

  1. Improvement (website): If the user hits their daily limit, do not pluck any more URLs out of the project test queue
  2. Improvement (website): Upon login make sure user has api settings record. If not, create it
  3. Bug (website): queueTester has invalid SQL exception
  4. Bug (website): Gravatar urls don't use https
  5. Improvement (website): on password reset, check that user is confirmed
  6. Improvement (website): on password reset, check user is not deleted
  7. Improvement (website): Improve Unauthorized message when daily limit is reached
  8. Improvement (website): Move to monthly limits
  9. New feature (API): add additional response summary data to apiLog
  10. Bug (API): the API should return proper HTTP response codes corresponding to the status we're returning back
  11. Improvement (website): 16 new automated acceptance tests
  12. Bug (website): On project edit: If an url is already in the test queue, do not re-add them to the queue
  13. Improvement (API): When an URL is tested via API, it should be added to the projectUrls table

February

  1. New feature (website): Add ability for users to register applications
  2. Bug fix (website): Editing password actually unsets password
  3. New feature (website): "Notifications" shows a history of all messages users have been sent
  4. New feature (website): Ability to edit billing address
  5. New feature (website): Dashboard. Shows API request history
  6. New feature (website): Projects & Reports
  7. New feature (API): More informative error messages from API.
  8. New feature (API): Addition of apiErrors node in JSON response
  9. New feature (website): Ability to unsubscribe from mailing lists
  10. New feature (website): Ability to subscribe & modify plan
  11. New feature (API): Addition of appID parameter to request parameters, so users can track where the results came from
  12. New feature (API): Addition of apiErrors node in JSON response
  13. New feature (API): Addition of Change log and Accessibility pages to documentation

January

  1. New feature (website): Create page with which Tenon users can unsubscribe from mailing list

2014

December

  1. Bug fix (website): Admin ability to confirm users not working
  2. New feature (website): In "Test Now" also show how to do that same request in php, NodeJS, curl, ruby, etc
  3. New feature (website): Create a report on what Tenon tests

November

  1. New feature (API): Keep track of # of tests passed vs. # of tests failed in issue summary
  2. Bug fix (API): density info not being returned (global) in api responses.
  3. Bug fix (API): Filtering on Level only shows issues by that level
  4. New feature (website): Separate out documentation to be individual pages.

Prior to November 2014 we did not track issues & new features in a way that lends itself to delineating "public"-relevant issues from other issues.