Factory.ai
All Reports

Fresh

TypeScript

Strong Build System

Fresh reaches Level 3 with 71% Build System pass rate. Currently becoming autonomous-capable with 34/58 criteria passing (59%). Key areas for improvement include the opportunities listed below.

Strengths

01
Code Modularization
Rust compiler enforces module visibility and boundaries (pub/private), no additional tooling needed
02
Cyclomatic Complexity
Clippy analyzes code complexity and can warn on high cyclomatic complexity
03
Dead Code Detection
Rust compiler warns on unused code by default (dead_code lint)

Opportunities

01
Pre Commit Hooks
Set up pre-commit hooks (Husky, pre-commit) to catch issues before they reach CI and speed up feedback loops.
02
Feature Flag Infrastructure
Add feature flags to enable safer deployments and gradual rollouts.
03
Test Coverage Thresholds
Establish minimum test coverage thresholds to prevent regression and maintain code quality.

All Criteria

Style & Validation8/12 (67%)
✓code_modularizationRust compiler enforces module visibility and boundaries (pub/private), no additional tooling needed
✓cyclomatic_complexityClippy analyzes code complexity and can warn on high cyclomatic complexity
✓dead_code_detectionRust compiler warns on unused code by default (dead_code lint)
✗duplicate_code_detectionNo jscpd, PMD CPD, or SonarQube configured for duplicate code detection
✓formattercargo fmt configured in CI (ci.yml checks formatting on all PRs)
✗large_file_detectionNo git hooks, CI checks, or LFS configuration found for detecting large files
✓lint_configClippy configured in CI (ci.yml runs clippy check on all PRs)
—n_plus_one_detectionSkipped: No database or ORM usage in this CLI application
✓naming_consistencyClippy enforces Rust naming conventions (snake_case, CamelCase) via linter rules
✗pre_commit_hooksNo pre-commit hooks configured (no .pre-commit-config.yaml, no Husky)
✓strict_typingRust is strictly typed by default, compiler enforces type safety
✗tech_debt_trackingNo TODO/FIXME scanner in CI, no SonarQube, no tech debt tracking tools configured
✓type_checkRust has built-in strict type checking, enforced by compiler
Build System10/14 (71%)
✓agentic_developmentGit log shows co-authorship with Claude Opus 4.5 in recent commits
—automated_pr_reviewSkipped: OSS repo without admin API access to verify PR review automation
✓build_cmd_docREADME documents build commands: cargo build --release, cargo install fresh-editor, multiple install methods
✗build_performance_trackingNo build caching configuration, no build metrics exported, no performance monitoring evidence
—dead_feature_flag_detectionSkipped: No feature flag infrastructure, so dead flag detection not applicable
✓deployment_frequencyFrequent deployments: 10 releases in ~20 days (v0.1.87 to v0.1.69), multiple releases per week
✓deps_pinnedCargo.lock is committed, ensuring reproducible builds
✓fast_ci_feedbackCI pipeline completes in ~9 minutes (verified from PR statusCheckRollup timestamps)
✗feature_flag_infrastructureNo feature flag system (LaunchDarkly, Statsig, Unleash, etc.) configured
—heavy_dependency_detectionSkipped: Not a bundled application, Rust binary compiled statically
✓monorepo_toolingCargo workspace properly configured with clear package boundaries across 6 crates
—progressive_rolloutSkipped: CLI tool, not an infrastructure-based deployment requiring progressive rollout
✓release_automationrelease.yml workflow automates builds and publishing for all platforms on tag push
✗release_notes_automationCHANGELOG.md exists but is manually maintained, no semantic-release or automated changelog generation
—rollback_automationSkipped: CLI tool, not an infrastructure-based deployment requiring rollback automation
✓single_command_setupREADME documents single command setup: cargo build --release or various install scripts
✗unused_dependencies_detectionNo cargo-udeps or dependency analysis in CI
✓vcs_cli_toolsgh CLI is installed and authenticated (verified with gh auth status)
✓version_drift_detectionWorkspace dependencies in Cargo.toml ensure version consistency across all crates
Testing5/7 (71%)
✗flaky_test_detectionNo test retry configuration or flaky test tracking tools
✓integration_tests_existE2E tests exist in crates/fresh-editor/tests/e2e/ (80+ e2e test modules)
✗test_coverage_thresholdsNo coverage thresholds enforced, no Codecov/Coveralls integration
✓test_isolationcargo nextest runs tests in parallel with isolation (-j=4 in CI)
✓test_naming_conventionsRust test naming conventions enforced: #[test] attribute, test_ prefix patterns
✓test_performance_trackingCI uses cargo nextest which outputs test timing information
✓unit_tests_existExtensive test suite: 90+ test files in crates/fresh-editor/tests/
—unit_tests_runnableSkipped: OSS evaluation without fully configured local development environment
Documentation3/6 (50%)
✗agents_mdNo AGENTS.md file in repository root
—agents_md_validationSkipped: No AGENTS.md file to validate
—api_schema_docsSkipped: Not an API service, CLI application
✗automated_doc_generationNo automated doc generation (cargo doc runs in CI but doesn't update committed docs)
✓documentation_freshnessREADME.md modified in last 180 days (latest commit f570d50)
✓readmeComprehensive README.md with installation, features, usage, and contribution guidelines
✓service_flow_documenteddocs/ARCHITECTURE.md documents runtime model, event loop, state ownership, and system flow
✗skillsNo skills configured in .factory/skills/, .skills/, or .claude/skills/
Dev Environment0/2 (0%)
—database_schemaSkipped: No database, CLI application
✗devcontainerNo .devcontainer/devcontainer.json configuration
—devcontainer_runnableSkipped: No devcontainer configuration exists
✗env_templateNo .env.example file, no environment variables documented in README or docs
—local_services_setupSkipped: CLI application with no external service dependencies
Debugging & Observability2/5 (40%)
—alerting_configuredSkipped: CLI tool, not a deployed service requiring alerting
—circuit_breakersSkipped: No external service dependencies
—code_quality_metricsSkipped: OSS repo without admin API access to verify code scanning analyses
—deployment_observabilitySkipped: CLI tool, not a deployed service
—distributed_tracingSkipped: Single process CLI application, no distributed tracing needed
✗error_tracking_contextualizedNo Sentry, Bugsnag, or Rollbar configured
—health_checksSkipped: CLI tool, not a deployed service requiring health checks
✓metrics_collectionTelemetry service collects version, OS, architecture, terminal type (src/services/telemetry.rs)
✗profiling_instrumentationNo APM tools or continuous profiling configured
✗runbooks_documentedNo runbooks or incident response documentation referenced in README, docs, or AGENTS.md
✓structured_loggingtracing crate used for structured logging (src/services/tracing_setup.rs)
Security4/6 (67%)
—automated_security_reviewSkipped: OSS repo without admin API access to verify code scanning alerts
✓branch_protectionRepository rulesets configured: prevents deletion and non-fast-forward pushes to master branch
✗codeownersNo CODEOWNERS file in root or .github/ directory
—dast_scanningSkipped: Not a web service, CLI application
✓dependency_update_automationDependabot configured for Cargo and GitHub Actions updates (weekly schedule)
✓gitignore_comprehensiveProperly excludes target/, .DS_Store, IDE configs, build artifacts (no .env needed for Rust)
✗log_scrubbingNo log sanitization or redaction configured (CLI logs locally)
—pii_handlingSkipped: No user data collected, only anonymous telemetry
—privacy_complianceSkipped: CLI tool with minimal telemetry (version/OS only), no user data collection
—secret_scanningSkipped: OSS repo without admin API access to verify secret scanning configuration
✓secrets_managementNo secrets needed for CLI tool, gitignore properly configured
Task Discovery1/4 (25%)
✗backlog_healthOnly 64% of open issues have descriptive titles and labels (32/50), below 70% threshold
✓issue_labeling_systemConsistent labels exist: bug, enhancement for categorizing issues
✗issue_templatesNo .github/ISSUE_TEMPLATE/ directory with structured templates
✗pr_templatesNo .github/pull_request_template.md
Product & Analytics1/2 (50%)
✗error_to_insight_pipelineNo Sentry-GitHub integration or automated error-to-issue pipeline
✓product_analytics_instrumentationTelemetry sends anonymous usage data (version, OS, terminal) to understand usage patterns

Ready to build the software of the future?

Start building

Arrow Right Icon