Skip to content

eval-friendly changes and minor bug fixes - #25

Merged
alexngai merged 10 commits into
mainfrom
tac-optimization
Jul 9, 2026
Merged

eval-friendly changes and minor bug fixes#25
alexngai merged 10 commits into
mainfrom
tac-optimization

Conversation

@alexngai

@alexngai alexngai commented Jul 9, 2026

Copy link
Copy Markdown
Owner

No description provided.

alexngai and others added 10 commits July 2, 2026 11:16
The swarmkit namespace is migrating .swarm → .openswarm. Honor both
project layouts (new name preferred, legacy .swarm as fallback) so
mixed-version repos discover the same opentasks location:

- resolveProjectDir (cli): .openswarm/opentasks > .swarm/opentasks > .opentasks
- discover candidates + client walk-up: prefer .openswarm/opentasks
- deriveRepoRoot: treat .openswarm as a namespace parent like .swarm/.git

Adds discovery preference/fallback tests.

Co-authored-by: Cursor <cursoragent@cursor.com>
- Add MIT LICENSE file (matches package.json declaration)
- Fix broken skills/ create commands: --type issue/spec -> task/context,
  correct node-type prefixes (i-/s- -> t-/c-) so agents no longer hit INVALID_TYPE
- Rewrite README Programmatic API example against the real API
  (createStoreForLocation, createNode, store.query.ready/blockers, close)
- Remove 4 dangling references/ submodule gitlinks (no .gitmodules) and
  gitignore references/ so local checkouts aren't re-added
- Scrub SWARMKIT-WIKI blocks (personal paths + unreleased repo) from
  CLAUDE.md/AGENTS.md; rewrite AGENTS.md with accurate contributor info
- Untrack internal state/artifacts: .sudocode/, docs/evaluations/,
  docs/evals/, docs/HARDENING-PLAN.md, and personal .claude/.sessionlog config
- Fix now-dead HARDENING-PLAN.md links in docs/SYNC.md and docs/STATUS.md

Co-authored-by: Cursor <cursoragent@cursor.com>
Docs undercounted a product that had outgrown them. Corrected against code:

- MCP: 22 tools across 5 scopes (was 19-20 / 4) — add attempts scope
  (record_attempt/list_attempts), events_since, claim_* tools in README,
  CLAUDE.md, and STATUS.md
- STATUS.md: mark daemon auto-start, change events (subscribe + events_since),
  and idempotent writes as shipped; add attempt node type + 12 edge types;
  bump to v0.1.4
- README: 5 node types (add Attempt a-), 12 edge types, four provider
  patterns, fix i-m4n5 -> t-m4n5 diagram node
- CLAUDE.md: correct test script commands (npm test is single run)
- TESTING.md: replace stale 926/1177 counts with current 2,887 tests / 141 files
- Sync .claude-plugin/plugin.json version to 0.1.4

Co-authored-by: Cursor <cursoragent@cursor.com>
…adata

Scrub personal/internal references from evals/ and infra/:
- Replace absolute /Users/alexngai/.ssh paths with ~/.ssh in TAC/infra docs
- Rename placeholder API keys off the sk- prefix (glm5-local-master,
  tac-grader-local) so secret scanners don't flag docs
- Genericize a private-repo reference, an internal E2B template name, and an
  internal Azure endpoint
- Remove dead links to now-untracked internal design docs

Untrack docs/CASCADE-INTEGRATION.md (private-ecosystem integration notes) and
make renovate.json5 self-contained (config:recommended) instead of extending a
possibly-private shared preset.

Add OSS table-stakes: LICENSE was added earlier; this adds CONTRIBUTING.md,
SECURITY.md, CHANGELOG.md, GitHub issue/PR templates, and a CI workflow
(lint + build + test on Node 20/22) with README badges.

Expand package.json description and keywords for npm discoverability.

Co-authored-by: Cursor <cursoragent@cursor.com>
Mechanical, behavior-preserving cleanup so `npm run lint` passes clean:
- Remove ~146 unused imports/bindings; delete dead code (getQueryTypeName,
  SPEC_ID_PATTERN/ISSUE_ID_PATTERN, sessionTrailerRegex, unused helpers)
- Prefix intentionally-unused catch/args bindings with _
- Convert type-only imports to `import type` (consistent-type-imports)
- Replace bare `Function` types with `(...args: unknown[]) => unknown`
- Annotate empty catch blocks; drop a useless regex escape; replace `any`
  warnings with precise types

Verified: eslint 0 errors/0 warnings, `tsc --noEmit` clean, `npm test` green
(2858 passed, 29 skipped).

Co-authored-by: Cursor <cursoragent@cursor.com>
- docs/CONFIGURATION.md: complete config.json reference (storage, daemon,
  every provider, sync, reconciliation, materialization, logging, tracking,
  federation) with defaults, plus the OPENTASKS_* env-var overrides and the
  defaults < config.json < env precedence.
- docs/TROUBLESHOOTING.md: daemon-focused — socket resolution order, status
  checks, SOCKET_NOT_FOUND, hangs, stale socket/lock recovery, config
  validation failures, better-sqlite3 NODE_MODULE_VERSION, socket-path limits,
  worktree daemons, and debug logging.
- README: add Configuration section, Documentation index, and troubleshooting
  pointers.

Co-authored-by: Cursor <cursoragent@cursor.com>
Add a headline value prop, a "Why OpenTasks" section (relationship layer,
cross-system ready/blocked, local-first, agent-native, federated), and a concise
comparison against task trackers and orchestration engines — so the differentiation
is up top instead of buried under "What This Is Not".

Co-authored-by: Cursor <cursoragent@cursor.com>
In a git repo the daemon runs in multi-location mode with its lock + socket under
`<git-common-dir>/opentasks`, but the CLI's daemon probes (auto-start readiness,
`daemon status`, `daemon stop`) used the plain `.opentasks` path. They never saw
the running daemon, so on a fresh repo every command re-triggered a 10s auto-start
timeout — printing "daemon auto-start failed" on a user's first `create` and adding
~11s per command — while `daemon status`/`stop` reported/did nothing.

Add `daemonHomeFor()` mirroring `cmdDaemonStart`'s single-vs-multi decision and use
it at every `checkExistingDaemon` probe. Verified via a packaged-install smoke test:
`create` now auto-starts the daemon in ~1s with no error, `daemon status` reports
running, and `daemon stop` works. Adds a regression test for the resolution.

Co-authored-by: Cursor <cursoragent@cursor.com>
Remove the swarmkit-wiki pointer block and machine-local absolute paths so this repo's agent docs are fully self-contained.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@alexngai
alexngai merged commit 6f4f00e into main Jul 9, 2026
0 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant