Build(deps-dev): Bump @typescript-eslint/parser from 5.62.0 to 8.29.1#10
Merged
joelteply merged 2 commits intoApr 9, 2025
Merged
Conversation
d2c2702 to
1510066
Compare
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 5.62.0 to 8.29.1. - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.29.1/packages/parser) --- updated-dependencies: - dependency-name: "@typescript-eslint/parser" dependency-version: 8.29.1 dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
1510066 to
62abd71
Compare
joelteply
approved these changes
Apr 9, 2025
joelteply
added a commit
that referenced
this pull request
Nov 30, 2025
…script-eslint/parser-8.29.1 Build(deps-dev): Bump @typescript-eslint/parser from 5.62.0 to 8.29.1
3 tasks
joelteply
added a commit
that referenced
this pull request
Jun 2, 2026
PR #1510's adversarial reviewer caught 9 findings, 3 blocking. Substantial revision addresses each: Blockers: - Finding #1 (cleanup model wrong): rewritten "Cleanup model" section. `.abort()` alone is INSUFFICIENT — wire subscriber stays in Arc<Airc>.inner.subscribers until registry-remove drops the Arc. Supervisor shutdown path MUST: abort → await → registry.remove. - Finding #2 (position-pairing broken): elevated to hard prereq P2. scan_personas_dir sorts alphabetically; boot 2 yields persona order != plan order on random-derived names. Slice 13 ships with plan.len() <= 1 (Helper only); slice 14 lands role-in-seed.json + RoleAwareProvider before re-enabling Coder. - Finding #3 (after-code reimplements existing fns): "after" rewrite uses bootstrap_planned (slice 8) + materialize_adapters (slice 9) as composition, not open-coded copies. Net-new code ~25 lines, not ~50. Major: - Finding #4 (PersonaSupervisor dup with PersonaAircRuntimeRegistry): Q3 revised to EXTEND the registry — HostedPersonaRuntime owns both airc_runtime + service_loop JoinHandle. registry.remove becomes the natural shutdown path. One keyspace, one cleanup chain. - Finding #5 (no Runtime::shutdown caller): elevated to hard prereq P1. Slice 13 wires tokio::signal::ctrl_c -> runtime.shutdown. - Finding #6 (no broker admission for N adapter spawns): elevated to hard prereq P3. ResourceBroker.acquire before each factory.build_adapter. Moderate: - Finding #7 (detect_host_capability already exists): Q2 restated to call the existing free function at host_capability_probe.rs:87. - Finding #8 (global_arc() cost inverted): Q1 recommendation flipped to (B) — refactor bootstrap_planned to take &Registry. Singleton storage migration would have touched every callsite of global(). Minor: - Finding #9 (BootSummary venue): Q5 specifies MessageBus::publish("persona:boot:summary", ...) with operator scraping via events/recent; no declared subscribers in slice 13. - Finding #10 (hot-reload undefined): added as Q6, declared out-of-scope. - Finding #11 (wire-subscription failure mid-boot): added as Q7, supervisor polls JoinHandle::is_finished every 5s. Plus added implementation checklist at end so slice 13 PR has a sign-off surface. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
joelteply
added a commit
that referenced
this pull request
Jun 7, 2026
* docs(planning): HEADLESS-PERSONA-HOST-LOOP — slice 13 design Captures the boot wire-up plan for #133 slice 13 before touching the load-bearing `ipc::start_server` flow. Documents: - The "moment-of-truth" gap: composition pieces from slices 5-12 exist; nothing in continuum-core actually calls them at boot. - Before/after of the IPC boot loop (~ipc/mod.rs:1024-1089). - The cleanup model verified during PR #1508's slice-12 review: .abort() → JoinHandle drop → conversation drop → EventStream drop → broadcast::Receiver drop auto-decrements subscriber count. Wire subscriber is ref-counted across local subscribers; tears down when runtime Arc reaches 0. No leak; no manual unsubscribe. - Five open questions with recommendations: 1. Arc<Registry> for build_profile — add model_registry::global_arc() 2. HwCapabilityTier source — HostCapabilityProbe::detect_at_boot() 3. hosted_handles ownership — new PersonaSupervisor module 4. ResumeOrMintProvider role-mapping — slice 14 territory 5. BootSummary event for per-slot failures - Test plan: PersonaBootstrapper trait split for stubbing. - Explicit non-goals (shared-base / cross-grid / LoRA / role-aware). - Doctrine memories worth refreshing on implementation. Net-additive doc — no code changes. Slice 13 implementation lands as a follow-up PR. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * docs(planning): rev HEADLESS-PERSONA-HOST-LOOP per PR #1510 review PR #1510's adversarial reviewer caught 9 findings, 3 blocking. Substantial revision addresses each: Blockers: - Finding #1 (cleanup model wrong): rewritten "Cleanup model" section. `.abort()` alone is INSUFFICIENT — wire subscriber stays in Arc<Airc>.inner.subscribers until registry-remove drops the Arc. Supervisor shutdown path MUST: abort → await → registry.remove. - Finding #2 (position-pairing broken): elevated to hard prereq P2. scan_personas_dir sorts alphabetically; boot 2 yields persona order != plan order on random-derived names. Slice 13 ships with plan.len() <= 1 (Helper only); slice 14 lands role-in-seed.json + RoleAwareProvider before re-enabling Coder. - Finding #3 (after-code reimplements existing fns): "after" rewrite uses bootstrap_planned (slice 8) + materialize_adapters (slice 9) as composition, not open-coded copies. Net-new code ~25 lines, not ~50. Major: - Finding #4 (PersonaSupervisor dup with PersonaAircRuntimeRegistry): Q3 revised to EXTEND the registry — HostedPersonaRuntime owns both airc_runtime + service_loop JoinHandle. registry.remove becomes the natural shutdown path. One keyspace, one cleanup chain. - Finding #5 (no Runtime::shutdown caller): elevated to hard prereq P1. Slice 13 wires tokio::signal::ctrl_c -> runtime.shutdown. - Finding #6 (no broker admission for N adapter spawns): elevated to hard prereq P3. ResourceBroker.acquire before each factory.build_adapter. Moderate: - Finding #7 (detect_host_capability already exists): Q2 restated to call the existing free function at host_capability_probe.rs:87. - Finding #8 (global_arc() cost inverted): Q1 recommendation flipped to (B) — refactor bootstrap_planned to take &Registry. Singleton storage migration would have touched every callsite of global(). Minor: - Finding #9 (BootSummary venue): Q5 specifies MessageBus::publish("persona:boot:summary", ...) with operator scraping via events/recent; no declared subscribers in slice 13. - Finding #10 (hot-reload undefined): added as Q6, declared out-of-scope. - Finding #11 (wire-subscription failure mid-boot): added as Q7, supervisor polls JoinHandle::is_finished every 5s. Plus added implementation checklist at end so slice 13 PR has a sign-off surface. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * docs(planning): rev2 HEADLESS-PERSONA-HOST-LOOP — match shipped impl + correct cleanup model PR #1510 re-review (after the first revision) caught: 1. **Cleanup model still wrong** — claimed `ensure_wire_subscriber` / `inner.subscribers` (was the 428f928 worktree I was reading, not the pinned f6ed190). Real mechanism in f6ed190 is `EventStream::EventStreamInner::Daemon` holding `DaemonAttachGuard` (`stream.rs:25-68`). On `EventStream` drop, guard drops, per-channel attach `JoinHandle`s abort. **`.abort()` ALONE is sufficient** against the pinned rev. The `shutdown_slot` registry-remove is for in-substrate Arc state hygiene, not for daemon-side teardown. Section rewritten with the correct mechanism, file:line cited. 2. **"Hard prerequisites" misrepresented impl scope** — listed P1 (ctrl_c→shutdown), P3 (broker), Q5 (BootSummary publish), Q7 (5s poller) as "MUST land" but the implementation explicitly deferred all four. Restructured to "Slice 13 scope vs deferred follow-ups" with honest splits: shipped vs deferred + why each deferral is acceptable (single-persona LCD is in-budget; `shutdown_slot` available via IPC commands; cleanup model now shows `.abort()` is sufficient). 3. **"After" snippet didn't match impl** — used `BootSummary::default()` / `bus.publish` / `summary.failed.push`, but the impl uses `tracing::info!(hosted=N, failed=N)` counters. Rewrote the snippet to match what shipped. Notes Q5 (BootSummary publish) as deferred. Plus the implementation status section is now accurate: - Q1, Q3, P2, Q2-partial: shipped ✅ - P1, P3, Q5, Q7, Q2-full: deferred to slice 13.5+ ❌ - Integration polish in #1511: room-name discovery + LCD model registry entry + PersonaContext rename + RagInspectionRequest:: for_persona derivation site (the `&ctx` doctrine) - Integration validation: Paige replied in continuum room Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
joelteply
added a commit
that referenced
this pull request
Jun 8, 2026
The recurring slop pattern revealed by the test audit (3,646 test functions in continuum-core, 34% of LOC, files with 3-6 separate #[cfg(test)] mod blocks each): the model keeps forgetting that we already wrote the test infrastructure and reinvents fixtures / mocks / stress harnesses per-PR. Add a fourth STOP block to CLAUDE.md as the canonical pointer to what already exists: - HeuristicInferenceAdapter (ai/heuristic_adapter.rs) — the canned- response inference fixture, gated #[cfg(any(test, feature = "test-fixtures"))] - persona::recorder + vdd::turn_replay — live persona turn capture and replay - RagCaptureSink / JsonlRagCaptureSink / RecordingRagSource / ReplayRagSource — RAG context capture and replay (PRs #10, #11, #12) - TwoAircLoopback (in flight, task #187) — two-airc-peer cross-grid integration fixture - RecordingModule pattern (runtime/runtime.rs) — bus-recording subscriber for event assertions - mod stress { ... } gated behind stress-tests feature — concurrency harness (this PR) Plus the six rules going forward, codified so they survive amnesia: 1. ONE #[cfg(test)] mod tests per file. Nest sub-mods inside, never add a peer test mod. 2. Stress tests go in the stress-tests-gated mod. Compile-time gating, not #[ignore]. 3. Mocks / Stubs / Fakes go behind cfg(any(test, feature = "test-fixtures")). Production binaries cannot link them. 4. Battle-harden regressions get one #[test] in the existing mod with a // regression for #N link. Not their own file. 5. Reusable fixtures live in one place per concern. Never write a parallel MockX in your test file. 6. Every test justifies itself with // what this catches: naming the invariant or regression. Trivial getter tests get refused. Per Joel 2026-06-08: "Yes half the battle is tests and we wrote all this infra. Need to stop forgetting." Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Rebasing might not happen immediately, so don't worry if this takes some time.
Note: if you make any changes to this PR yourself, they will take precedence over the rebase.
Bumps @typescript-eslint/parser from 5.62.0 to 8.29.1.
Release notes
Sourced from
@typescript-eslint/parser's releases.... (truncated)
Changelog
Sourced from
@typescript-eslint/parser's changelog.... (truncated)
Commits
ef7e6dechore(release): publish 8.29.13dd1835chore(release): publish 8.29.0807f5cachore(release): publish 8.28.03efd99echore(release): publish 8.27.09aa0b6bchore(release): publish 8.26.1bc6d19fchore(release): publish 8.26.017e7012chore(deps): update dependency knip to v5.44.1 (#10845)9674629feat: support TypeScript 5.8 (#10903)7c88d26chore: update all test scripts to remove coverage flag (#10582)1a9ab8fchore(release): publish 8.25.0Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot mergewill merge this PR after your CI passes on it@dependabot squash and mergewill squash and merge this PR after your CI passes on it@dependabot cancel mergewill cancel a previously requested merge and block automerging@dependabot reopenwill reopen this PR if it is closed@dependabot closewill close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)