• This comment is hidden because it contains spoiler information about the solution

  • This comment is hidden because it contains spoiler information about the solution

  • Trivial map/filter/reduce is not a novel kata idea.

  • input should not be used as parameter name in python as it shadows builtin function.

  • Ruby 3.0 should be enabled, see this to learn how to do it

    Please organize the structure of test fixture as following (although it has been mentioned in the attached link, I'm repeated here again)

    describe "<This message should describe the categories of test groups inside this block>" do
      it "<A short message describing this test group>" do
        expect(...).to eq(...) #Assertions
        #Or Test.assert_equals(user_response, reference_response)
  • ( JS )

    Example tests don't have truncateThreshold. Solver can add that themselves, but it's a bit lazy to let them do that ( and not everybody will know to do it ).

    Sort order of output is specified as "by input list", which appears to conflate "has" and "buys" statements. If would be nice to specify ordering by "has" statements works as well. I'm afraid it's the incremental development and ad hoc specification of the kata that led to this. It feels unintentional, and that is not a good thing. I don't even know if it works for other languages - it may depend on the implementations of reference solution and random generator.

  • In languages (like Go) with UTF-8 strings (variable number of byte per character):

    Add a test case with a 2 byte character (like ± or 🌹) in the string.
    Solutions with byte access despite the structure of UTF-8 strings will fail the test.

    • one single random test isn't enough (JS at least), and needs to test different sizes too
    • invalid inputs aren't tested in the random tests either
  • the description is just... horrible :s

    • the examples rely on implementation details (shifting stuff), and the way it's displayed is especially misleading (in a 2x2 layout)
    • the task should be given before the example. For now, this seems to be the task, when reading the description: You must first sort the array alphabetically. And output consists of letters obtained diagonally (from upper left to lower right). while it's not that at all......
  • It's helpful to mention the number of tests.

  • This comment is hidden because it contains spoiler information about the solution

  • The order of statements is not guaranteed.

    And then the notes proceed to tell you you don't need to validate input, but order is important and should be preserved. Not very consistent.

    Can there be purchases before statements of net worth? And is that net worth then before any purchases, or after earlier purchases?

    If order of statements is not guaranteed, why would I not interpret a statement of net worth as after all purchases, and save myself the money shuffling? After all, "Customers will always have enough money" anyway.

  • Number: 0, UpTo: 5: expected {} to equal 0

    • JavaScript tests still don't show useful error messages
    • Python test setup is still incorrect
    • Tests are still imbalanced between the languages
    • As pointed out below, sum of a geometric progression is a duplicate

    Stop resolving issues without doing anything.

  • Duplicate.