Build(deps-dev): Bump @typescript-eslint/parser from 8.29.1 to 8.43.0#116
Closed
dependabot[bot] wants to merge 1 commit into
Closed
Build(deps-dev): Bump @typescript-eslint/parser from 8.29.1 to 8.43.0#116dependabot[bot] wants to merge 1 commit into
dependabot[bot] wants to merge 1 commit into
Conversation
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 8.29.1 to 8.43.0. - [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.43.0/packages/parser) --- updated-dependencies: - dependency-name: "@typescript-eslint/parser" dependency-version: 8.43.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com>
Contributor
Author
|
Superseded by #128. |
This was referenced Mar 30, 2026
joelteply
added a commit
that referenced
this pull request
Jun 2, 2026
…a/rag-inspect (task #116, slice A) Production wiring for the PersonaResolver trait shipped with task #100. Reads the canonical persona-on-disk layout: ~/.continuum/personas/<agent_name>/ ├── seed.json (persona_id + agent_name, written by │ PersonaPersistenceModule) └── airc/ (airc home — keypair + per-persona events.sqlite) ### What ships - `FilesystemPersonaResolver::new(continuum_root, airc_socket_path)` - `.with_default_adapter(adapter)` to wire heuristic / llama.cpp / cloud / remote-grid into the inference probe path - `PersonaResolver::resolve(name)` (now async): 1. Reads seed.json via existing `persona::seed::read_seed` (typed errors, async I/O) 2. Ensures airc home dir exists (tokio::fs) 3. Attaches to the running airc daemon via `airc_lib::Airc::attach_as(home, name, socket_path)` 4. Returns PersonaResolution with persona_id + airc reader + optional inference adapter - Public helpers `read_persona_seed` and `airc_home_for` so the CI harness (slice B, separate commit) + the airc_rag_demo binary can use the same path math ### Trait change: PersonaResolver::resolve is now async Production needs async — seed file read goes through tokio::fs; airc attach goes through tokio::net. The stub test resolver got a trivial `async fn` update. All 18 existing PersonaRagInspectModule tests still pass; the module pipeline already lived inside an async command-handler so the .await is free. ### Tests (6, all green) - read_persona_seed_round_trips_a_well_formed_seed (V1 schema: persona_id, agent_name, created_at_ms) - read_persona_seed_missing_file_returns_typed_error (error references the path so operators know where the substrate looked) - read_persona_seed_malformed_returns_typed_error - airc_home_for_matches_canonical_layout - seed_path_matches_canonical_layout - with_default_adapter_threads_adapter_through_to_resolution ### What is deliberately NOT unit-tested The full `resolve(name)` flow that calls `airc_lib::Airc::attach_as` is integration-tested by the `airc_rag_demo` binary (proven against operator%27s live daemon as of 2026-05-31). Slice B of #116 wraps this resolver into a headless CI harness once we have a way to spin up airc-in-CI. ### What unblocks now Any consumer that has a continuum root + an airc socket path can construct a FilesystemPersonaResolver and pass it into a PersonaRagInspectModule. The `persona/rag-inspect` command now has its production resolver. `continuum-core-server` wiring is the next slice (separate commit) — construct the resolver + register the module with the runtime registry at startup.
joelteply
added a commit
that referenced
this pull request
Jun 2, 2026
…task #116, slice B) When the persona-bootstrap deps are available (daemon_socket + default_room — same precondition as PersonaInstanceManagerModule), the server now also constructs a FilesystemPersonaResolver (from slice A) and registers a PersonaRagInspectModule against it. Result: `Commands.execute(%27persona/rag-inspect%27, { persona: %27Paige%27 })` is live in continuum-core-server. Any AI (Claude, sentinel persona, other peer over airc) can now introspect a persona%27s RAG state in one command call without spelunking files or running ad-hoc binaries. The chain_inference path stays RAG-only at server boot for now — default_adapter is None because the current AdapterRegistry is Box-based and can%27t hand out Arc<dyn AIProviderAdapter> without a separate refactor. The chained variant is exercised by the existing 13 unit tests; production wiring of the inference probe adapter is its own follow-up commit. Wiring shape (mirrors the PersonaInstanceManagerModule registration block immediately above it in `ipc/mod.rs`): 1. Clone daemon_socket BEFORE PersonaInstanceManagerModule consumes it (small refactor — just adds a `daemon_socket_for_rag_inspect` local). 2. Construct FilesystemPersonaResolver with continuum_root + the cloned daemon socket. 3. Construct PersonaRagInspectModule wrapping the resolver Arc. 4. `runtime.register(...)` — the kernel router now sees the `persona/rag-inspect` command. 5. INFO log so operators see the registration succeeded. The registration is gated behind the same `if let Some((daemon_socket, default_room))` block as the instance manager — if airc isn%27t available at boot, neither module registers. Operators on the same hardware get the same %22airc not running%22 message + the same fix (install airc, run `airc join`). Build: clean compile. The full module%27s 13 unit tests still pass (no API change beyond the async resolve trait method, which slice A already migrated). Integration validation happens when an operator on a configured continuum-core-server runs `./jtag persona/rag-inspect --persona=Paige` against the live system.
joelteply
added a commit
that referenced
this pull request
Jun 2, 2026
…ask #120) ## Doctrine (Joel, 2026-06-01) > "We don't get away with singular AI's. We are just clever with > resources." Multi-persona is the floor, not a luxury. Even the lowest tier (Intel Mac discrete-Metal, CPU-only) runs Helper + Coder, sharing a base model and paging per-persona LoRAs. The substrate's `defaults_for_tier(tier)` function ALWAYS returns >= 2 templates; "singular AI" is structurally impossible. ## What ships `persona/role_template.rs`: - `RoleId` — Helper, Coder, Sentinel, Custom - `SpawnPriority` — Required (Helper), HighlyRecommended (Coder), OnRequest (Sentinel and explicit-need roles) - `ModelChoice` — model_id + gguf_file + size + quant + optional base_model_id (the lever for shared-base LoRA paging) - `ModelChoicePerTier` with a safety-floor `choose(tier)` fallback so any unmapped tier still gets the lowest known runnable choice - `IdentityDefaults` (name_pool + bio_template) — feeds the deterministic identity projection from `persona-identity-derives-from-source-id` - `CognitionDefaults` (depth_preference, voice, max_response_chars, asks_before_guessing) — Helper sits clippy-shaped (depth=20, voice="clippy", 400 chars, asks); Coder sits engineer-shaped (depth=70, voice="engineer", 4000 chars, doesn't ask) - `RoleTemplate` bundles all of the above - `helper_template()` + `coder_template()` populated concretely across the HwCapabilityTier ladder, from CpuOnly (Qwen2.5-0.5B-Instruct for Helper, DeepSeek-Coder-1.3B for Coder) up through Sm120 / M5UmaProMax (14B classes) - `defaults_for_tier(tier)` ALWAYS returns >= Helper + Coder ## Tier-shaped expectations | Tier | Helper | Coder | |----------------------------|------------------------------|------------------------------------| | CpuOnly / MacIntelMetalDsc | Qwen2.5-0.5B Q4_K_M (380 MiB)| DeepSeek-Coder-1.3B Q4_K_M (870) | | M1Uma8Gb | Qwen2.5-1.5B (1.1 GiB) | Qwen2.5-Coder-1.5B (1.1 GiB) | | M1Uma16Gb | Qwen2.5-3B (2 GiB) | Qwen2.5-Coder-3B (2 GiB) | | M3UmaProMax / Sm60 | Qwen2.5-7B (4.4 GiB) | Qwen2.5-Coder-7B (4.4 GiB) | | M5UmaProMax / Sm120 | Qwen2.5-14B (8.5 GiB) | Qwen2.5-Coder-14B (8.5 GiB) | Same role identity + cognition shape; just bigger models at higher tiers. At low tiers Helper and Coder may share a base model family (both qwen2.5-1.5b family at M1Uma8Gb, for example) — the base_model_id field is the lever a future LoRA-paging module uses to share weights. ## Tests (9 / 9 green) - `defaults_for_tier_returns_at_least_helper_and_coder_for_every_tier` — the load-bearing invariant. Every variant of HwCapabilityTier yields at least Helper + Coder. If a future refactor narrows the floor at any tier, the test screams. "No singular AI" is structural. - `helper_priority_is_required` — Helper's SpawnPriority pins the always-on contract. - `coder_priority_is_highly_recommended` — Coder shows up by default but is disable-able. - `helper_model_choice_resolves_for_every_tier` — including tiers the template doesn't cover, via the safety floor. - `coder_low_tier_targets_swiss_army_code_family` — names the acceptable model families (Qwen-Coder / DeepSeek-Coder / StarCoder), catches accidental swaps to non-code-capable models. - `helper_cognition_defaults_are_brief_and_friendly` — pins clippy DNA (depth <= 30, max_chars <= 600, asks_before_guessing, voice=clippy). - `coder_cognition_defaults_allow_depth` — pins the contrasting engineer profile (depth >= 50, max_chars >= 2000). - `model_choice_per_tier_falls_back_to_first_entry` — the safety floor stays operative. - `role_id_stable_strings` — header / kanban metadata strings pinned. ## What this enables (follow-ups, separate cards) 1. **PersonaSpawnerModule** — ever-present substrate ServiceModule that reconciles `defaults_for_tier(current_tier)` against currently-running personas. Required → always-spawned. HighlyRecommended → spawn unless explicitly opted out. 2. **Shared-base + LoRA paging** — when Helper + Coder pick the same `base_model_id` at the current tier, the substrate hosts ONE model in memory and pages LoRAs. `[[host-the-seemingly-impossible]]` in concrete form on a laptop. 3. **Hardware-probe wiring** — `HostCapabilityProbe` (already exists, task #115) reports tier; substrate spawns Helper + Coder by default; the user never sees a model selector. 4. **Bootstrap experience** — `airc init` (or continuum equivalent) on first run probes hardware, picks templates from this layer, downloads the GGUFs, spawns the personas, posts a greeting in the default room. Naive users get a working substrate on day 1. ## References - `[[host-the-seemingly-impossible]]` — shared base, page LoRAs - `[[individuality-is-the-substrate-strength]]` — diversity via LoRA - `[[personas-have-names-not-function-labels]]` — role in bio, identity from deterministic projection - `[[substrate-is-communities-of-specialization]]` — even N=2 is a community - Built on: #87 PersonaInstanceManagerModule, #115 HwCapabilityTier, #116 FilesystemPersonaResolver, #109/#110/#111 InferenceCoordinator 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.
Bumps @typescript-eslint/parser from 8.29.1 to 8.43.0.
Release notes
Sourced from
@typescript-eslint/parser's releases.... (truncated)
Changelog
Sourced from
@typescript-eslint/parser's changelog.... (truncated)
Commits
ef9173cchore(release): publish 8.43.0d135909chore(release): publish 8.42.031a7336chore(release): publish 8.41.060c3b26chore(release): publish 8.40.0b2ee794chore(release): publish 8.39.1c98d513chore(release): publish 8.39.02112d58feat: update to TypeScript 5.9.2 (#11445)d11e79echore(release): publish 8.38.0816be17chore(release): publish 8.37.084b7a2echore(release): publish 8.36.0Maintainer changes
This version was pushed to npm by [GitHub Actions](https://www.npmjs.com/~GitHub Actions), a new releaser for
@typescript-eslint/parsersince your current version.Dependabot 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)