Factory.ai
All Reports

zap

Go

Strong Build System

zap reaches Level 3 with 80% Build System pass rate. Currently becoming autonomous-capable with 27/59 criteria passing (46%). Key areas for improvement include the opportunities listed below.

Strengths

01
Build System (80%)
Includes Build Cmd Doc, Deps Pinned, Fast Ci Feedback.
02
Code Modularization
Go's internal/ package provides compiler-enforced boundaries; repo uses internal/ directories
03
Dead Code Detection
staticcheck enabled in .golangci.yml includes unused code detection

Opportunities

01
Cyclomatic Complexity
No complexity analysis tools configured (gocyclo, go-critic complexity rules, etc.)
02
Duplicate Code Detection
No jscpd, PMD CPD, or duplication detection tools found
03
Large File Detection
No Git hooks, CI jobs, .gitattributes with LFS, or linter rules to detect/prevent large files

All Criteria

Style & Validation6/12 (50%)
code_modularizationGo's internal/ package provides compiler-enforced boundaries; repo uses internal/ directories
cyclomatic_complexityNo complexity analysis tools configured (gocyclo, go-critic complexity rules, etc.)
dead_code_detectionstaticcheck enabled in .golangci.yml includes unused code detection
duplicate_code_detectionNo jscpd, PMD CPD, or duplication detection tools found
formattergofumpt configured in .golangci.yml linters
large_file_detectionNo Git hooks, CI jobs, .gitattributes with LFS, or linter rules to detect/prevent large files
lint_config.golangci.yml exists with golangci-lint configured (errcheck, gosimple, govet, etc.)
n_plus_one_detectionLogging library without database/ORM usage; skippable
naming_consistencyNo explicit naming convention rules in golangci-lint or documented conventions
pre_commit_hooksNo .pre-commit-config.yaml or Husky found
strict_typingGo is strictly typed by default; compiler enforces type safety
tech_debt_trackingTODO/FIXME comments exist but no tooling tracks them (no CI scanner, no linter enforcement)
type_checkGo has type checking built-in; project compiles without errors
Build System8/10 (80%)
agentic_developmentNo evidence of agent co-authorship in git log, no CI workflows invoking agents, no agent config
automated_pr_reviewSnyk and Codecov run as status checks but don't generate code review comments; skippable criterion
build_cmd_docMakefile and CONTRIBUTING.md document 'make test' and 'make lint' commands
build_performance_trackingNo build caching or metrics tracking found; skippable criterion
dead_feature_flag_detectionNo feature flag infrastructure exists; prerequisite failed; skippable
deployment_frequencyThis is a library, not a deployed service; releases exist but criterion is about deployments; skippable
deps_pinnedgo.sum exists and is committed, pinning all dependencies
fast_ci_feedbackCI completes in ~1-4 minutes (analyzed multiple PRs via gh API), well under 10 minute threshold
feature_flag_infrastructureNo LaunchDarkly, Statsig, Unleash, GrowthBook, or custom feature flag system found
heavy_dependency_detectionLibrary/backend, not a bundled application; skippable
monorepo_toolingSingle-application repository; skippable for non-monorepos
progressive_rolloutLibrary repository, not an infrastructure repo with deployments; skippable
release_automationGitHub releases are created automatically (10+ releases found via gh CLI)
release_notes_automationCHANGELOG.md is maintained and GitHub releases are created regularly
rollback_automationLibrary repository, not an infrastructure repo; skippable
single_command_setupCONTRIBUTING.md documents 'make test' and 'make lint' as setup commands
unused_dependencies_detection'go mod tidy' runs in CI (Makefile tidy-lint target) ensuring only used deps in go.mod
vcs_cli_toolsgh CLI is installed and authenticated (verified with 'gh auth status')
version_drift_detectionSingle-application repository; skippable for non-monorepos
Testing5/7 (71%)
flaky_test_detectionNo retry configuration or flaky test tracking tools found; skippable
integration_tests_existNo cypress/, playwright.config.ts, or integration/ test directories found
test_coverage_thresholds.codecov.yml has 95% target coverage and Codecov status checks run on PRs
test_isolationMany tests use t.Parallel() for parallel execution (found in logger_test.go, array_test.go)
test_naming_conventionsGo enforces *_test.go convention (built-in); tests follow this pattern
test_performance_trackingNo test duration tracking or test analytics platforms configured
unit_tests_existExtensive *_test.go files throughout codebase (143 Go files, many are tests)
unit_tests_runnableTests runnable (verified with 'go test -race ./... -run=^$' completed successfully)
Documentation3/6 (50%)
agents_mdNo AGENTS.md file exists in repository root
agents_md_validationAGENTS.md doesn't exist; prerequisite failed; skippable
api_schema_docsThis is a library, not an API service; skippable
automated_doc_generationMakefile has 'updatereadme' target that generates README from .readme.tmpl template
documentation_freshnessCONTRIBUTING.md was modified within last 180 days (verified via git log)
readmeREADME.md exists with comprehensive setup, usage instructions, and examples
service_flow_documentedNo architecture diagrams (.mermaid, .puml) or service dependency docs found
skillsNo skills directories found (.factory/skills/, .skills/, .claude/skills/)
Dev Environment0/2 (0%)
database_schemaLogging library without databases; skippable
devcontainerNo .devcontainer/devcontainer.json found
devcontainer_runnableNo devcontainer exists; skippable
env_templateNo .env.example file found; as a library, environment variables may not be needed
local_services_setupNo docker-compose.yml; library without external service dependencies; skippable
Debugging & Observability2/9 (22%)
alerting_configuredNo PagerDuty, OpsGenie, or alerting rules; library context
circuit_breakersLibrary without external service dependencies; skippable
code_quality_metricsCodecov integration tracks coverage metrics with 95% target; runs on all PRs
deployment_observabilityNo monitoring dashboard links or deployment notifications found
distributed_tracingNo trace ID or request ID propagation implementation found
error_tracking_contextualizedNo Sentry, Bugsnag, or Rollbar found; library context
health_checksLibrary, not a deployed service; skippable
metrics_collectionNo metrics/telemetry instrumentation (Prometheus, Datadog, etc.) found
profiling_instrumentationNo APM tools or continuous profiling configured
runbooks_documentedNo runbooks or links to incident response documentation found in README/docs
structured_loggingThis IS a structured logging library (zap itself)
Security2/7 (29%)
automated_security_reviewSnyk runs in PRs but unclear if it generates review reports vs just status checks; skippable
branch_protectionRequires GitHub admin API access to verify branch protection rules (skipped).
codeownersNo CODEOWNERS file found in root or .github/
dast_scanningLibrary, not a deployed web service; skippable
dependency_update_automationDependabot configured in .github/dependabot.yml for GitHub Actions and tools submodule
gitignore_comprehensive.gitignore properly excludes build artifacts (*.exe, *.test, *.prof), /bin, and OS files
log_scrubbingNo documented log sanitization configuration or guidelines for library users
pii_handlingLogging library infrastructure, not an app processing user data; skippable
privacy_complianceLogging library without end-user data collection; skippable
secret_scanningRequires GitHub admin API access to verify secret scanning configuration (skipped).
secrets_managementNo cloud secrets manager integration, SOPS, or encrypted secrets; library context
Task Discovery1/4 (25%)
backlog_healthMost open issues lack labels (checked 30 via gh CLI); poor labeling despite descriptive titles
issue_labeling_systemChecked 30 open issues via gh CLI; most have no labels, no consistent system
issue_templates.github/ISSUE_TEMPLATE/ exists with bug_report.md and feature_request.md
pr_templatesNo .github/pull_request_template.md found
Product & Analytics0/2 (0%)
error_to_insight_pipelineNo Sentry-GitHub integration or error-to-issue automation found
product_analytics_instrumentationNo Mixpanel, Amplitude, PostHog, Heap, or GA4; library context

start building

Ready to build the software of the future?

Start building

Arrow Right Icon