Repository navigation
v0.59.0
What's Changed
- fix(coverage): explain that a .coverage file builds the per-test map only by @RaghavChamadiya in #4320
- fix(tests): rank reaching tests by distance before the per-target cap by @RaghavChamadiya in #4321
- fix(core): a tests/ folder inside a JS or TS src tree is not a test directory by @RaghavChamadiya in #4322
- fix(impacted-tests): narrow conftest import-only routes and count the broadcast apart by @RaghavChamadiya in #4324
- fix(coverage): store nothing from a mostly unmapped report unless --allow-partial by @RaghavChamadiya in #4323
- fix(impacted-tests): count tests reached only through long import chains apart by @RaghavChamadiya in #4325
- feat(health): per-function coverage, the CRAP score and an untested_complexity finding by @RaghavChamadiya in #4326
- feat(tests): one reach walk over an in-memory or stored graph, with typed reach states by @RaghavChamadiya in #4329
- test(health): lock that coverage and deleted tests are never charged to a change by @RaghavChamadiya in #4332
- fix(coverage): skip the file page line tint when the file changed after coverage was measured by @RaghavChamadiya in #4336
- fix(tests): list tests that reach a file only through a hub after the rest by @RaghavChamadiya in #4333
- feat(tests): a test that swaps a module out does not reach it by @RaghavChamadiya in #4338
- feat(tests): a JS or TS test that mocks a module with a closed factory does not reach it by @RaghavChamadiya in #4341
- fix(tests): never call a file of only types untested by @RaghavChamadiya in #4337
- fix(health): one test-reach definition for the Tests tab and the file page by @RaghavChamadiya in #4334
- fix(coverage): re-read a coverage report on update when it was written after the last ingest by @RaghavChamadiya in #4327
- fix(coverage): name changed files from the indexed checkout in a nested repository by @RaghavChamadiya in #4340
- feat(health): surface untested_complexity, measured findings by default by @RaghavChamadiya in #4330
- fix(risk): say when line coverage is stored without a per-test map, and flag stale measured tests by @RaghavChamadiya in #4339
- fix(coverage): resolve per-test coverage records with the same path resolver as the aggregate by @RaghavChamadiya in #4328
- feat(health): coverage findings carry a prompt to add tests and the rule that silences them by @RaghavChamadiya in #4335
- fix(coverage): dedupe the per-test map before its row cap and cut whole tests by @RaghavChamadiya in #4331
- docs: readable reference, CI, config, MCP and health docs, with repo-wide test intelligence accuracy by @RaghavChamadiya in #4342
- fix(health): label six performance findings that showed raw ids by @RaghavChamadiya in #4354
- fix(decisions): measure staleness from the commit that landed a decision by @RaghavChamadiya in #4357
- fix(perf): a schema statement or a split of a module string in a loop is not an N+1 by @RaghavChamadiya in #4363
- fix(editor-files): bug-fix counts name their 6-month window beside 90-day churn by @RaghavChamadiya in #4364
- feat(mcp): name the right selector or include when get_health or get_risk drops an argument by @RaghavChamadiya in #4366
- fix(refactoring): Extract Method plans that would not compile are completed or refused by @RaghavChamadiya in #4378
- feat(ci): summarize every gate in one pull-request comment, job summary and verdict by @RaghavChamadiya in #4313
- fix(freshness): every surface reports the index's last sync time by @RaghavChamadiya in #4360
- fix(actions): name a fragile file's lead to simplify only when it is worth breaking up by @RaghavChamadiya in #4361
- fix(stats): one symbol count across status, dashboard, workspace and get_overview by @RaghavChamadiya in #4367
- feat(cli): decision list states its total, with --limit and --all by @RaghavChamadiya in #4355
- feat(mcp): get_why on a directory reports its files' git history by @RaghavChamadiya in #4356
- fix(dead-code): name a package dependent only when its link reaches the finding's file by @RaghavChamadiya in #4358
- perf(persistence): delete replaced coverage and dead-code rows in one statement by @RaghavChamadiya in #4359
- docs(dead-code): match the confidence ladder and cross-repo tiering to the analyzer by @RaghavChamadiya in #4362
- fix(wiki): bug-fix counts on file and module pages name their 6-month window by @RaghavChamadiya in #4369
- feat(health): name the analyzer version beside health scores by @RaghavChamadiya in #4370
- feat(cli): opt-in health gate on agent git commit and git push by @RaghavChamadiya in #4371
- fix(stats): one file count that leaves out import-target graph nodes by @RaghavChamadiya in #4373
- fix: keep a repository's url and branch on read-only writes, and report the true last sync by @RaghavChamadiya in #4374
- feat(health): one severity per Do next row, one meaning of stale coverage, a band on every headline score by @RaghavChamadiya in #4365
- fix(ui): label dashboard figures for what they measure by @RaghavChamadiya in #4368
- fix(mcp): get_context on a directory reads the files under it by @RaghavChamadiya in #4372
- fix(dead-code): serve every surface through one cross-repo read, and lower confidence only on a contract link by @RaghavChamadiya in #4375
- fix(server): module graph and component file counts cover indexed files only by @RaghavChamadiya in #4376
- fix(cli): record a repository's real default branch and credential-free remote url by @RaghavChamadiya in #4381
- feat(apex): parse Apex classes, triggers and anonymous scripts by @RaghavChamadiya in #4404
- feat(salesforce): index Aura bundles and link markup, controllers, helpers and child components by @RaghavChamadiya in #4405
- feat(apex): Apex REST resources and HTTP callouts as workspace contracts by @RaghavChamadiya in #4407
- feat(coverage): ingest Salesforce Apex test coverage by @RaghavChamadiya in #4413
- feat(lwc): link Lightning Web Component imports, templates and exposed bundles, and reach Apex from @salesforce/apex by @RaghavChamadiya in #4411
- feat(salesforce): link Visualforce pages and components to their Apex controllers, bound members and pages by @RaghavChamadiya in #4415
- feat(apex): resolve calls, heritage and type references in each sfdx project's namespace by @RaghavChamadiya in #4417
- feat(salesforce): index flows and link them to Apex actions, subflows and screen components by @RaghavChamadiya in #4414
- feat(apex): dead code with platform entry points, and @istest test detection by @RaghavChamadiya in #4416
- feat(apex): reach other sfdx projects only through a declared dependency or namespace by @RaghavChamadiya in #4421
- feat(apex): health for Apex: complexity, class cohesion, test cases and limits-in-loop perf by @RaghavChamadiya in #4419
- feat(salesforce): SObject and field metadata as symbols, bound from SOQL, DML and triggers by @RaghavChamadiya in #4418
- feat(apex): Extract Method for Apex by @RaghavChamadiya in #4425
- feat(ingestion): load grammars per language and warn when COBOL indexes without symbols by @RaghavChamadiya in #4433
- feat(offline): REPOWISE_OFFLINE, DO_NOT_TRACK and the telemetry opt-out skip the PyPI check and agent-CLI probes by @RaghavChamadiya in #4440
- feat(salesforce): markup and flows reach Apex by the sfdx project rules, and record-triggered flows link their object by @RaghavChamadiya in #4441
- feat(cobol): parse fixed format, embedded EXEC blocks and copybooks without losing paragraphs by @RaghavChamadiya in #4434
- feat(cobol): resolve COPY and EXEC SQL INCLUDE members to copybooks by @RaghavChamadiya in #4435
- fix(tests): clear the network off switches before every unit test by @RaghavChamadiya in #4444
- feat(cobol): link CICS LINK and XCTL to their programs, following literal constants by @RaghavChamadiya in #4436
- feat(apex): health findings for SOQL injection, missing sharing, hardcoded record Ids and SeeAllData tests by @RaghavChamadiya in #4442
- feat(cobol): keep PERFORM inside its program and bind CALL, LINK and XCTL to PROGRAM-IDs by @RaghavChamadiya in #4437
- fix(tests): add program_call to the Apex parser golden samples added alongside it by @RaghavChamadiya in #4445
- feat(cobol): index JCL and BMS, linking job steps to programs and programs to mapsets by @RaghavChamadiya in #4438
- feat(cobol): measure each paragraph and section for code health by @RaghavChamadiya in #4439
- feat(docs): Salesforce at the Full tier, in one coherent description by @RaghavChamadiya in #4447
- feat(cobol): level-88 condition names sit under the data item they test by @RaghavChamadiya in #4459
- feat(cobol): resolve EXEC SQL INCLUDE to DB2 DCLGEN members by @RaghavChamadiya in #4460
- feat(cobol): list paragraphs that jump out of structured flow with GO TO or ALTER by @RaghavChamadiya in #4462
- feat(cobol): treat CICS-defined programs as entry points and report paragraphs nothing reaches by @RaghavChamadiya in #4461
- feat(cobol): read the procedure of programs whose PROCEDURE DIVISION header comes from a copybook by @RaghavChamadiya in #4472
- fix(workspace): reuse unchanged repos and re-run cross-repo analysis when its settings change by @RaghavChamadiya in #4485
- feat(workspace): name how every contract and link was made, and read the system graph through one adjacency by @RaghavChamadiya in #4486
- feat(inventory): read Gradle build scripts into the declared package store by @RaghavChamadiya in #4488
- fix(init): keep secret ignore rules inside .repowise/ and stop counting it as a dirty tree by @RaghavChamadiya in #4496
- feat(changes): treat files outside every component as known, and re-resolve kept components after a catalog edit by @RaghavChamadiya in #4494
- feat(workspace): find which repo serves a host from compose, Kubernetes, Spring and Aspire config by @RaghavChamadiya in #4495
- perf(workspace): a no-change workspace update refreshes only the repos that moved by @RaghavChamadiya in #4498
- fix(health): score --score files against the index's clone partners by @RaghavChamadiya in #4499
- fix(risk): rank a change against the commits before it however it is spelled, and name that sample on the checklist by @RaghavChamadiya in #4503
- fix(workspace): gate every contract dialect once per file and drop matches in comments by @RaghavChamadiya in #4505
- feat(context): list callers that reach an implementation through its interface by @RaghavChamadiya in #4506
- fix(workspace): make the config-path docstring raw so importing it raises no escape warning by @RaghavChamadiya in #4511
- feat(workspace): say when the system graph has too little evidence instead of scoring it clean by @RaghavChamadiya in #4500
- feat(salesforce): drop merge-field and regex false secrets, and classify static-resource libraries as vendored by @RaghavChamadiya in #4468
- fix(changes): take an issue-keyed merge body line as the change title by @RaghavChamadiya in #4469
- feat(ingestion): a Spring Boot main is a declared entry point, ranked above filename guesses by @RaghavChamadiya in #4487
- docs(workspace): architecture page for the multi-repo workspace layer by @RaghavChamadiya in #4509
- fix(dead-code): every reader in a workspace withdraws what the cross-repo cut withdraws by @RaghavChamadiya in #4383
- feat(workspace): read Kafka clients by their declared type, and Go Kafka libraries by @RaghavChamadiya in #4534
- feat(workspace): gateway routes from Spring Cloud Gateway and Zuul, rewritten at match time by @RaghavChamadiya in #4536
- feat(workspace): read .NET HttpClient Json and request-message calls, with URLs in locals and readonly fields by @RaghavChamadiya in #4538
- feat(workspace): read Feign clients with Spring MVC annotations and Spring HttpExchange interfaces as calls by @RaghavChamadiya in #4531
- feat(workspace): Go AMQP topics, queues named through their declaration, and Python class constants by @RaghavChamadiya in #4542
- feat(workspace): link C# integration events between services by their type name by @RaghavChamadiya in #4544
- feat(workspace): diagnostics name dangling calls and say which HTTP calls linked, not just which were read by @RaghavChamadiya in #4551
- fix(workspace): update reports each repo's stored file and symbol counts by @RaghavChamadiya in #4555
- perf(persistence): load CRUD and analysis modules on first use by @RaghavChamadiya in #4556
- perf(workspace): one changed repo stops rewriting every member's store and editor files by @RaghavChamadiya in #4569
- feat(workspace): read package-qualified Java ImplBase and Node grpc-js addService as gRPC providers by @RaghavChamadiya in #4529
- feat(workspace): nginx proxy_pass routes, including envsubst templates, as gateway routes by @RaghavChamadiya in #4543
- perf(ingestion): resolve only links during the pruned repo walk by @RaghavChamadiya in #4560
- feat(cli): a command that reads one workspace repo names that repo by @RaghavChamadiya in #4559
- feat(dead-code): root .NET types MassTransit, NServiceBus, Azure Functions and WCF load by @RaghavChamadiya in #4562
- feat(workspace): read WebClient, RestClient, Apache HttpClient and MicroProfile REST clients as calls by @RaghavChamadiya in #4540
- feat(workspace): read Node request, superagent, needle, AngularJS $http and Locust client calls by @RaghavChamadiya in #4545
- feat(workspace): read Azure Functions HttpTrigger routes as HTTP providers by @RaghavChamadiya in #4547
- feat(components): one repo-wide component for flat or layout-only repos, and contracts outside every component are counted by @RaghavChamadiya in #4552
- feat(report): report estate, workspace sections read once from the stored workspace artifacts by @RaghavChamadiya in #4554
- feat(workspace): read chi, fiber and gorilla/mux routes and Go 1.22 method patterns by @RaghavChamadiya in #4539
- feat(workspace): read JMS destinations as topic contracts (JmsTemplate, @JmsListener) by @RaghavChamadiya in #4557
- feat(workspace): a package-less gRPC stub meets its package-qualified proto, and a vendored proto copy serves nothing by @RaghavChamadiya in #4537
- feat(workspace): apply Spring context-path and WebFlux base-path to provider routes, keep root routes by @RaghavChamadiya in #4549
- test(workspace): a Go 1.22 root pattern is kept as GET / by @RaghavChamadiya in #4578
- feat(workspace): read C# gRPC clients registered through AddGrpcClient, injected, or named with their namespace by @RaghavChamadiya in #4541
- feat(workspace): read Ocelot and YARP gateway routes by @RaghavChamadiya in #4548
- feat(workspace): read .NET client bases, HttpClient wrapper methods, Refit interfaces and YARP forwarders by @RaghavChamadiya in #4550
- feat(workspace): read Fastify, hapi and Koa router prefixes and Next.js pages/api routes as HTTP providers by @RaghavChamadiya in #4558
- feat(report): estate sections for health and churn per repo, the riskiest seams and where to start by @RaghavChamadiya in #4561
- test: allowlist the estate health section in the hotspot_health owner guard by @RaghavChamadiya in #4582
- fix(workspace): link a SQLite reader's tables only within its own repo by @RaghavChamadiya in #4584
- fix(workspace): keep FastAPI routes whose decorator stack holds a comment by @RaghavChamadiya in #4583
- feat(workspace): link a Python dependency to the sibling repo that publishes it by @RaghavChamadiya in #4585
- fix(mcp): share lifespan across HTTP sessions by @ZhangDT-sky in #4398
- fix(workspace): skip Postgres catalog and alembic_version consumers by @aazminu in #4187
- fix(apex): parse Apex method parameters as positional type-first signatures (#4427) by @rishu685 in #4429
- fix(ingestion): bind Dart calls on a dotted receiver and prefixed named constructors (#3738) by @Aman-goel-04 in #4114
- fix(ingestion): follow tsconfig references to the project that owns each file by @ozenyunus35 in #4519
- fix(mcp): query call_resolution_bases inside get_session block in get_dead_code by @aazminu in #4096
- fix(security): drop empty public_env_secret assignments by @montionugera in #4037
- fix(git_refs): resolve default_base from full refs by @mayuriphad in #4388
- fix(deps): update certifi to distrust compromised emSign CA by @PragalvaXFREZ in #4352
- fix(code_origin): recognise prefixed migration directories under db/ by @ump45nose in #3462
- fix(ingestion): stop indexing PL/I .inc members as C++ by @arnavsx3 in #4553
- fix(workspace): trace Apex callouts through wrapper methods by @arnavsx3 in #4532
- fix(coverage): stamp on-disk reports at the commit they measured, not live HEAD (#3901) by @Enard52 in #3935
- fix(call-resolver): JS/TS bare call no longer binds to a same-file class method (#4412) by @Aman-goel-04 in #4518
- fix(cli): warn once on invalid REPOWISE_FULL_RESCORE_INTERVAL_DAYS across workspace fan-out by @sloemo01 in #1844
- perf(test_reach): build changed file-part set once per walk and add rank-free any_reached (#4349) by @rishu685 in #4577
- fix(git): align in-memory churn_percentile with SQL PERCENT_RANK and tie handling (#4159) by @rishu685 in #4189
- fix(ingestion): make the per-file git-index timeout generous and configurable by @sloemo01 in #1837
- fix(decisions): count a batch whose reply hit max_tokens as lost, not as nothing found by @ozenyunus35 in #4424
- feat(web): show how each cross-repo link was matched and where each contract came from by @RaghavChamadiya in #4587
- feat(web): workspace ribbons say how many HTTP calls linked to another service, not how many were read by @RaghavChamadiya in #4580
- fix(workspace): a generic path such as /health never links to another repo by path alone by @RaghavChamadiya in #4586
- fix(health): brain_method reports judged CCN, not raw, in reason and details by @masyarakatai in #4184
- feat(ruby): flag a gem's lib entry file and what it requires as public API (#3506) by @Aman-goel-04 in #4526
- fix(cli): print whole decision titles in decision health lists by @56steve in #4389
- fix(review): don't report a health delta for code that moved between files by @bercedev in #4314
- feat(code-health): mark short-history files on the health file list by @codewithzubair07 in #4351
- fix(cobol): handle CSD files without definitions by @crown-sports in #4492
- feat(cli): add repowise grammars fetch to stage COBOL and Apex grammars offline by @florianaltendorfer in #4471
- fix(express): don't key mounts on callee name of call expressions by @GitMehdi-sys in #4571
- fix(cli): stop warning that the mock provider is unknown by @jay23606 in #4287
- feat(health): dataflow def/use dialect for Scala by @Aman-goel-04 in #3580
- feat(mcp): name how each cross-repo link was matched and how far the estate graph can be trusted by @RaghavChamadiya in #4588
- fix(ui): read repo health on the three bands beside a health mark by @RaghavChamadiya in #4581
- feat(ui): name gateway-routed links and partial graph evidence on the system map by @RaghavChamadiya in #4591
- fix(tests): stop the repo timeout test flaking on slow runners by @thymeed in #4350
- fix(core): classify module.test-utils files as test support by @ShryukGrandhi in #4353
- fix(doctor): exclude claude desktop config from claude code duplicate check (#4282) by @harshith7002 in #4318
- fix(health): ignore comments in switch blocks by @Parth-ui-commits in #4527
- fix: start reported dependency cycles at the smallest node id by @rootsiemen in #4513
- fix(editor-files): preserve backslashes in managed block replacements by @ANO3457 in #4530
- fix(dead-code): recognize lazy module attribute tuples by @rubenG1009 in #3958
- fix(overview): read community_info() as a dict so the clusters section renders by @uzumakienes in #4463
- feat(coverage): read Apex deploy coverage reports by @omisha123 in #4446
- feat(core): Ansible playbook/role dependency edges for YAML (#4397) by @tahodev in #4399
- feat(dart): type a closure parameter from the Iterable call it is passed to (#3753) by @Aman-goel-04 in #4528
- fix(health): chunk the whole-repository target sets the queue finalize reads by @Ei-Ayw in #4403
- feat(workspace): read Next.js handlers exported from a brace list, mark Supabase calls third-party, keep tooling out of miss counts by @RaghavChamadiya in #4589
- test(workspace): pin link strategy, contract origin, edge kind and match type across core, types and ui labels by @RaghavChamadiya in #4590
- feat(web): estate report page and GET /api/workspace/estate, built by the function the CLI calls by @RaghavChamadiya in #4592
- perf(ui): synthetic system graphs and a render budget bench by @RaghavChamadiya in #4597
- perf(workspace): lean system-graph view for the map by @RaghavChamadiya in #4599
- feat(workspace): links between two services, resolved and paged by @RaghavChamadiya in #4598
- feat(workspace): group services into systems (tag, name family, linkage) by @RaghavChamadiya in #4600
- feat(ui): system map levels model (groups, bands, focus, draw budget) by @RaghavChamadiya in #4603
- perf(ui): ELK in a worker with per-level layout cache by @RaghavChamadiya in #4616
- feat(ui): system map v2 canvas (group cards, bands, breadcrumb, rail) by @RaghavChamadiya in #4621
- feat(ui): focus a service and list every route between two by @RaghavChamadiya in #4624
- chore(ui): page shape and copy for system map v2 by @RaghavChamadiya in #4622
- perf(ui): lay out the system map on one placement edge per card pair by @RaghavChamadiya in #4627
- feat(ui): system map search, shortcuts and list view by @RaghavChamadiya in #4623
- ci: gate pull requests on Repowise health, security and patch coverage by @RaghavChamadiya in #4628
- fix(impacted-tests): package inits reach every module under them, and record more fixture request forms by @RaghavChamadiya in #4632
- feat(health): fix hints and a local reproduce command on failing gate runs by @RaghavChamadiya in #4642
- fix(workspace): read the service-name map and gateway routes only from production deploy config by @RaghavChamadiya in #4648
- feat(mcp): say why each next_actions input is unavailable in get_overview by @RaghavChamadiya in #4649
- fix(workspace): read NATS calls only in files that import a NATS client by @RaghavChamadiya in #4650
- fix(code-origin): narrow the tools/ path rule to repo-root and build-tool contexts by @RaghavChamadiya in #4652
- feat(workspace): count a call matching two or more provider repos as an ambiguous provider instead of linking it by @RaghavChamadiya in #4654
- perf(server): workspace API reads member stats from workspace.db by @RaghavChamadiya in #4651
- feat(workspace): read template literals with a nested template in a hole by @RaghavChamadiya in #4655
- feat(workspace): bound cycle enumeration and report "at least N" when the cap stops it by @RaghavChamadiya in #4657
- fix(workspace): embedded database identity per repo, checked on the provider side by @RaghavChamadiya in #4653
- feat(decisions): rank agent-proposed decisions with session-mined ones by @RaghavChamadiya in #4658
- fix(code-origin): read Python
_vendor/folders as vendored by @RaghavChamadiya in #4665 - feat(workspace): compose ${VAR:-default} defaults, env_file and .env files feed the service-name map by @RaghavChamadiya in #4656
- feat(web): show "at least N" cycles on the conformance page when the count is capped by @RaghavChamadiya in #4666
- feat(workspace): count unread messaging SDK calls in the network probe and unresolved topic names in diagnostics by @RaghavChamadiya in #4667
- chore(health): bump the analyzer stamp so code-origin changes re-score stored indexes by @RaghavChamadiya in #4668
- chore(health): keep only the current bump note on the analyzer stamp by @RaghavChamadiya in #4669
- fix(mcp): start and report no index in an unindexed directory instead of exiting by @RaghavChamadiya in #4670
- feat(decisions): let agents record decisions as themselves and teach the review flow by @RaghavChamadiya in #4672
- fix(decisions): refuse to accept a mined candidate that has no decision text by @RaghavChamadiya in #4671
- fix(mcp): resolve get_execution_flows entry_point names like get_symbol by @RaghavChamadiya in #4674
- feat(doctor): give every check a stable id, a level and a known fix by @RaghavChamadiya in #4675
- fix(settings): keep a repo's excluded paths and wiki style in .repowise/config.yaml by @RaghavChamadiya in #4676
- feat(serve): open the web UI in your browser once it is up by @RaghavChamadiya in #4679
- fix(update): seed a linked worktree whose base has synced past its fork point by @RaghavChamadiya in #4673
- feat(init): end on what stood out, and name the model command for this machine by @RaghavChamadiya in #4677
- feat(web): add a model in two clicks from the docs badge and chat by @RaghavChamadiya in #4678
- feat(ui): ink primary actions and less orange across the local UI by @RaghavChamadiya in #4680
- feat(server): add a setup API for the Setup page and the welcome by @RaghavChamadiya in #4681
- feat(web): add a three-step welcome for new repos, built on the What's new shell by @RaghavChamadiya in #4682
- feat(telemetry): reason codes on failures, a host label, no sending under test by @RaghavChamadiya in #4687
- fix(decisions): mine the decision as a verbatim quote and require its text on every acceptance by @RaghavChamadiya in #4686
- feat(decisions): let agents accept decisions by default, signed as themselves by @RaghavChamadiya in #4688
- feat(web): add a Setup page, a setup pill and grouped settings by @RaghavChamadiya in #4683
- feat(decisions): ask agents to record committed decisions by default by @RaghavChamadiya in #4689
- fix(serve): check skip_dirs relative to source roots in _local_build_is_stale by @aazminu in #4085
- fix(search): scan slash-containing literal queries by @Vamsi-2581 in #4230
- fix(actions): state graph absence, not untested, when no test reaches a fragile file by @Aman-goel-04 in #4394
- fix(cli): prune legacy init notices from state degraded (#4224) by @rishu685 in #4285
- feat(workspace): read Azure Service Bus queues and topics as topic contracts (#4520) by @dchaudhari7177 in #4637
- fix(cobol): skip compiler-option cards that start in column 1 by @bfs2021 in #4491
- docs(architecture): name the masked suffixes in the workspace Limits by @iamcipherdev in #4615
- perf(graph): skip isolated symbols in exact betweenness by @Aschenbath in #4602
- fix(web): link the welcome's dead-code card and the Commits score link to their Code Health tabs by @RaghavChamadiya in #4695
- fix(deps): patch the open security alerts (next, vite, dompurify, GitPython, Pillow 13 and more) by @RaghavChamadiya in #4696
- feat(web): split settings into sub-pages with one row pattern and autosave by @RaghavChamadiya in #4694
- feat(web): calmer Setup rows, one copy-prompt button, neutral focus ring and recessed fields by @RaghavChamadiya in #4692
- feat(web): polish the What's new and welcome moments by @RaghavChamadiya in #4693
- feat(docs): calm the docs bar with one More menu and page-level actions by @RaghavChamadiya in #4698
- perf(setup): load the Setup page in about two seconds with doctor --quick and a stale-while-revalidate cache by @RaghavChamadiya in #4699
- fix(ingestion): stop caching parses made without the language's grammar by @RaghavChamadiya in #4703
- fix(cli): skip every agent CLI sign-in probe while network checks are off by @RaghavChamadiya in #4706
- fix(mcp): name get_architecture and get_blast_radius in the server instructions only when they are served by @RaghavChamadiya in #4707
- fix(doctor): count the key saved in .repowise/.env when checking provider config by @RaghavChamadiya in #4708
- fix(decisions): make every review command easy and honest for an agent to drive by @RaghavChamadiya in #4702
- fix(generation): give the short decision confirm command the evidence it needs by @RaghavChamadiya in #4704
- release: v0.59.0 — a guided first hour, Salesforce and COBOL, a System Map for your services by @RaghavChamadiya in #4705
New Contributors
- @montionugera made their first contribution in #4037
- @mayuriphad made their first contribution in #4388
- @masyarakatai made their first contribution in #4184
- @56steve made their first contribution in #4389
- @bercedev made their first contribution in #4314
- @codewithzubair07 made their first contribution in #4351
- @crown-sports made their first contribution in #4492
- @florianaltendorfer made their first contribution in #4471
- @GitMehdi-sys made their first contribution in #4571
- @jay23606 made their first contribution in #4287
- @thymeed made their first contribution in #4350
- @ShryukGrandhi made their first contribution in #4353
- @harshith7002 made their first contribution in #4318
- @Parth-ui-commits made their first contribution in #4527
- @rootsiemen made their first contribution in #4513
- @ANO3457 made their first contribution in #4530
- @rubenG1009 made their first contribution in #3958
- @uzumakienes made their first contribution in #4463
- @omisha123 made their first contribution in #4446
- @tahodev made their first contribution in #4399
- @Ei-Ayw made their first contribution in #4403
- @Vamsi-2581 made their first contribution in #4230
- @dchaudhari7177 made their first contribution in #4637
- @bfs2021 made their first contribution in #4491
- @iamcipherdev made their first contribution in #4615
- @Aschenbath made their first contribution in #4602
Full Changelog: v0.58.0...v0.59.0