matheuswhite/bluebees

View on GitHub
TODO

Summary

Maintainability
Test Coverage
Tasks:
  Fix:
    ✔ Show help message in case of invalid arguments @started(19-05-03 20:55) @done(19-05-03 21:09) @lasted(14m57s)
    ✔ Add directory creation in file helper @started(19-05-03 19:51) @done(19-05-03 20:05) @lasted(14m)
    ✔ Change trailing zeros in 'device_uuid' from front to back @started(19-05-10 14:30) @done(19-05-10 14:31) @lasted(1m47s)
    ✔ Add devkey to node @started(19-05-15 10:28) @done(19-05-15 10:37) @lasted(9m54s)
      k1(ECDHSecret, ProvSalt, b'prdk')
    ✔ Check byteorder of mesh layers @done(19-05-15 10:47)
    ✔ Add seq number to network @done(19-05-15 10:41)
    ✔ Add a task to clear serial messages @done(19-05-15 10:57)
    ✔ Catch a incoming device close message @started(19-05-15 11:30) @done(19-05-15 11:44) @lasted(14m44s)
    ✔ Save seq number on each change @started(19-05-16 19:07) @done(19-05-16 19:42) @lasted(35m21s)
    ✔ Send a close link on keyboard interrupt @started(19-05-15 11:04) @done(19-05-15 11:28) @lasted(24m40s)
    ✔ Change PyYAML by ruamel.yaml @done(19-05-15 15:09)
    ✔ Check if hex string has some invalid character @started(19-05-18 19:28) @done(19-05-18 19:42) @lasted(14m8s)
    ☐ Check the cause of node not send all ack block
    ☐ Check why the microbit, sometimes, stop to respond
    ✔ Add application to 'net_data' when 'add_appkey' command was called @done(19-05-22 18:19)
    ☐ Create a file to storage a group
      -- This file will contain a list of unicast address (node addr)
      -- When send a message to group address, check if src address, in response message, is within the group file
      -- Only apply this validation if the send message is to group address
      -- This file will be create in 'node config' command
      -- A address belongs to group if any model subscribe to this group
  Enhancement:
    ✔ Create a logging system @started(19-05-12 16:55) @done(19-05-12 17:25) @lasted(30m58s)
    ☐ Change print for logger
    ✔ Add check address in node creation @started(19-05-22 18:21) @done(19-05-22 18:28) @lasted(7m35s)
    ☐ Send a reset to dongle every time the 'core run' command is executed
    ☐ Add the flag '--log' to enable command write a log file
      This flag will be passed by context
    ☐ Add the flag '--log-dir PATH' to specify the path where the command will store the log
      This flag will be passed by context
    ☐ Add the flag '--debug' to enable command debug
      This flag will be passed by context
    ✔ Split commands in multiples files @done(19-05-18 20:42)
    ✘ Add a task in 'core run' to show status @cancelled(19-05-22 20:04)
        This status will be published on 'core_stats' channel
    ☐ Add 'raise exceptions' instead of 'return None'
    ☐ Check possible spurious exceptions
  Testes:
    ✔ Add a test file to file.py @done(19-05-15 15:13)
    ✔ Add a test file to application_data.py @done(19-05-16 20:01)
    ✔ Add a test file to network_data.py @done(19-05-16 20:01)
    ✔ Add a test file to node_data.py @done(19-05-16 20:01)
    ✔ Add a test file to test cryptography in prov phase @done(19-05-16 18:43)
    ✔ Add a test file to crypto.py @done(19-05-16 18:49)
  Template:
    ✔ Move the location of 'seq.yml' to '.bluebees' folder @done(19-05-23 11:04)
    ✔ Add a method to increment the sequence in seq.yml, in case of success @started(19-05-23 10:36) @done(19-05-23 11:04) @lasted(28m43s)
  Mesh:
    ✔ Implement transport layer @done(19-05-16 17:59)
    ✔ Implement network layer @started(19-05-16 17:59) @done(19-05-16 18:42) @lasted(43m14s)
    ✔ Implement a command to get a list of current UUID @done(19-05-22 10:04)
    ✔ Test mesh implementation @done(19-05-22 16:29)
    ✔ Add a flag to send and req command to allow user use devkey (--devkey) @done(19-05-22 20:37)
    ✔ Remake src and dst address validation in transport layer @started(19-05-23 10:02) @done(19-05-23 10:32) @lasted(30m45s)
  Core:
    ✔ Test core performance @done(19-05-11 18:23)
  Network:
    ✔ Implement new command @done(19-05-04 18:53)
    ✔ Add template to new command @started(19-05-05 12:19) @done(19-05-05 12:35) @lasted(16m17s)
    ✔ Implement list command @done(19-05-05 12:39)
    ✔ Implement info command @started(19-05-05 12:39) @done(19-05-05 12:48) @lasted(9m47s)
    ✔ Check the size of net key in template @done(19-05-05 13:02)
    ✔ Add node list to 'net_data' @done(19-05-22 16:45)
  App:
    ✔ Implement new command @done(19-05-05 14:33)
    ✔ Implement list command @started(19-05-05 14:35) @done(19-05-05 14:40) @lasted(5m28s)
    ✔ Implement info command @started(19-05-05 14:40) @done(19-05-05 14:46) @lasted(6m58s)
  Node:
    ✔ Implement new command @started(19-05-05 14:58) @done(19-05-07 21:00) @lasted(2d6h2m25s)
    ✔ Implement list command @done(19-05-07 21:13)
    ✔ Implement info command @done(19-05-07 21:13)
    ✔ Implement provisioning layers @done(19-05-09 15:15)
    ✔ Test provisioning @started(19-05-10 14:25) @done(19-05-11 18:23) @lasted(1d3h58m24s)
    ✔ Implement send command @started(19-05-08 11:11) @done(19-05-08 11:30) @lasted(19m4s)
    ✔ Implement req command @started(19-05-08 11:30) @done(19-05-08 11:43) @lasted(13m20s)
    ✔ Implement config command @started(19-05-08 11:43) @done(19-05-08 12:25) @lasted(42m31s)
    ✔ Implement the real send command @done(19-05-17 13:14)
    ✔ Test the new implementation of new command @done(19-05-19 11:57)
    ✔ Test the new implementation of list command @done(19-05-19 11:57)
    ✔ Test the new implementation of info command @done(19-05-19 11:57)
    ✔ Test the new implementation of send command @done(19-05-22 10:25)
    ✔ Test the new implementation of req command @done(19-05-18 19:47)
    ✔ Test the new implementation of config command @done(19-05-18 19:45)
    ✔ Implement the real req command @started(19-05-22 10:26) @done(19-05-22 15:35) @lasted(5h9m19s)
    ✔ Add validation of 'application' on post_cmd @done(19-05-23 16:18)
    ✔ Add validation of 'tries' on post_cmd @done(19-05-23 16:18)
    ✔ Implement the real config command @done(19-05-23 21:06)