Factory.ai
All Reports

Windows Terminal

C++

Strong Task Discovery

Windows Terminal reaches Level 3 with 100% Task Discovery pass rate. Currently becoming autonomous-capable with 29/55 criteria passing (53%). Key areas for improvement include the opportunities listed below.

Strengths

01
Task Discovery (100%)
Includes Backlog Health, Issue Labeling System, Issue Templates.
02
Cyclomatic Complexity
Complexity analysis via C++ Core Check rules in StaticAnalysis.ruleset (includes cognitive complexity checks).
03
Formatter
.clang-format configured with Microsoft style, ColumnLimit 0, specific include ordering rules.

Opportunities

01
Dead Code Detection
No dead code detection tools found (no knip, ts-prune, vulture, or C++ equivalent configured).
02
Duplicate Code Detection
No duplicate code detection tools (no jscpd, PMD CPD, or similar configured in CI/pre-commit).
03
Large File Detection
No tooling found for detecting large files. No git hooks, LFS configuration, or CI jobs checking file size.

All Criteria

Style & Validation4/9 (44%)
code_modularizationSKIP: C++ project with natural module boundaries via namespaces and compilation units, no additional tooling needed.
cyclomatic_complexityComplexity analysis via C++ Core Check rules in StaticAnalysis.ruleset (includes cognitive complexity checks).
dead_code_detectionNo dead code detection tools found (no knip, ts-prune, vulture, or C++ equivalent configured).
duplicate_code_detectionNo duplicate code detection tools (no jscpd, PMD CPD, or similar configured in CI/pre-commit).
formatter.clang-format configured with Microsoft style, ColumnLimit 0, specific include ordering rules.
large_file_detectionNo tooling found for detecting large files. No git hooks, LFS configuration, or CI jobs checking file size.
lint_configStatic analysis configured via StaticAnalysis.ruleset with C++ Core Check rules (C6001, C6011, etc.).
n_plus_one_detectionSKIP: Desktop application without database/ORM usage requiring N+1 query detection.
naming_consistencyNaming conventions enforced via .editorconfig (indent_style, charset) and clang-format rules.
pre_commit_hooksNo pre-commit hooks configured (no Husky, .pre-commit-config.yaml, or git hooks directory).
strict_typingSKIP: C++ has compile-time type enforcement by default.
tech_debt_trackingTODO/FIXME comments exist in code but no automated tracking system (no TODO scanner in CI, no linter rules enforcing issue links).
type_checkSKIP: C++ is statically typed by default with compile-time type checking.
Build System9/12 (75%)
agentic_developmentNo evidence of agent co-authorship in recent 100 commits (no droid, Claude, or co-authored-by agent signatures).
automated_pr_reviewSKIP: gh CLI available but no evidence of automated PR review bots generating review comments.
build_cmd_docBuild commands well-documented in doc/building.md with PowerShell and Cmd examples.
build_performance_trackingSKIP: gh CLI available but no evidence of build performance tracking or caching metrics analysis in CI.
dead_feature_flag_detectionFeature flag infrastructure exists but no tooling to detect stale/unused flags in features.xml.
deployment_frequencyMultiple releases per month (30 releases listed in recent history, ~2-4 week cadence between releases).
deps_pinnedDependencies pinned via vcpkg.json with explicit version overrides and builtin-baseline commit hash.
fast_ci_feedbackCI checks complete in under 10 minutes (spell check: ~2 minutes based on statusCheckRollup timestamps).
feature_flag_infrastructureRobust feature flag system using src/features.xml with til::feature, supports branch/branding-based toggles.
heavy_dependency_detectionSKIP: Native C++ application, not a bundled web app requiring bundle size analysis.
monorepo_toolingSKIP: Single application repository, not a monorepo with multiple independently deployable packages.
progressive_rolloutSKIP: Desktop application distributed via Microsoft Store and direct download, not a web service with canary deployments.
release_automationAutomated release pipeline (build/pipelines/ob-release.yml) with signing, packaging, and publishing to multiple channels.
release_notes_automationAutomated releases with structured release notes (ob-release.yml pipeline, consistent format with bug fixes and contributors).
rollback_automationSKIP: Desktop application where users control version installation, not an infra-based deployment requiring rollback.
single_command_setupSingle command setup documented in doc/building.md: Import-Module + Set-MsBuildDevEnvironment + Invoke-OpenConsoleBuild.
unused_dependencies_detectionNo unused dependency detection configured (vcpkg doesn't include built-in detection like npm/cargo).
vcs_cli_toolsGitHub CLI (gh) is installed and authenticated (verified with gh auth status).
version_drift_detectionSKIP: Not a monorepo, no multiple packages requiring version consistency checks.
Testing4/7 (57%)
flaky_test_detectionSKIP: gh CLI available but no evidence of flaky test detection (no retry config, test stability metrics).
integration_tests_existIntegration/feature tests exist (Host.FeatureTests, TerminalApp.LocalTests, WindowsTerminal.UIA.Tests).
test_coverage_thresholdsNo test coverage thresholds configured (.runsettings files exist but don't specify coverage requirements).
test_isolationNo explicit test isolation configuration (no parallel test execution or randomization settings in .runsettings).
test_naming_conventionsConsistent test naming conventions (*UnitTests.vcxproj, *FeatureTests.vcxproj pattern followed across all test projects).
test_performance_trackingNo evidence of test performance tracking (no test duration reporting or test analytics platform integration).
unit_tests_existExtensive unit tests exist (TextBuffer.Unit.Tests, Host.UnitTests, TerminalApp.UnitTests, etc.).
unit_tests_runnableTests runnable via Invoke-OpenConsoleTests PowerShell function and runut.cmd/runft.cmd scripts.
Documentation2/6 (33%)
agents_mdNo AGENTS.md file at repository root.
agents_md_validationSKIP: No AGENTS.md file exists, so validation not applicable.
api_schema_docsSKIP: Desktop application, not an API service requiring OpenAPI/GraphQL schema documentation.
automated_doc_generationNo evidence of automated documentation generation tools (no Doxygen, API doc generators, or doc-gen workflows).
documentation_freshnessKey documentation updated recently (CONTRIBUTING.md modified in last 180 days).
readmeComprehensive README.md with installation, building, running, debugging, and contribution instructions.
service_flow_documentedNo architecture diagrams found (no .mermaid, .puml files, or architecture/diagrams directories).
skillsNo skills directory found (.factory/skills/, .skills/, .claude/skills/).
Dev Environment0/1 (0%)
database_schemaSKIP: No database usage (terminal emulator with in-memory state, no Prisma/TypeORM/SQL schemas).
devcontainerNo .devcontainer/devcontainer.json configuration found.
devcontainer_runnableSKIP: No devcontainer configuration exists to test.
env_templateSKIP: Desktop application that doesn't require environment variable configuration (no .env usage in codebase).
local_services_setupSKIP: No external service dependencies (no database, Redis, etc.) requiring docker-compose or local setup.
Debugging & Observability3/8 (38%)
alerting_configuredNo alerting system configured (no PagerDuty, OpsGenie, or custom alerting rules found).
circuit_breakersSKIP: Desktop application without external service dependencies requiring circuit breaker patterns.
code_quality_metricsSKIP: gh CLI authenticated but insufficient permissions (403) to verify code scanning/quality metrics via API.
deployment_observabilityNo deployment observability references (no monitoring dashboard links in docs, no deploy annotations).
distributed_tracingDistributed tracing via ETW TraceLogging with activity IDs and correlation (TRACELOGGING_DECLARE_PROVIDER infrastructure).
error_tracking_contextualizedNo contextualized error tracking (Sentry, Bugsnag, Rollbar not found in dependencies or configuration).
health_checksSKIP: Desktop application not deployed as a service, health check endpoints not applicable.
metrics_collectionTelemetry/metrics collection via ProjectTelemetry.h (TraceLoggingOptionMicrosoftTelemetry, TelemetryPrivacyDataTag macros).
profiling_instrumentationNo profiling instrumentation found (no APM tools, continuous profiling, or profiling framework configured).
runbooks_documentedNo runbooks or incident response procedures documented or referenced in README/docs.
structured_loggingStructured logging via Windows ETW TraceLogging (tracing.hpp files, ProjectTelemetry.h infrastructure).
Security3/6 (50%)
automated_security_reviewSKIP: gh CLI authenticated but API returns 403 for code-scanning/alerts (insufficient permissions to verify).
branch_protectionBranch protection via GitHub rulesets (2 active rulesets found: microsoft-production-ruleset and check-spelling).
codeownersNo CODEOWNERS file found in root or .github/ directory.
dast_scanningSKIP: Desktop application, not a web service requiring DAST scanning (OWASP ZAP, Burp Suite).
dependency_update_automationNo Dependabot or Renovate configuration found (.github/dependabot.yml, renovate.json missing).
gitignore_comprehensiveComprehensive .gitignore excludes .env files, node_modules, build artifacts, IDE configs (.idea, .vscode), and OS files (.DS_Store).
log_scrubbingNo log scrubbing/sanitization configured (TraceLogging exists but no redaction or filtering mechanisms found).
pii_handlingSKIP: Terminal emulator that doesn't collect or process PII (no user data storage or transmission).
privacy_complianceSKIP: Desktop application without end-user data collection (terminal emulator, no PII processing requirements).
secret_scanningSKIP: gh CLI authenticated but API returns 404 for secret-scanning/alerts endpoint, cannot verify enablement.
secrets_managementNo hardcoded secrets found, .env properly gitignored, uses Azure DevOps pipeline secrets for signing credentials.
Task Discovery4/4 (100%)
backlog_health100% of open issues (50 sampled) have descriptive titles >10 chars AND at least one label.
issue_labeling_systemConsistent labeling system (Issue-Bug, Needs-Triage, Product-Terminal, Area-* for components).
issue_templatesIssue templates configured in .github/ISSUE_TEMPLATE/ (Bug_Report.yml, Feature_Request.yml, config.yml).
pr_templatesPR template exists at .github/PULL_REQUEST_TEMPLATE.md with sections for summary, references, validation, and checklist.
Product & Analytics0/2 (0%)
error_to_insight_pipelineNo error-to-insight pipeline (no Sentry-GitHub integration, no automated issue creation from errors).
product_analytics_instrumentationNo product analytics instrumentation (Mixpanel, Amplitude, PostHog, Heap, GA4 not found in dependencies).

start building

Ready to build the software of the future?

Start building

Arrow Right Icon