{'code_tag': 'TODO', 'comment': 'check plugins to answer for _schema', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-04'}, 'data_fields': {'category': 'plugin', 'priority': '2', 'status': 'development', 'release': '1.0.0', 'iteration': '1', 'originator': 'matth', 'origination_date': '2025-07-04', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: check plugins to answer for _schema ', 'file_path': 'pycodetags/common_interfaces.py', 'original_schema': 'PEP350', 'offsets': (85, 4, 86, 79)} {'code_tag': 'BUG', 'comment': 'not all of these are context manager', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-05'}, 'data_fields': {'category': 'core', 'priority': 'high', 'status': 'development', 'release': '1.0.0', 'iteration': '1', 'originator': 'matth', 'origination_date': '2025-07-05', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# BUG: not all of these are context manager ', 'file_path': 'pycodetags/common_interfaces.py', 'original_schema': 'PEP350', 'offsets': (108, 4, 109, 80)} {'code_tag': 'TODO', 'comment': '`pycodetags issues fill-in-defaults` command to speed up data entry', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-06'}, 'data_fields': {'status': 'inprogress', 'category': 'cli', 'priority': 'high', 'release': '1.0.0', 'originator': 'matth', 'origination_date': '2025-07-06', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: `pycodetags issues fill-in-defaults` command to speed up data entry ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (23, 0, 24, 31)} {'code_tag': 'TODO', 'comment': 'Need concept of default value for recognized fields. The copy paste and clutter cost is too high now.', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-06'}, 'data_fields': {'status': 'inprogress', 'category': 'base', 'priority': 'high', 'release': '1.0.0', 'originator': 'matth', 'origination_date': '2025-07-06', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: Need concept of default value for recognized fields. The copy paste and clutter cost is too high now. ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (26, 0, 26, 189)} {'code_tag': 'TODO', 'comment': 'Need to be able to edit.', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-06'}, 'data_fields': {'status': 'inprogress', 'category': 'base', 'priority': 'high', 'release': '1.0.0', 'originator': 'matth', 'origination_date': '2025-07-06', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: Need to be able to edit. ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (28, 0, 28, 111)} {'code_tag': 'TODO', 'comment': 'Folk tag need help: Need offsets for locating Folk Tags in source code. Needs testing', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-06'}, 'data_fields': {'closed_date': '2025-07-13', 'assignee': 'matth', 'category': 'parsing', 'priority': 'high', 'status': 'done', 'iteration': '1', 'release': '0.6.0', 'originator': 'matth', 'origination_date': '2025-07-06', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: Folk tag need help: Need offsets for locating Folk Tags in source code. Needs testing ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (30, 0, 31, 56)} {'code_tag': 'TODO', 'comment': 'Need offsets for second, third tags within a comment block.', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-06'}, 'data_fields': {'category': 'cli', 'priority': 'high', 'status': 'development', 'iteration': '1', 'release': '1.0.0', 'originator': 'matth', 'origination_date': '2025-07-06', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: Need offsets for second, third tags within a comment block.', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (33, 0, 34, 64)} {'code_tag': 'TODO', 'comment': 'Move all issues into python source (EASY)', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-06'}, 'data_fields': {'category': 'build', 'priority': 'high', 'status': 'development', 'iteration': '1', 'release': '1.0.0', 'originator': 'matth', 'origination_date': '2025-07-06', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: Move all issues into python source (EASY) ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (36, 0, 36, 143)} {'code_tag': 'TODO', 'comment': 'Add validate to build (make check)', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-06'}, 'data_fields': {'category': 'build', 'priority': 'high', 'status': 'development', 'iteration': '1', 'release': '1.0.0', 'originator': 'matth', 'origination_date': '2025-07-06', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: Add validate to build (make check) ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (38, 0, 38, 136)} {'code_tag': 'TODO', 'comment': 'Add Generate issue_site and publish with gha', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-06'}, 'data_fields': {'category': 'build', 'priority': 'high', 'status': 'development', 'iteration': '1', 'release': '1.0.0', 'originator': 'matth', 'origination_date': '2025-07-06', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: Add Generate issue_site and publish with gha ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (40, 0, 40, 146)} {'code_tag': 'TODO', 'comment': 'Add Generate changelog', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-06'}, 'data_fields': {'category': 'build', 'priority': 'high', 'status': 'development', 'iteration': '1', 'release': '1.0.0', 'originator': 'matth', 'origination_date': '2025-07-06', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: Add Generate changelog ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (42, 0, 42, 124)} {'code_tag': 'TODO', 'comment': 'Before release pipx install and exercise it!', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-06'}, 'data_fields': {'category': 'build', 'priority': 'high', 'status': 'development', 'iteration': '1', 'release': '1.0.0', 'originator': 'matth', 'origination_date': '2025-07-06', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: Before release pipx install and exercise it! ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (44, 0, 44, 146)} {'code_tag': 'TODO', 'comment': 'Add Identity feature (HARD) Enables git features (find originator, find origination date, find close date)', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-06'}, 'data_fields': {'category': 'base', 'priority': 'high', 'status': 'development', 'iteration': '1', 'release': '1.0.0', 'originator': 'matth', 'origination_date': '2025-07-06', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: Add Identity feature (HARD) Enables git features (find originator, find origination date, find close date)\n# ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (46, 0, 47, 93)} {'code_tag': 'TODO', 'comment': 'Revisit "Todo Objects" Raise an TODOException, e.g. `raise TODOException("Work on this")`', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-06'}, 'data_fields': {'category': 'core', 'priority': '1', 'status': 'development', 'iteration': '1', 'release': '1.0.0', 'originator': 'matth', 'origination_date': '2025-07-06', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: Revisit "Todo Objects" Raise an TODOException, e.g. `raise TODOException("Work on this")`\n# ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (49, 0, 50, 93)} {'code_tag': 'TODO', 'comment': 'Add a TODOSkipTest decorator', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-06'}, 'data_fields': {'category': 'core', 'priority': 'low', 'status': 'development', 'iteration': '1', 'release': '1.0.0', 'originator': 'matth', 'origination_date': '2025-07-06', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: Add a TODOSkipTest decorator ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (52, 0, 52, 128)} {'code_tag': 'TODO', 'comment': 'assignee value is a mini csv format, delegate to python eval? csv parser?', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-06'}, 'data_fields': {'category': 'core', 'priority': 'medium', 'status': 'development', 'iteration': '1', 'release': '1.0.0', 'originator': 'matth', 'origination_date': '2025-07-06', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: assignee value is a mini csv format, delegate to python eval? csv parser? ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (54, 0, 54, 175)} {'code_tag': 'TODO', 'comment': 'Create a python list of TODO() objects.', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-06'}, 'data_fields': {'category': 'core', 'priority': 'low', 'status': 'development', 'iteration': '1', 'release': '1.0.0', 'originator': 'matth', 'origination_date': '2025-07-06', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: Create a python list of TODO() objects. ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (56, 0, 56, 140)} {'code_tag': 'TODO', 'comment': 'Object TODOs. Probably need AST version of TODO() finder because crawling the object graph of a module is\n# missing a lot.', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-13'}, 'data_fields': {'status': 'inprogress', 'category': 'ast', 'priority': 'medium', 'release': '1.0.0', 'originator': 'matth', 'origination_date': '2025-07-13', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: Object TODOs. Probably need AST version of TODO() finder because crawling the object graph of a module is\n# missing a lot. ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (98, 0, 99, 98)} {'code_tag': 'TODO', 'comment': 'future releases for keepachangelog for versions/releases (Future releases/unreleased is biggest holdup)', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-13'}, 'data_fields': {'status': 'inprogress', 'category': 'changelog', 'priority': 'medium', 'release': '1.0.0', 'originator': 'matth', 'origination_date': '2025-07-13', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: future releases for keepachangelog for versions/releases (Future releases/unreleased is biggest holdup) \n# TODO: Use changelog release schema for display/sorting ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (101, 0, 102, 143)} {'code_tag': 'TODO', 'comment': 'Use changelog release schema for display/sorting', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-13'}, 'data_fields': {'status': 'inprogress', 'category': 'changelog', 'priority': 'medium', 'release': '1.0.0', 'originator': 'matth', 'origination_date': '2025-07-13', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: future releases for keepachangelog for versions/releases (Future releases/unreleased is biggest holdup) \n# TODO: Use changelog release schema for display/sorting ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (101, 0, 102, 143)} {'code_tag': 'TODO', 'comment': 'TODOFixTest: implement it!', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-13'}, 'data_fields': {'status': 'inprogress', 'category': 'ast', 'priority': 'high', 'release': '1.0.0', 'originator': 'matth', 'origination_date': '2025-07-13', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: TODOFixTest: implement it! \n# TODO: Some sort of GIT integration \n# TODO: Write to file. Piping to stdout is picking up too much cruft. - Partial implementation? ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (117, 0, 119, 179)} {'code_tag': 'TODO', 'comment': 'Some sort of GIT integration', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-13'}, 'data_fields': {'status': 'inprogress', 'category': 'git', 'priority': 'high', 'release': '1.0.0', 'originator': 'matth', 'origination_date': '2025-07-13', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: TODOFixTest: implement it! \n# TODO: Some sort of GIT integration \n# TODO: Write to file. Piping to stdout is picking up too much cruft. - Partial implementation? ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (117, 0, 119, 179)} {'code_tag': 'TODO', 'comment': 'Write to file. Piping to stdout is picking up too much cruft. - Partial implementation?', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-13'}, 'data_fields': {'status': 'inprogress', 'category': 'reports', 'priority': 'high', 'release': '1.0.0', 'originator': 'matth', 'origination_date': '2025-07-13', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: TODOFixTest: implement it! \n# TODO: Some sort of GIT integration \n# TODO: Write to file. Piping to stdout is picking up too much cruft. - Partial implementation? ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (117, 0, 119, 179)} {'code_tag': 'TODO', 'comment': 'Report by responsible user (stand up report)', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-13'}, 'data_fields': {'status': 'inprogress', 'category': 'reports', 'priority': 'high', 'release': '1.0.0', 'originator': 'matth', 'origination_date': '2025-07-13', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: Report by responsible user (stand up report) \n# TODO: Report by version/iteration/release (road map) \n# TODO: Done report (changelog) \n# TODO: Report by tag (e.g. "bug", "feature", "enhancement") \n# TODO: Metrics: time to close, overdue ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (122, 0, 126, 122)} {'code_tag': 'TODO', 'comment': 'Report by version/iteration/release (road map)', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-13'}, 'data_fields': {'status': 'inprogress', 'category': 'reports', 'priority': 'high', 'release': '1.0.0', 'originator': 'matth', 'origination_date': '2025-07-13', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: Report by responsible user (stand up report) \n# TODO: Report by version/iteration/release (road map) \n# TODO: Done report (changelog) \n# TODO: Report by tag (e.g. "bug", "feature", "enhancement") \n# TODO: Metrics: time to close, overdue ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (122, 0, 126, 122)} {'code_tag': 'TODO', 'comment': 'Done report (changelog)', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-13'}, 'data_fields': {'status': 'inprogress', 'category': 'changelog', 'priority': 'high', 'release': '1.0.0', 'originator': 'matth', 'origination_date': '2025-07-13', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: Report by responsible user (stand up report) \n# TODO: Report by version/iteration/release (road map) \n# TODO: Done report (changelog) \n# TODO: Report by tag (e.g. "bug", "feature", "enhancement") \n# TODO: Metrics: time to close, overdue ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (122, 0, 126, 122)} {'code_tag': 'TODO', 'comment': 'Report by tag (e.g. "bug", "feature", "enhancement")', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-13'}, 'data_fields': {'status': 'inprogress', 'category': 'reports', 'priority': 'high', 'release': '1.0.0', 'originator': 'matth', 'origination_date': '2025-07-13', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: Report by responsible user (stand up report) \n# TODO: Report by version/iteration/release (road map) \n# TODO: Done report (changelog) \n# TODO: Report by tag (e.g. "bug", "feature", "enhancement") \n# TODO: Metrics: time to close, overdue ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (122, 0, 126, 122)} {'code_tag': 'TODO', 'comment': 'Metrics: time to close, overdue', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-13'}, 'data_fields': {'status': 'inprogress', 'category': 'reports', 'priority': 'high', 'release': '1.0.0', 'originator': 'matth', 'origination_date': '2025-07-13', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: Report by responsible user (stand up report) \n# TODO: Report by version/iteration/release (road map) \n# TODO: Done report (changelog) \n# TODO: Report by tag (e.g. "bug", "feature", "enhancement") \n# TODO: Metrics: time to close, overdue ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (122, 0, 126, 122)} {'code_tag': 'TODO', 'comment': 'validate that everything with a file has meta fields (file, line, original text, original schema)', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-06'}, 'data_fields': {'status': 'development', 'category': 'core', 'priority': 'high', 'release': '1.0.0', 'iteration': '1', 'originator': 'matth', 'origination_date': '2025-07-06', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: validate that everything with a file has meta fields (file, line, original text, original schema)\n# TODO: views switch more to jina2 ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (128, 0, 129, 126)} {'code_tag': 'TODO', 'comment': 'views switch more to jina2', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-06'}, 'data_fields': {'status': 'development', 'category': 'core', 'priority': 'high', 'release': '1.0.0', 'iteration': '1', 'originator': 'matth', 'origination_date': '2025-07-06', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: validate that everything with a file has meta fields (file, line, original text, original schema)\n# TODO: views switch more to jina2 ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (128, 0, 129, 126)} {'code_tag': 'WONTDO', 'comment': 'Out of scope- "Delete all TODOs before commit". If people don\'t want code tags, they also won\'t use this library.', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-06'}, 'data_fields': {'status': 'development', 'category': 'core', 'priority': 'high', 'release': '1.0.0', 'iteration': '1', 'originator': 'matth', 'origination_date': '2025-07-06', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# WONTDO: Out of scope- "Delete all TODOs before commit". If people don\'t want code tags, they also won\'t use this library. \n# TODO: precommit - don\'t commit if due, if due for active user ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (131, 0, 132, 155)} {'code_tag': 'TODO', 'comment': "precommit - don't commit if due, if due for active user", 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-06'}, 'data_fields': {'status': 'development', 'category': 'core', 'priority': 'high', 'release': '1.0.0', 'iteration': '1', 'originator': 'matth', 'origination_date': '2025-07-06', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# WONTDO: Out of scope- "Delete all TODOs before commit". If people don\'t want code tags, they also won\'t use this library. \n# TODO: precommit - don\'t commit if due, if due for active user ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (131, 0, 132, 155)} {'code_tag': 'TODO', 'comment': 'TODO.md - Kind of done, clunky, not sure if it works with kanban plugin.', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-06'}, 'data_fields': {'status': 'development', 'category': 'core', 'priority': 'high', 'release': '1.0.0', 'iteration': '1', 'originator': 'matth', 'origination_date': '2025-07-06', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: TODO.md - Kind of done, clunky, not sure if it works with kanban plugin. \n# TODO: improve DONE.md \n# TODO: unit test CHANGELOG.md - Need to validate. ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (134, 0, 136, 142)} {'code_tag': 'TODO', 'comment': 'improve DONE.md', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-06'}, 'data_fields': {'status': 'development', 'category': 'core', 'priority': 'high', 'release': '1.0.0', 'iteration': '1', 'originator': 'matth', 'origination_date': '2025-07-06', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: TODO.md - Kind of done, clunky, not sure if it works with kanban plugin. \n# TODO: improve DONE.md \n# TODO: unit test CHANGELOG.md - Need to validate. ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (134, 0, 136, 142)} {'code_tag': 'TODO', 'comment': 'unit test CHANGELOG.md - Need to validate.', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-06'}, 'data_fields': {'status': 'development', 'category': 'core', 'priority': 'high', 'release': '1.0.0', 'iteration': '1', 'originator': 'matth', 'origination_date': '2025-07-06', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: TODO.md - Kind of done, clunky, not sure if it works with kanban plugin. \n# TODO: improve DONE.md \n# TODO: unit test CHANGELOG.md - Need to validate. ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (134, 0, 136, 142)} {'code_tag': 'TODO', 'comment': 'Git Integration - Search history for completed issues (deleted TODO)', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-06'}, 'data_fields': {'status': 'development', 'category': 'core', 'priority': 'high', 'release': '1.0.0', 'iteration': '1', 'originator': 'matth', 'origination_date': '2025-07-06', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: Git Integration - Search history for completed issues (deleted TODO) \n# TODO: Git Integration - add standard file revision field ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (138, 0, 139, 151)} {'code_tag': 'TODO', 'comment': 'Git Integration - add standard file revision field', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-06'}, 'data_fields': {'status': 'development', 'category': 'core', 'priority': 'high', 'release': '1.0.0', 'iteration': '1', 'originator': 'matth', 'origination_date': '2025-07-06', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: Git Integration - Search history for completed issues (deleted TODO) \n# TODO: Git Integration - add standard file revision field ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (138, 0, 139, 151)} {'code_tag': 'TODO', 'comment': 'User Names AUTHORS.md driven - Partially done', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-06'}, 'data_fields': {'status': 'development', 'category': 'core', 'priority': 'high', 'release': '1.0.0', 'iteration': '1', 'originator': 'matth', 'origination_date': '2025-07-06', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: User Names AUTHORS.md driven - Partially done \n# TODO: Git driven- Integration! Maybe needs plugin? ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (141, 0, 142, 144)} {'code_tag': 'TODO', 'comment': 'Git driven- Integration! Maybe needs plugin?', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-06'}, 'data_fields': {'status': 'development', 'category': 'core', 'priority': 'high', 'release': '1.0.0', 'iteration': '1', 'originator': 'matth', 'origination_date': '2025-07-06', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: User Names AUTHORS.md driven - Partially done \n# TODO: Git driven- Integration! Maybe needs plugin? ', 'file_path': 'pycodetags/_TODO.py', 'original_schema': 'PEP350', 'offsets': (141, 0, 142, 144)} {'code_tag': 'TODO', 'comment': 'get schemas from plugins.', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-04'}, 'data_fields': {'category': 'plugin', 'priority': '2', 'status': 'development', 'release': '1.0.0', 'iteration': '1', 'originator': 'matth', 'origination_date': '2025-07-04', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: get schemas from plugins.', 'file_path': 'pycodetags/aggregate.py', 'original_schema': 'PEP350', 'offsets': (102, 4, 103, 80)} {'code_tag': 'BUG', 'comment': 'fails to walk the whole tree. This is shallow.', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-04'}, 'data_fields': {'category': 'parser', 'priority': 'high', 'status': 'development', 'release': '1.0.0', 'iteration': '1', 'originator': 'matth', 'origination_date': '2025-07-04', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# Filter out comment nodes\n # BUG: fails to walk the whole tree. This is shallow. ', 'file_path': 'pycodetags/python/comment_finder.py', 'original_schema': 'PEP350', 'offsets': (67, 4, 69, 82)} {'code_tag': 'TODO', 'comment': 'see if there is way to disambiguate to_flat_dict and to_dict (in the serializer)', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-05'}, 'data_fields': {'category': 'documentation', 'priority': 'low', 'status': 'development', 'release': '1.0.0', 'iteration': '1', 'originator': 'matth', 'origination_date': '2025-07-05', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: see if there is way to disambiguate to_flat_dict and to_dict (in the serializer) ', 'file_path': 'pycodetags/data_tags/data_tags_classes.py', 'original_schema': 'PEP350', 'offsets': (230, 8, 231, 93)} {'code_tag': 'BUG', 'comment': 'ignores if field is both data/default', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-04'}, 'data_fields': {'category': 'core', 'priority': 'high', 'status': 'development', 'release': '1.0.0', 'iteration': '1', 'originator': 'matth', 'origination_date': '2025-07-04', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# BUG: ignores if field is both data/default ', 'file_path': 'pycodetags/data_tags/data_tags_classes.py', 'original_schema': 'PEP350', 'offsets': (121, 12, 122, 88)} {'code_tag': 'BUG', 'comment': "Regex doesn't allow for showing this!", 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-04'}, 'data_fields': {'category': 'parser', 'priority': 'high', 'status': 'development', 'release': '1.0.0', 'iteration': '1', 'originator': 'matth', 'origination_date': '2025-07-04', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': "# BUG: Regex doesn't allow for showing this! ", 'file_path': 'pycodetags/data_tags/data_tags_parsers.py', 'original_schema': 'PEP350', 'offsets': (326, 41, 327, 93)} {'code_tag': 'TODO', 'comment': 'handle assignee/ str|list[str] catdogs in a more general fashion', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-13'}, 'data_fields': {'status': 'inprogress', 'category': 'catdogs', 'priority': 'high', 'release': '1.0.0', 'originator': 'matth', 'origination_date': '2025-07-13', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: handle assignee/ str|list[str] catdogs in a more general fashion \n # if normalized_key == "assignee":\n # # Assignees can be comma-separated in unquoted values\n # if "assignee" in fields["data_fields"]:\n # fields["data_fields"]["assignee"].extend([v.strip() for v in value.split(",") if v])\n # else:\n # fields["data_fields"]["assignee"] = [v.strip() for v in value.split(",") if v]\n # else:', 'file_path': 'pycodetags/data_tags/data_tags_parsers.py', 'original_schema': 'PEP350', 'offsets': (202, 12, 209, 19)} {'code_tag': 'BUG', 'comment': 'fails if there are two in the same. Blank out consumed text, reconsume bock', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-04'}, 'data_fields': {'category': 'parser', 'priority': 'high', 'status': 'development', 'release': '1.0.0', 'iteration': '1', 'originator': 'matth', 'origination_date': '2025-07-04', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# BUG: fails if there are two in the same. Blank out consumed text, reconsume bock ', 'file_path': 'pycodetags/data_tags/data_tags_parsers.py', 'original_schema': 'PEP350', 'offsets': (81, 16, 82, 94)} {'code_tag': 'TODO', 'comment': 'support config of folk schema.', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-04'}, 'data_fields': {'category': 'config', 'priority': 'high', 'status': 'development', 'release': '1.0.0', 'iteration': '1', 'originator': 'matth', 'origination_date': '2025-07-04', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: support config of folk schema.', 'file_path': 'pycodetags/data_tags/data_tags_parsers.py', 'original_schema': 'PEP350', 'offsets': (84, 16, 84, 147)} {'code_tag': 'BUG', 'comment': 'Offsets here are buggy.', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-04'}, 'data_fields': {'category': 'config', 'priority': 'high', 'status': 'development', 'release': '1.0.0', 'originator': 'matth', 'origination_date': '2025-07-04', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# BUG: Offsets here are buggy. ', 'file_path': 'pycodetags/data_tags/data_tags_parsers.py', 'original_schema': 'PEP350', 'offsets': (94, 20, 94, 132)} {'code_tag': 'TODO', 'comment': 'move user meta to issue tracker plugin', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-13'}, 'data_fields': {'status': 'inprogress', 'category': 'meta', 'priority': 'high', 'release': '1.0.0', 'originator': 'matth', 'origination_date': '2025-07-13', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: move user meta to issue tracker plugin ', 'file_path': 'pycodetags/data_tags/meta_builder.py', 'original_schema': 'PEP350', 'offsets': (89, 4, 89, 129)} {'code_tag': 'TODO', 'comment': 'also move priority_map to issue tracker plugin', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-13'}, 'data_fields': {'status': 'inprogress', 'category': 'meta', 'priority': 'high', 'release': '1.0.0', 'originator': 'matth', 'origination_date': '2025-07-13', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': "# TODO: also move priority_map to issue tracker plugin \n # This map is used by the 'priority' field's JMESPath expression\n # to set a default priority based on the code tag type.", 'file_path': 'pycodetags/data_tags/meta_builder.py', 'original_schema': 'PEP350', 'offsets': (102, 8, 104, 63)} {'code_tag': 'TODO', 'comment': 'support dict[str, int | date | str | list[int, date, str]] ?', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-04'}, 'data_fields': {'category': 'schema', 'priority': 'high', 'status': 'development', 'release': '1.0.0', 'iteration': '1', 'originator': 'matth', 'origination_date': '2025-07-04', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: support dict[str, int | date | str | list[int, date, str]] ? ', 'file_path': 'pycodetags/data_tags/data_tags_schema.py', 'original_schema': 'PEP350', 'offsets': (97, 4, 98, 82)} {'code_tag': 'TODO', 'comment': 'find more efficient way to filter.', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-04'}, 'data_fields': {'priority': 'low', 'category': 'views', 'status': 'development', 'release': '1.0.0', 'iteration': '1', 'originator': 'matth', 'origination_date': '2025-07-04', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: find more efficient way to filter.', 'file_path': 'pycodetags/views/views.py', 'original_schema': 'PEP350', 'offsets': (52, 12, 53, 60)} {'code_tag': 'TODO', 'comment': 'register issue tracker specific commands, e.g. remove DONE', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-04'}, 'data_fields': {'priority': 'low', 'category': 'plugin', 'status': 'development', 'release': '1.0.0', 'iteration': '1', 'originator': 'matth', 'origination_date': '2025-07-04', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: register issue tracker specific commands, e.g. remove DONE\n # ', 'file_path': 'plugins/pycodetags_issue_tracker/pycodetags_issue_tracker/main.py', 'original_schema': 'PEP350', 'offsets': (35, 8, 36, 103)} {'code_tag': 'TODO', 'comment': 'check for mandatory fields', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-04'}, 'data_fields': {'assignee': 'matth', 'status': 'done', 'category': 'validation', 'release': '0.3.0', 'closed_date': '2025-07-05', 'change_type': 'Added', 'originator': 'matth', 'origination_date': '2025-07-04', 'priority': 'medium'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: check for mandatory fields ', 'file_path': 'plugins/pycodetags_issue_tracker/pycodetags_issue_tracker/schema/issue_tracker_classes.py', 'original_schema': 'PEP350', 'offsets': (230, 8, 231, 66)} {'code_tag': 'TODO', 'comment': 'Implement authors from files', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-04'}, 'data_fields': {'status': 'development', 'category': 'validation', 'priority': 'high', 'release': '2.0.0', 'iteration': '1', 'originator': 'matth', 'origination_date': '2025-07-04', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# Authors from config.\n # TODO: Implement authors from files\n # ', 'file_path': 'plugins/pycodetags_issue_tracker/pycodetags_issue_tracker/schema/issue_tracker_classes.py', 'original_schema': 'PEP350', 'offsets': (254, 8, 256, 108)} {'code_tag': 'TODO', 'comment': 'Implement release/version from files', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-04'}, 'data_fields': {'status': 'development', 'category': 'parser', 'priority': 'medium', 'release': '2.0.0', 'iteration': '1', 'originator': 'matth', 'origination_date': '2025-07-04', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: Implement release/version from files\n # ', 'file_path': 'plugins/pycodetags_issue_tracker/pycodetags_issue_tracker/schema/issue_tracker_classes.py', 'original_schema': 'PEP350', 'offsets': (267, 8, 268, 106)} {'code_tag': 'TODO', 'comment': 'Implement release/version from files', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-04'}, 'data_fields': {'priority': 'low', 'category': 'validation', 'status': 'development', 'release': '2.0.0', 'iteration': '1', 'originator': 'matth', 'origination_date': '2025-07-04', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: Implement release/version from files ', 'file_path': 'plugins/pycodetags_issue_tracker/pycodetags_issue_tracker/schema/issue_tracker_classes.py', 'original_schema': 'PEP350', 'offsets': (274, 8, 275, 89)} {'code_tag': 'TODO', 'comment': 'find better way to upgrade string to strong type (date/int).', 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-04'}, 'data_fields': {'status': 'development', 'category': 'parser', 'priority': 'high', 'release': '1.0.0', 'iteration': '1', 'originator': 'matth', 'origination_date': '2025-07-04', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': '# TODO: find better way to upgrade string to strong type (date/int).\n # ', 'file_path': 'plugins/pycodetags_issue_tracker/pycodetags_issue_tracker/schema/issue_tracker_classes.py', 'original_schema': 'PEP350', 'offsets': (131, 12, 132, 108)} {'code_tag': 'BUG', 'comment': "This probably isn't he right way to sort a version", 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2024-07-04'}, 'data_fields': {'category': 'views', 'status': 'development', 'priority': 'low', 'release': '1.0.0', 'iteration': '1', 'originator': 'matth', 'origination_date': '2024-07-04', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': "# BUG: This probably isn't he right way to sort a version ", 'file_path': 'plugins/pycodetags_issue_tracker/pycodetags_issue_tracker/views/views.py', 'original_schema': 'PEP350', 'offsets': (82, 4, 83, 45)} {'code_tag': 'HACK', 'comment': "This works poorly when statuses are missing or if they don't sync up with the code tag.", 'fields': {'default_fields': {'originator': 'matth', 'origination_date': '2025-07-04'}, 'data_fields': {'category': 'views', 'priority': 'low', 'status': 'development', 'release': '1.0.0', 'iteration': '1', 'originator': 'matth', 'origination_date': '2025-07-04', 'change_type': 'Changed'}, 'custom_fields': {}, 'unprocessed_defaults': [], 'identity_fields': []}, 'original_text': "# HACK: This works poorly when statuses are missing or if they don't sync up with the code tag.", 'file_path': 'plugins/pycodetags_issue_tracker/pycodetags_issue_tracker/views/views.py', 'original_schema': 'PEP350', 'offsets': (155, 4, 156, 79)} riority="high" data-category="core" data-assignee="" data-originator="matth" data-release="1.0.0" data-code_tag="TODO" data-iteration="1" data-status="development"> # TODO: views switch more to jina2 # <matth 2025-07-06 status:development category:core priority:high release:1.0.0 iteration:1 change_type:Changed>
Schema: pep350
Originator: matth
Release: 1.0.0
Iteration: 1
Category: core
Priority: high
Change Type: Changed
File: pycodetags/_TODO.py:128
  • # WONTDO: Out of scope- "Delete all TODOs before commit". If people don't want code tags, they also won't use this library. # <matth 2025-07-06 status:development category:core priority:high release:1.0.0 iteration:1 change_type:Changed>
    Schema: pep350
    Originator: matth
    Release: 1.0.0
    Iteration: 1
    Category: core
    Priority: high
    Change Type: Changed
    File: pycodetags/_TODO.py:131
  • # TODO: precommit - don't commit if due, if due for active user # <matth 2025-07-06 status:development category:core priority:high release:1.0.0 iteration:1 change_type:Changed>
    Schema: pep350
    Originator: matth
    Release: 1.0.0
    Iteration: 1
    Category: core
    Priority: high
    Change Type: Changed
    File: pycodetags/_TODO.py:131
  • # TODO: TODO.md - Kind of done, clunky, not sure if it works with kanban plugin. # <matth 2025-07-06 status:development category:core priority:high release:1.0.0 iteration:1 change_type:Changed>
    Schema: pep350
    Originator: matth
    Release: 1.0.0
    Iteration: 1
    Category: core
    Priority: high
    Change Type: Changed
    File: pycodetags/_TODO.py:134
  • # TODO: improve DONE.md # <matth 2025-07-06 status:development category:core priority:high release:1.0.0 iteration:1 change_type:Changed>
    Schema: pep350
    Originator: matth
    Release: 1.0.0
    Iteration: 1
    Category: core
    Priority: high
    Change Type: Changed
    File: pycodetags/_TODO.py:134
  • # TODO: unit test CHANGELOG.md - Need to validate. # <matth 2025-07-06 status:development category:core priority:high release:1.0.0 iteration:1 change_type:Changed>
    Schema: pep350
    Originator: matth
    Release: 1.0.0
    Iteration: 1
    Category: core
    Priority: high
    Change Type: Changed
    File: pycodetags/_TODO.py:134
  • # TODO: Git Integration - Search history for completed issues (deleted TODO) # <matth 2025-07-06 status:development category:core priority:high release:1.0.0 iteration:1 change_type:Changed>
    Schema: pep350
    Originator: matth
    Release: 1.0.0
    Iteration: 1
    Category: core
    Priority: high
    Change Type: Changed
    File: pycodetags/_TODO.py:138
  • # TODO: Git Integration - add standard file revision field # <matth 2025-07-06 status:development category:core priority:high release:1.0.0 iteration:1 change_type:Changed>
    Schema: pep350
    Originator: matth
    Release: 1.0.0
    Iteration: 1
    Category: core
    Priority: high
    Change Type: Changed
    File: pycodetags/_TODO.py:138
  • # TODO: User Names AUTHORS.md driven - Partially done # <matth 2025-07-06 status:development category:core priority:high release:1.0.0 iteration:1 change_type:Changed>
    Schema: pep350
    Originator: matth
    Release: 1.0.0
    Iteration: 1
    Category: core
    Priority: high
    Change Type: Changed
    File: pycodetags/_TODO.py:141
  • # TODO: Git driven- Integration! Maybe needs plugin? # <matth 2025-07-06 status:development category:core priority:high release:1.0.0 iteration:1 change_type:Changed>
    Schema: pep350
    Originator: matth
    Release: 1.0.0
    Iteration: 1
    Category: core
    Priority: high
    Change Type: Changed
    File: pycodetags/_TODO.py:141
  • # TODO: get schemas from plugins. # <matth 2025-07-04 category:plugin priority:2 status:development release:1.0.0 iteration:1 change_type:Changed>
    Schema: pep350
    Originator: matth
    Release: 1.0.0
    Iteration: 1
    Category: plugin
    Priority: 2
    Change Type: Changed
    File: pycodetags/aggregate.py:102
  • # BUG: fails to walk the whole tree. This is shallow. # <matth 2025-07-04 category:parser priority:high status:development release:1.0.0 iteration:1 change_type:Changed>
    Schema: pep350
    Originator: matth
    Release: 1.0.0
    Iteration: 1
    Category: parser
    Priority: high
    Change Type: Changed
    File: pycodetags/python/comment_finder.py:67
  • # TODO: see if there is way to disambiguate to_flat_dict and to_dict (in the serializer) # <matth 2025-07-05 category:documentation priority:low status:development release:1.0.0 iteration:1 change_type:Changed>
    Schema: pep350
    Originator: matth
    Release: 1.0.0
    Iteration: 1
    Category: documentation
    Priority: low
    Change Type: Changed
    File: pycodetags/data_tags/data_tags_classes.py:230
  • # BUG: ignores if field is both data/default # <matth 2025-07-04 category:core priority:high status:development release:1.0.0 iteration:1 change_type:Changed>
    Schema: pep350
    Originator: matth
    Release: 1.0.0
    Iteration: 1
    Category: core
    Priority: high
    Change Type: Changed
    File: pycodetags/data_tags/data_tags_classes.py:121
  • # BUG: Regex doesn't allow for showing this! # <matth 2025-07-04 category:parser priority:high status:development release:1.0.0 iteration:1 change_type:Changed>
    Schema: pep350
    Originator: matth
    Release: 1.0.0
    Iteration: 1
    Category: parser
    Priority: high
    Change Type: Changed
    File: pycodetags/data_tags/data_tags_parsers.py:326
  • # TODO: handle assignee/ str|list[str] catdogs in a more general fashion # <matth 2025-07-13 status:inprogress category:catdogs priority:high release:1.0.0 change_type:Changed>
    Schema: pep350
    Originator: matth
    Release: 1.0.0
    Category: catdogs
    Priority: high
    Change Type: Changed
    File: pycodetags/data_tags/data_tags_parsers.py:202
  • # BUG: fails if there are two in the same. Blank out consumed text, reconsume bock # <matth 2025-07-04 category:parser priority:high status:development release:1.0.0 iteration:1 change_type:Changed>
    Schema: pep350
    Originator: matth
    Release: 1.0.0
    Iteration: 1
    Category: parser
    Priority: high
    Change Type: Changed
    File: pycodetags/data_tags/data_tags_parsers.py:81
  • # TODO: support config of folk schema. # <matth 2025-07-04 category:config priority:high status:development release:1.0.0 iteration:1 change_type:Changed>
    Schema: pep350
    Originator: matth
    Release: 1.0.0
    Iteration: 1
    Category: config
    Priority: high
    Change Type: Changed
    File: pycodetags/data_tags/data_tags_parsers.py:84
  • # BUG: Offsets here are buggy. # <matth 2025-07-04 category:config priority:high status:development release:1.0.0 change_type:Changed>
    Schema: pep350
    Originator: matth
    Release: 1.0.0
    Category: config
    Priority: high
    Change Type: Changed
    File: pycodetags/data_tags/data_tags_parsers.py:94
  • # TODO: move user meta to issue tracker plugin # <matth 2025-07-13 status:inprogress category:meta priority:high release:1.0.0 change_type:Changed>
    Schema: pep350
    Originator: matth
    Release: 1.0.0
    Category: meta
    Priority: high
    Change Type: Changed
    File: pycodetags/data_tags/meta_builder.py:89
  • # TODO: also move priority_map to issue tracker plugin # <matth 2025-07-13 status:inprogress category:meta priority:high release:1.0.0 change_type:Changed>
    Schema: pep350
    Originator: matth
    Release: 1.0.0
    Category: meta
    Priority: high
    Change Type: Changed
    File: pycodetags/data_tags/meta_builder.py:102
  • # TODO: support dict[str, int | date | str | list[int, date, str]] ? # <matth 2025-07-04 category:schema priority:high status:development release:1.0.0 iteration:1 change_type:Changed>
    Schema: pep350
    Originator: matth
    Release: 1.0.0
    Iteration: 1
    Category: schema
    Priority: high
    Change Type: Changed
    File: pycodetags/data_tags/data_tags_schema.py:97
  • # TODO: find more efficient way to filter. # <matth 2025-07-04 priority:low category:views status:development release:1.0.0 iteration:1 change_type:Changed>
    Schema: pep350
    Originator: matth
    Release: 1.0.0
    Iteration: 1
    Category: views
    Priority: low
    Change Type: Changed
    File: pycodetags/views/views.py:52
  • # TODO: register issue tracker specific commands, e.g. remove DONE # <matth 2025-07-04 priority:low category:plugin status:development release:1.0.0 iteration:1 change_type:Changed>
    Schema: pep350
    Originator: matth
    Release: 1.0.0
    Iteration: 1
    Category: plugin
    Priority: low
    Change Type: Changed
    File: plugins/pycodetags_issue_tracker/pycodetags_issue_tracker/main.py:35
  • # TODO: Implement authors from files # <matth 2025-07-04 status:development category:validation priority:high release:2.0.0 iteration:1 change_type:Changed>
    Schema: pep350
    Originator: matth
    Release: 2.0.0
    Iteration: 1
    Category: validation
    Priority: high
    Change Type: Changed
    File: plugins/pycodetags_issue_tracker/pycodetags_issue_tracker/schema/issue_tracker_classes.py:254
  • # TODO: Implement release/version from files # <matth 2025-07-04 status:development category:parser priority:medium release:2.0.0 iteration:1 change_type:Changed>
    Schema: pep350
    Originator: matth
    Release: 2.0.0
    Iteration: 1
    Category: parser
    Priority: medium
    Change Type: Changed
    File: plugins/pycodetags_issue_tracker/pycodetags_issue_tracker/schema/issue_tracker_classes.py:267
  • # TODO: Implement release/version from files # <matth 2025-07-04 priority:low category:validation status:development release:2.0.0 iteration:1 change_type:Changed>
    Schema: pep350
    Originator: matth
    Release: 2.0.0
    Iteration: 1
    Category: validation
    Priority: low
    Change Type: Changed
    File: plugins/pycodetags_issue_tracker/pycodetags_issue_tracker/schema/issue_tracker_classes.py:274
  • # TODO: find better way to upgrade string to strong type (date/int). # <matth 2025-07-04 status:development category:parser priority:high release:1.0.0 iteration:1 change_type:Changed>
    Schema: pep350
    Originator: matth
    Release: 1.0.0
    Iteration: 1
    Category: parser
    Priority: high
    Change Type: Changed
    File: plugins/pycodetags_issue_tracker/pycodetags_issue_tracker/schema/issue_tracker_classes.py:131
  • # BUG: This probably isn't he right way to sort a version # <matth 2024-07-04 category:views status:development priority:low release:1.0.0 iteration:1 change_type:Changed>
    Schema: pep350
    Originator: matth
    Release: 1.0.0
    Iteration: 1
    Category: views
    Priority: low
    Change Type: Changed
    File: plugins/pycodetags_issue_tracker/pycodetags_issue_tracker/views/views.py:82
  • # HACK: This works poorly when statuses are missing or if they don't sync up with the code tag. # <matth 2025-07-04 category:views priority:low status:development release:1.0.0 iteration:1 change_type:Changed>
    Schema: pep350
    Originator: matth
    Release: 1.0.0
    Iteration: 1
    Category: views
    Priority: low
    Change Type: Changed
    File: plugins/pycodetags_issue_tracker/pycodetags_issue_tracker/views/views.py:155
  • Dones

    • Folk tag need help: Need offsets for locating Folk Tags in source code. Needs testing
      Assignee: matth
      Closed: 2025-07-13
      Release: 0.6.0
    • check for mandatory fields
      Assignee: matth
      Closed: 2025-07-05
      Release: 0.3.0