Skip to content

Update modern-tooling plan: all phases complete#320

Merged
brianmhunt merged 9 commits into
mainfrom
docs/update-plans
Apr 16, 2026
Merged

Update modern-tooling plan: all phases complete#320
brianmhunt merged 9 commits into
mainfrom
docs/update-plans

Conversation

@brianmhunt
Copy link
Copy Markdown
Member

@brianmhunt brianmhunt commented Apr 16, 2026

Update progress table and future considerations.

Summary by CodeRabbit

Documentation

  • Updated project roadmap documenting completion status of ongoing tooling initiatives, newly planned technical improvements for code distribution and module syntax handling, development environment optimizations, and expanded future technical considerations for bundle tracking and performance analysis.

Copilot AI review requested due to automatic review settings April 16, 2026 12:17
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Apr 16, 2026

Warning

Rate limit exceeded

@brianmhunt has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 32 minutes and 53 seconds before requesting another review.

Your organization is not enrolled in usage-based pricing. Contact your admin to enable usage-based pricing to continue reviews beyond the rate limit, or try again in 32 minutes and 53 seconds.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 1955eda9-25ed-40a9-9574-3e482f06579a

📥 Commits

Reviewing files that changed from the base of the PR and between f2a9e0a and 4030dfc.

📒 Files selected for processing (36)
  • .github/workflows/main-build.yml
  • .github/workflows/test-headless.yml
  • LICENSE
  • README.md
  • builds/knockout/package.json
  • builds/reference/package.json
  • packages/bind/package.json
  • packages/binding.component/package.json
  • packages/binding.core/package.json
  • packages/binding.foreach/package.json
  • packages/binding.if/package.json
  • packages/binding.template/package.json
  • packages/builder/package.json
  • packages/computed/package.json
  • packages/filter.punches/package.json
  • packages/lifecycle/package.json
  • packages/observable/package.json
  • packages/provider.attr/package.json
  • packages/provider.bindingstring/package.json
  • packages/provider.component/package.json
  • packages/provider.databind/package.json
  • packages/provider.multi/package.json
  • packages/provider.mustache/package.json
  • packages/provider.native/package.json
  • packages/provider.virtual/package.json
  • packages/provider/package.json
  • packages/utils.component/package.json
  • packages/utils.functionrewrite/package.json
  • packages/utils.jsx/package.json
  • packages/utils.parser/package.json
  • packages/utils/package.json
  • plans/dark-factory.md
  • plans/modern-tooling.md
  • tko.io/public/agents/soul.md
  • tko.io/public/llms.txt
  • tools/install-bun
📝 Walkthrough

Walkthrough

The pull request updates the modern-tooling roadmap documentation by marking the knip implementation as merged, adding PR references and outcome notes, and expanding Phase 6 with new sub-items including verbatimModuleSyntax enablement, ESM distribution improvements, a strictEquality API option, and Python-based container tooling. The "Future considerations" section is also expanded with additional items.

Changes

Cohort / File(s) Summary
Roadmap Updates
plans/modern-tooling.md
Updated Phase 5–6 entries: marked knip as "Merged" with PR references and outcome notes; added Phase 6 sub-items for verbatimModuleSyntax (PR open), ESM import behavior (merged), strictEquality option API (merged), and Python-based Bun install (PR open); expanded "Future considerations" with bundle size tracking, automated dependency PRs, Vitest benchmarking, Copilot/Cursor context, and jQuery removal investigation.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Possibly related PRs

Poem

🐰 The roadmap hops along with glee,
New phases bloom for all to see,
Knip is merged, and tools align,
The future plans are looking fine! ✨

🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Title check ⚠️ Warning The PR title states 'all phases complete' but the summary shows Phase 5-6 entries being updated with 'Not started' to 'Merged' status and new sub-items, not completion of all phases. Revise the title to accurately reflect the changes, such as 'Update modern-tooling plan: Phase 5-6 roadmap entries and future considerations' or 'Update modern-tooling plan with latest progress updates'.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch docs/update-plans

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@plans/modern-tooling.md`:
- Around line 15-20: Update the "Phase 6 (future)" narrative so it matches the
progress table: rename or remove the "future" label and expand the Phase 6
writeup to list the sub-items verbatimModuleSyntax, ESM extensions,
strictEquality, and CI speed with their current statuses (6b:
verbatimModuleSyntax — PR open `#319`, 6c: ESM extensions — Merged `#315`, 6d:
strictEquality — Merged `#314`, 6e: CI speed — PR open `#318`), and adjust the prose
for each item to reflect their actual outcomes (e.g., note that
verbatimModuleSyntax aims to remove tslib, ESM extensions adds .js import fixes
and verify:esm CI, strictEquality implements
defineOption/ko.options.strictEquality, CI speed uses Python-based Bun install).
Ensure there are no contradictory "future" statements left in the Phase 6
narrative.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: ff57ce84-2f7f-4893-bba2-fcef84b7e186

📥 Commits

Reviewing files that changed from the base of the PR and between fa97bc4 and f2a9e0a.

📒 Files selected for processing (1)
  • plans/modern-tooling.md

Comment thread plans/modern-tooling.md
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the Modern Tooling Migration plan to reflect current progress and expand the list of future follow-ups.

Changes:

  • Updates the progress table to mark knip work as merged and adds additional sub-phases (6b–6e).
  • Expands “Future considerations” with additional potential follow-up items.

Comment thread plans/modern-tooling.md
Comment on lines +17 to +20
| 6b. verbatimModuleSyntax | PR open | #319 | Enable verbatimModuleSyntax, remove tslib from all packages. |
| 6c. ESM extensions | Merged | #315 | Add .js extensions to ESM dist imports. verify:esm CI check. |
| 6d. strictEquality | Merged | #314 | defineOption API, ko.options.strictEquality setter. Fixes #290. |
| 6e. CI speed | PR open | #318 | Python-based Bun install in containers, saves ~9 min. |
Copy link

Copilot AI Apr 16, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The PR title says all phases are complete, but the progress table still lists phases 6b and 6e as "PR open". Also, later in this document Phase 6 is still labeled as "(future)" while this table now marks 6 as merged. Please reconcile the plan status messaging (either update the title/statuses or adjust the Phase sections so the table and narrative agree).

Copilot uses AI. Check for mistakes.
Comment thread plans/modern-tooling.md
Comment on lines +152 to +154
- **Renovate/Dependabot** — automated dependency PRs (48h minimumReleaseAge guards supply chain)
- **Benchmarking** — vitest bench for observable/computed hot paths
- **`.github/copilot-instructions.md`** — extend AGENTS.md context to Copilot/Cursor users
Copy link

Copilot AI Apr 16, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These "Future considerations" bullets appear to describe work that already exists in the repo: .github/dependabot.yml is present, and .github/copilot-instructions.md already exists (and another plan even notes it was added). Consider updating/removing these items or rephrasing them as follow-ups (e.g., tuning Dependabot settings / minimumReleaseAge policy, or updating Copilot instructions). Also, the parenthetical "48h minimumReleaseAge guards supply chain" is a bit unclear—suggest rewording to explicitly say it guards against supply-chain attacks.

Suggested change
- **Renovate/Dependabot** — automated dependency PRs (48h minimumReleaseAge guards supply chain)
- **Benchmarking** — vitest bench for observable/computed hot paths
- **`.github/copilot-instructions.md`** — extend AGENTS.md context to Copilot/Cursor users
- **Dependabot tuning**refine automated dependency PR settings, including whether the 48h `minimumReleaseAge` policy remains appropriate to help guard against supply-chain attacks
- **Benchmarking** — vitest bench for observable/computed hot paths
- **`.github/copilot-instructions.md` updates** — extend existing guidance with more AGENTS.md context for Copilot/Cursor users

Copilot uses AI. Check for mistakes.
Brian M Hunt and others added 9 commits April 16, 2026 10:48
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
plans/dark-factory.md: vision for AI-maintained repo — what's in place,
what's missing, and the principles behind it.

agents/soul.md: the philosophical foundation of Knockout — observables
as the atom, update locality, provider architecture, backwards compat.
Gives AI agents the *why* behind design decisions.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Add five-level framing, StrongDM's "code must not be written/reviewed
by humans" approach, Stanford CodeX trust paper. Position TKO at
Level 3-4 with honest assessment of gaps. Add scenario testing and
incremental trust principle.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Knockout apps written a decade ago are still in production. TKO is the
path of least resistance forward. Aim for stability, not rigid backwards
compatibility — breaking changes are acceptable when they improve
correctness/security and the migration is clear.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
README: remove stale references (Make, lerna, Prettier, ESLint,
Sauce Labs, CircleCI, Coveralls). Add current tooling, architecture
summary, dark factory direction, and soul.md link.

Keywords: add 5-6 searchable npm keywords per package —
common (knockout, tko) plus category-specific tags.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- README quick start now defaults to @tko/build.reference
- build.knockout positioned as migration path with link to /3to4/
- Phase 6 narrative expanded with actual sub-item statuses and PR refs

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The .py extension triggered a separate CodeQL python job that always
failed. The script still runs via python3 explicitly.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@brianmhunt brianmhunt merged commit bd644ad into main Apr 16, 2026
2 checks passed
@brianmhunt brianmhunt deleted the docs/update-plans branch April 16, 2026 14:50
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.

2 participants