Scan timing: clone 16.36s · analysis 7.5s · 49.1 MB · GitHub API rate-limit (preflight)
https://github.com/obsidian-tasks-group/obsidian-tasks
· scanned 2026-06-05 20:51 UTC (4 days, 13 hours ago)
· 10 languages
311 raw signals (61 security + 250 graph) 11/13 scanners ran 98th percentile · Typescript · large (100-500K LoC) System graph score 64 (higher by 26)
Last scanned 4 days, 13 hours ago · v2 · 142 actionable findings from 2 signal sources. 44 repeated signals grouped for readability. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.
| Component | Sub-score | Weight | Contribution |
|---|---|---|---|
structure_score |
85.0 | 0.15 | 12.75 |
security_score |
100.0 | 0.25 | 25.00 |
testing_score |
100.0 | 0.20 | 20.00 |
documentation_score |
84.0 | 0.15 | 12.60 |
practices_score |
85.0 | 0.15 | 12.75 |
code_quality |
70.0 | 0.10 | 7.00 |
| Overall | 1.00 | 90.1 |
All 2333 nodes from the latest scan, grouped by kind. Each node is a unit the engine identified (file, function, endpoint, table…). Most users won't need this view — it's primarily for debugging the engine's graph extraction or for AI agents that want to enumerate the project structure.
| Label | Layer | Status | Path |
|---|---|---|---|
jest.config.js |
software | warning | jest.config.js |
manifest.json |
software | healthy | manifest.json |
README.md |
software | healthy | README.md |
.prettierrc.js |
software | warning | .prettierrc.js |
package.json |
software | healthy | package.json |
versions.json |
software | healthy | versions.json |
jest.integration.config.js |
software | warning | jest.integration.config.js |
release.sh |
software | healthy | release.sh |
CONTRIBUTING.md |
software | healthy | CONTRIBUTING.md |
svelte.config.js |
software | warning | svelte.config.js |
mdsnippets.json |
software | healthy | mdsnippets.json |
lefthook.yml |
software | healthy | lefthook.yml |
tsconfig.json |
software | healthy | tsconfig.json |
i18next-parser.config.js |
software | warning | i18next-parser.config.js |
CODE_OF_CONDUCT.md |
software | healthy | CODE_OF_CONDUCT.md |
global-setup.js |
software | warning | tests/global-setup.js |
jest.setup.ts |
software | warning | tests/jest.setup.ts |
CustomMatchersForFilters.test.ts |
software | healthy | tests/CustomMatchers/CustomMatchersForFilters.test.ts |
CustomMatchersForDates.ts |
software | healthy | tests/CustomMatchers/CustomMatchersForDates.ts |
CustomMatchersForTaskBuilder.ts |
software | healthy | tests/CustomMatchers/CustomMatchersForTaskBuilder.ts |
CustomMatchersForTasks.ts |
software | healthy | tests/CustomMatchers/CustomMatchersForTasks.ts |
CustomMatchersForTaskSerializer.ts |
software | healthy | tests/CustomMatchers/CustomMatchersForTaskSerializer.ts |
CustomMatchersForFilters.ts |
software | healthy | tests/CustomMatchers/CustomMatchersForFilters.ts |
CustomMatchersForExpressions.ts |
software | healthy | tests/CustomMatchers/CustomMatchersForExpressions.ts |
CustomMatchersForGrouping.ts |
software | healthy | tests/CustomMatchers/CustomMatchersForGrouping.ts |
jest.custom_matchers.setup.ts |
software | warning | tests/CustomMatchers/jest.custom_matchers.setup.ts |
CustomMatchersForRendering.ts |
software | healthy | tests/CustomMatchers/CustomMatchersForRendering.ts |
CustomMatchersForSorting.ts |
software | healthy | tests/CustomMatchers/CustomMatchersForSorting.ts |
ObsidianSearchFacilities.test.ts |
software | healthy | tests/Obsidian/ObsidianSearchFacilities.test.ts |
SimulatedFile.ts |
software | healthy | tests/Obsidian/SimulatedFile.ts |
File.test.ts |
software | healthy | tests/Obsidian/File.test.ts |
FileParser.test.ts |
software | warning | tests/Obsidian/FileParser.test.ts |
AllCacheSampleData.ts |
software | warning | tests/Obsidian/AllCacheSampleData.ts |
Cache.test.ts |
software | healthy | tests/Obsidian/Cache.test.ts |
no_heading.json |
software | healthy | tests/Obsidian/__test_data__/no_heading.json |
inheritance_1parent1child.json |
software | healthy | tests/Obsidian/__test_data__/inheritance_1parent1child.json |
callouts_nested_issue_2890_labelled.json |
software | healthy | tests/Obsidian/__test_data__/callouts_nested_issue_2890_lab… |
yaml_aliases_with_two_values_on_one_line.json |
software | healthy | tests/Obsidian/__test_data__/yaml_aliases_with_two_values_o… |
link_in_task_html.json |
software | healthy | tests/Obsidian/__test_data__/link_in_task_html.json |
callout.json |
software | healthy | tests/Obsidian/__test_data__/callout.json |
yaml_all_property_types_empty.json |
software | healthy | tests/Obsidian/__test_data__/yaml_all_property_types_empty.… |
code_block_in_task.json |
software | healthy | tests/Obsidian/__test_data__/code_block_in_task.json |
query_file_defaults_all_options_false.json |
software | healthy | tests/Obsidian/__test_data__/query_file_defaults_all_option… |
inheritance_task_listitem_mixed_grandchildren.json |
software | healthy | tests/Obsidian/__test_data__/inheritance_task_listitem_mixe… |
inheritance_rendering_sample.json |
software | healthy | tests/Obsidian/__test_data__/inheritance_rendering_sample.j… |
yaml_cssclasses_with_two_values_on_one_line.json |
software | healthy | tests/Obsidian/__test_data__/yaml_cssclasses_with_two_value… |
internal_heading_links.json |
software | healthy | tests/Obsidian/__test_data__/internal_heading_links.json |
link_in_task_markdown_link.json |
software | healthy | tests/Obsidian/__test_data__/link_in_task_markdown_link.json |
callout_labelled.json |
software | healthy | tests/Obsidian/__test_data__/callout_labelled.json |
inheritance_2roots_listitem_listitem_task.json |
software | healthy | tests/Obsidian/__test_data__/inheritance_2roots_listitem_li… |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
checkSearchInfoPassedThrough |
software | healthy | tests/CustomMatchers/CustomMatchersForFilters.test.ts:check… |
toEqualMoment |
software | healthy | tests/CustomMatchers/CustomMatchersForDates.ts:toEqualMoment |
toBeIdenticalTo |
software | healthy | tests/CustomMatchers/CustomMatchersForTaskBuilder.ts:toBeId… |
toToggleTo |
software | healthy | tests/CustomMatchers/CustomMatchersForTasks.ts:toToggleTo |
toToggleWithRecurrenceInUsersOrderTo |
software | healthy | tests/CustomMatchers/CustomMatchersForTasks.ts:toToggleWith… |
toMatchMarkdownLines |
software | healthy | tests/CustomMatchers/CustomMatchersForTasks.ts:toMatchMarkd… |
toMatchLines |
software | healthy | tests/CustomMatchers/CustomMatchersForTasks.ts:toMatchLines |
isTaskDetails |
software | healthy | tests/CustomMatchers/CustomMatchersForTaskSerializer.ts:isT… |
that |
software | healthy | tests/CustomMatchers/CustomMatchersForTaskSerializer.ts:that |
summarizeTaskDetails |
software | healthy | tests/CustomMatchers/CustomMatchersForTaskSerializer.ts:sum… |
tryBuildTaskDetails |
software | healthy | tests/CustomMatchers/CustomMatchersForTaskSerializer.ts:try… |
wrongTypeMessage |
software | healthy | tests/CustomMatchers/CustomMatchersForTaskSerializer.ts:wro… |
expected |
software | healthy | tests/CustomMatchers/CustomMatchersForTaskSerializer.ts:exp… |
capitalize |
software | healthy | tests/CustomMatchers/CustomMatchersForTaskSerializer.ts:cap… |
toBeValid |
software | healthy | tests/CustomMatchers/CustomMatchersForFilters.ts:toBeValid |
toHaveExplanation |
software | healthy | tests/CustomMatchers/CustomMatchersForFilters.ts:toHaveExpl… |
toMatchTaskWithSearchInfo |
software | healthy | tests/CustomMatchers/CustomMatchersForFilters.ts:toMatchTas… |
toMatchTaskInTaskList |
software | healthy | tests/CustomMatchers/CustomMatchersForFilters.ts:toMatchTas… |
toMatchTask |
software | healthy | tests/CustomMatchers/CustomMatchersForFilters.ts:toMatchTask |
toMatchTaskFromLine |
software | healthy | tests/CustomMatchers/CustomMatchersForFilters.ts:toMatchTas… |
toMatchTaskWithDescription |
software | healthy | tests/CustomMatchers/CustomMatchersForFilters.ts:toMatchTas… |
toMatchTaskWithHeading |
software | healthy | tests/CustomMatchers/CustomMatchersForFilters.ts:toMatchTas… |
toMatchTaskWithPath |
software | healthy | tests/CustomMatchers/CustomMatchersForFilters.ts:toMatchTas… |
toMatchTaskWithStatus |
software | healthy | tests/CustomMatchers/CustomMatchersForFilters.ts:toMatchTas… |
toEvaluateAs |
software | healthy | tests/CustomMatchers/CustomMatchersForExpressions.ts:toEval… |
toSupportGroupingWithProperty |
software | healthy | tests/CustomMatchers/CustomMatchersForGrouping.ts:toSupport… |
groupHeadingsForTask |
software | healthy | tests/CustomMatchers/CustomMatchersForGrouping.ts:groupHead… |
groupHeadingsToBe |
software | healthy | tests/CustomMatchers/CustomMatchersForGrouping.ts:groupHead… |
toGroupTask |
software | healthy | tests/CustomMatchers/CustomMatchersForGrouping.ts:toGroupTa… |
toGroupTaskUsingSearchInfo |
software | healthy | tests/CustomMatchers/CustomMatchersForGrouping.ts:toGroupTa… |
toGroupTaskFromBuilder |
software | healthy | tests/CustomMatchers/CustomMatchersForGrouping.ts:toGroupTa… |
toGroupTaskWithPath |
software | healthy | tests/CustomMatchers/CustomMatchersForGrouping.ts:toGroupTa… |
getTextSpan |
software | healthy | tests/CustomMatchers/CustomMatchersForRendering.ts:getTextS… |
getDataAttributesAsString |
software | healthy | tests/CustomMatchers/CustomMatchersForRendering.ts:getDataA… |
toHaveAmongDataAttributes |
software | healthy | tests/CustomMatchers/CustomMatchersForRendering.ts:toHaveAm… |
toHaveDataAttributes |
software | healthy | tests/CustomMatchers/CustomMatchersForRendering.ts:toHaveDa… |
toHaveAChildSpanWithClass |
software | healthy | tests/CustomMatchers/CustomMatchersForRendering.ts:toHaveAC… |
toHaveAChildSpanWithClassAndDataAttributes |
software | healthy | tests/CustomMatchers/CustomMatchersForRendering.ts:toHaveAC… |
message |
software | healthy | tests/CustomMatchers/CustomMatchersForSorting.ts:message |
expectDateComparesBefore |
software | healthy | tests/CustomMatchers/CustomMatchersForSorting.ts:expectDate… |
expectDateComparesEqual |
software | healthy | tests/CustomMatchers/CustomMatchersForSorting.ts:expectDate… |
expectDateComparesAfter |
software | healthy | tests/CustomMatchers/CustomMatchersForSorting.ts:expectDate… |
testCompareByDateBothWays |
software | healthy | tests/CustomMatchers/CustomMatchersForSorting.ts:testCompar… |
expectTaskComparesBefore |
software | healthy | tests/CustomMatchers/CustomMatchersForSorting.ts:expectTask… |
expectTaskComparesEqual |
software | healthy | tests/CustomMatchers/CustomMatchersForSorting.ts:expectTask… |
expectTaskComparesAfter |
software | healthy | tests/CustomMatchers/CustomMatchersForSorting.ts:expectTask… |
testCompareTasksBothWays |
software | healthy | tests/CustomMatchers/CustomMatchersForSorting.ts:testCompar… |
simpleSearchShouldNotMatch |
software | healthy | tests/Obsidian/ObsidianSearchFacilities.test.ts:simpleSearc… |
simpleSearchResultAsJSON |
software | healthy | tests/Obsidian/ObsidianSearchFacilities.test.ts:simpleSearc… |
to |
software | healthy | tests/Obsidian/ObsidianSearchFacilities.test.ts:to |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
Line |
software | healthy | tests/CustomMatchers/CustomMatchersForFilters.ts:Line |
$ |
software | healthy | tests/CustomMatchers/CustomMatchersForRendering.ts:$ |
should |
software | healthy | tests/CustomMatchers/CustomMatchersForRendering.ts:should |
are |
software | healthy | tests/CustomMatchers/CustomMatchersForRendering.ts:are |
in |
software | healthy | tests/Obsidian/Cache.test.ts:in |
which |
software | healthy | tests/Api/executeToggleTaskDoneCommand.test.ts:which |
Mock |
software | healthy | tests/Api/executeToggleTaskDoneCommand.test.ts:Mock |
TestableTaskSaver |
software | healthy | tests/ui/Menus/MenuTestingHelpers.ts:TestableTaskSaver |
MenuItem |
software | healthy | tests/__mocks__/obsidian.ts:MenuItem |
Menu |
software | healthy | tests/__mocks__/obsidian.ts:Menu |
Notice |
software | healthy | tests/__mocks__/obsidian.ts:Notice |
Modal |
software | healthy | tests/__mocks__/obsidian.ts:Modal |
TaskModal |
software | healthy | tests/__mocks__/TaskModal.ts:TaskModal |
parses |
software | healthy | tests/Query/Query.test.ts:parses |
TestFieldSortingUnSupported |
software | healthy | tests/Query/Filter/Field.test.ts:TestFieldSortingUnSupported |
DescriptionLengthField |
software | healthy | tests/Query/Filter/Field.test.ts:DescriptionLengthField |
usability |
software | healthy | tests/Query/Filter/Field.test.ts:usability |
TestingTaskSerializer |
software | healthy | tests/TaskSerializer/TaskSerializer.test.ts:TestingTaskSeri… |
RendererStoryboard |
software | healthy | tests/Renderer/QueryResultsRenderer.test.ts:RendererStorybo… |
name |
software | healthy | tests/Renderer/TaskFieldRenderer.test.ts:name |
and |
software | healthy | tests/Renderer/TaskLineRenderer.test.ts:and |
but |
software | healthy | tests/Renderer/TaskLineRenderer.test.ts:but |
AutoApprovingReporter |
software | healthy | tests/TestingTools/AutoApprovingReporter.ts:AutoApprovingRe… |
for |
software | healthy | tests/TestingTools/RecurrenceBuilder.ts:for |
RecurrenceBuilder |
software | healthy | tests/TestingTools/RecurrenceBuilder.ts:RecurrenceBuilder |
for |
software | healthy | tests/TestingTools/TaskBuilder.ts:for |
TaskBuilder |
software | healthy | tests/TestingTools/TaskBuilder.ts:TaskBuilder |
for |
software | healthy | tests/TestingTools/MockDataLoader.ts:for |
provides |
software | healthy | tests/TestingTools/MockDataLoader.ts:provides |
MockDataLoader |
software | healthy | tests/TestingTools/MockDataLoader.ts:MockDataLoader |
SampleTasks |
software | healthy | tests/TestingTools/SampleTasks.ts:SampleTasks |
for |
software | healthy | tests/TestingTools/FilterTestHelpers.ts:for |
TasksPlugin |
software | healthy | src/main.ts:TasksPlugin |
to |
software | healthy | src/IQuery.ts:to |
TasksEvents |
software | healthy | src/Obsidian/TasksEvents.ts:TasksEvents |
WarningWorthRetrying |
software | healthy | src/Obsidian/File.ts:WarningWorthRetrying |
RetryWithoutWarning |
software | healthy | src/Obsidian/File.ts:RetryWithoutWarning |
TaskModal |
software | healthy | src/Obsidian/TaskModal.ts:TaskModal |
processes |
software | healthy | src/Obsidian/InlineRenderer.ts:processes |
InlineRenderer |
software | healthy | src/Obsidian/InlineRenderer.ts:InlineRenderer |
FileParser |
software | healthy | src/Obsidian/FileParser.ts:FileParser |
Cache |
software | healthy | src/Obsidian/Cache.ts:Cache |
will |
software | healthy | src/Obsidian/Cache.ts:will |
is |
software | healthy | src/Obsidian/LivePreviewExtension.ts:is |
LivePreviewExtension |
software | healthy | src/Obsidian/LivePreviewExtension.ts:LivePreviewExtension |
OptionsModal |
software | healthy | src/Obsidian/OptionsModal.ts:OptionsModal |
TasksDate |
software | healthy | src/DateTime/TasksDate.ts:TasksDate |
DateParser |
software | healthy | src/DateTime/DateParser.ts:DateParser |
DateFallback |
software | healthy | src/DateTime/DateFallback.ts:DateFallback |
DateRange |
software | healthy | src/DateTime/DateRange.ts:DateRange |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
tests |
software | healthy | tests |
CustomMatchers |
software | healthy | tests/CustomMatchers |
Obsidian |
software | healthy | tests/Obsidian |
__test_data__ |
software | healthy | tests/Obsidian/__test_data__ |
metadataCache |
software | healthy | tests/Obsidian/__test_data__/metadataCache |
i18n |
software | healthy | tests/i18n |
__test_data__ |
software | healthy | tests/__test_data__ |
MockDataForTogglingTasks |
software | healthy | tests/__test_data__/MockDataForTogglingTasks |
DocumentationSamples |
software | healthy | tests/DocumentationSamples |
UrgencyDocs |
software | healthy | tests/DocumentationSamples/UrgencyDocs |
DefaultsDocs |
software | healthy | tests/DocumentationSamples/DefaultsDocs |
DependencyDocs |
software | healthy | tests/DocumentationSamples/DependencyDocs |
DateTime |
software | healthy | tests/DateTime |
Api |
software | healthy | tests/Api |
Scripting |
software | healthy | tests/Scripting |
ScriptingReference |
software | healthy | tests/Scripting/ScriptingReference |
CustomSorting |
software | healthy | tests/Scripting/ScriptingReference/CustomSorting |
CustomGrouping |
software | healthy | tests/Scripting/ScriptingReference/CustomGrouping |
CustomFiltering |
software | healthy | tests/Scripting/ScriptingReference/CustomFiltering |
ui |
software | healthy | tests/ui |
Menus |
software | healthy | tests/ui/Menus |
EditInstructions |
software | healthy | tests/ui/EditInstructions |
__mocks__ |
software | healthy | tests/__mocks__ |
Query |
software | healthy | tests/Query |
Filter |
software | healthy | tests/Query/Filter |
ReferenceDocs |
software | healthy | tests/Query/Filter/ReferenceDocs |
FilterReference |
software | healthy | tests/Query/Filter/ReferenceDocs/FilterReference |
Explain |
software | healthy | tests/Query/Explain |
Matchers |
software | healthy | tests/Query/Matchers |
Presets |
software | healthy | tests/Query/Presets |
Group |
software | healthy | tests/Query/Group |
Sort |
software | healthy | tests/Query/Sort |
lib |
software | healthy | tests/lib |
Config |
software | healthy | tests/Config |
Suggestor |
software | healthy | tests/Suggestor |
Layout |
software | healthy | tests/Layout |
Commands |
software | healthy | tests/Commands |
Integration |
software | healthy | tests/Integration |
TaskSerializer |
software | healthy | tests/TaskSerializer |
Task |
software | healthy | tests/Task |
Renderer |
software | healthy | tests/Renderer |
Statuses |
software | healthy | tests/Statuses |
TestingTools |
software | healthy | tests/TestingTools |
integration_tests |
software | healthy | integration_tests |
docs |
software | healthy | docs |
Reference |
software | healthy | docs/Reference |
Status Collections |
software | healthy | docs/Reference/Status Collections |
Task Formats |
software | healthy | docs/Reference/Task Formats |
Getting Started |
software | healthy | docs/Getting Started |
Statuses |
software | healthy | docs/Getting Started/Statuses |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
port:12 |
network | healthy | tests/DocumentationSamples/DefaultsDocs/DocsSamplesForDefau… |
port:37 |
network | healthy | tests/DocumentationSamples/DefaultsDocs/DocsSamplesForDefau… |
port:15 |
network | healthy | tests/DocumentationSamples/DefaultsDocs/DocsSamplesForDefau… |
port:17 |
network | healthy | tests/DocumentationSamples/DefaultsDocs/DocsSamplesForDefau… |
| Label | Layer | Status | Path |
|---|---|---|---|
gha::update-docs-markdown |
cicd | healthy | .github/workflows/update-docs-markdown.yml |
gha::verify |
cicd | healthy | .github/workflows/verify.yml |
gha::release |
cicd | healthy | .github/workflows/release.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
docs |
cicd | healthy | .github/workflows/update-docs-markdown.yml |
validate |
cicd | healthy | .github/workflows/verify.yml |
build |
cicd | healthy | .github/workflows/release.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-2supnl1f |
software | healthy | /tmp/repobility-clone-2supnl1f |
| Label | Layer | Status | Path |
|---|---|---|---|
/root/SeArch_Text/search_text.md |
frontend | healthy | tests/Query/Filter/RootField.test.ts |
| Label | Layer | Status | Path |
|---|---|---|---|
GITHUB_TOKEN |
cicd | healthy | — |
This page is publicly accessible at:
https://repobility.com/scan/8e99b1a9-d2ca-409a-82ad-1347c5dd3629/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/8e99b1a9-d2ca-409a-82ad-1347c5dd3629/
Important — please don't re-submit the same URL repeatedly. The submission endpoint is idempotent: re-submitting the same git URL returns this same scan_token, not a new one. To re-scan this repo, sign up free and use the dashboard.