pi-career 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +28 -2
- package/NOTICE +1 -1
- package/README.md +72 -40
- package/SECURITY.md +7 -7
- package/dist/index.js +1406 -296
- package/docs/application-workspaces.md +6 -5
- package/docs/career-run-roadmap.md +37 -27
- package/docs/design.md +24 -19
- package/docs/native-dependency-inventory.md +1 -1
- package/docs/product-flow.md +11 -6
- package/docs/releasing.md +55 -32
- package/docs/variant-save-workflow.md +303 -0
- package/package.json +6 -1
- package/skills/career-core/SKILL.md +52 -133
- package/skills/career-core/references/cli-contract.md +6 -6
|
@@ -2,181 +2,100 @@
|
|
|
2
2
|
name: career-core
|
|
3
3
|
description: Resolves and invokes a compatible deterministic Career Core runtime for source-grounded resume evaluation/normalization/readiness analysis, reviewed external suggestions and replacements, assisted-variant review/materialization, job normalization, and conservative matching. Use for supported career-document analysis or local integration work.
|
|
4
4
|
license: MIT OR Apache-2.0
|
|
5
|
-
compatibility: Requires Pi with pi-career
|
|
5
|
+
compatibility: Requires Pi with pi-career on ARM64/x64 macOS or GNU/musl Linux and a compatible Career Core route. Windows is unsupported.
|
|
6
6
|
metadata:
|
|
7
7
|
author: revazi
|
|
8
|
-
version: "0.
|
|
8
|
+
version: "0.3.0"
|
|
9
9
|
---
|
|
10
10
|
|
|
11
11
|
# Career Core through pi-career
|
|
12
12
|
|
|
13
|
-
Use `career_run`
|
|
13
|
+
Use `career_run` for normal work. It validates a compatible Core operation catalog/schemas before private input, builds exact envelopes from ephemeral handles, retains complete bounded results in memory, and returns compact projections. Career Core remains authoritative for algorithms, schemas, errors, evidence, warnings, uncertainty, ordering, baselines, and assisted/non-authoritative semantics.
|
|
14
14
|
|
|
15
|
-
The raw `career_core_discover`, `career_core_resume`, and `career_core_job` tools
|
|
15
|
+
The raw `career_core_discover`, `career_core_resume`, and `career_core_job` tools are normally inactive. Enable them with `/career-tools raw` only for explicit advanced schema/debugging work; `/career-tools managed` restores the compact surface.
|
|
16
16
|
|
|
17
|
-
## Privacy and
|
|
17
|
+
## Privacy and context
|
|
18
18
|
|
|
19
|
-
|
|
19
|
+
Begin with `{"command":"context"}`. A persisted Pi session returns no private handles until you ask whether it may persist private career content. On approval call `{"command":"consent","payload":"approve"}`; on refusal use `"decline"` and recommend a new `pi --no-session` run. Transient runs need no persisted consent entry.
|
|
20
20
|
|
|
21
|
-
|
|
22
|
-
{"command":"context"}
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
In a persisted Pi session, `context` returns no private handles until an explicit session-persistence decision exists. Ask the user first. If approved, call:
|
|
26
|
-
|
|
27
|
-
```json
|
|
28
|
-
{"command":"consent","payload":"approve"}
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
If declined, call consent with `"decline"` and recommend a new transient run:
|
|
32
|
-
|
|
33
|
-
```bash
|
|
34
|
-
pi --no-session
|
|
35
|
-
```
|
|
36
|
-
|
|
37
|
-
Do not claim secure erasure or removal of previous sessions, backups, shell history, provider copies, or separately saved results. Local-session approval is not provider approval. Transient sessions require no persisted consent entry.
|
|
38
|
-
|
|
39
|
-
After approval, `context` returns bounded `resume:...` handles and, when set through `/career-vacancy`, `vacancy:current`. Handles and complete Core results are process-memory-only and disappear on session/branch replacement or restart. The model sends handles instead of repeating complete source documents in later Core envelopes.
|
|
21
|
+
Local-session consent is not provider consent. Never claim secure erasure of Pi/npm data, prior sessions, backups, shell history, provider copies, or saved results. Returned resume/vacancy handles and complete Core results are process-memory-only, disappear on session/branch replacement or restart, and replace repeated complete source documents in later Core calls.
|
|
40
22
|
|
|
41
23
|
## `career_run` commands
|
|
42
24
|
|
|
43
|
-
|
|
25
|
+
Payloads are native JSON, never JSON strings or complete Core envelopes.
|
|
44
26
|
|
|
45
|
-
- `context`:
|
|
46
|
-
- `consent`: payload is `"approve"` or `"decline"
|
|
47
|
-
- `analyze`:
|
|
48
|
-
- `match`:
|
|
49
|
-
- `suggestion-review`:
|
|
50
|
-
- `replacement-review`:
|
|
27
|
+
- `context`: current privacy state and original-resume/current-vacancy handles.
|
|
28
|
+
- `consent`: persisted-session payload is `"approve"` or `"decline"`.
|
|
29
|
+
- `analyze`: original `resume:...` handle.
|
|
30
|
+
- `match`: original resume handle; current vacancy is implicit.
|
|
31
|
+
- `suggestion-review`: original resume plus `{"suggestions":[{"basis_check_id":"...","start_line":1,"end_line":1,"source_target":"verbatim source text","source_evidence":["verbatim in-range evidence"],"suggestion":"advisory text"}]}`. Suggestions are advisory, not replacements.
|
|
32
|
+
- `replacement-review`: original resume plus `{"replacements":[{"basis_check_id":"...","start_line":1,"end_line":1,"source_target":"verbatim source text","source_evidence":["verbatim in-range evidence"],"proposed_replacement":"..."}]}`.
|
|
33
|
+
- `variant-review`: original resume (current vacancy implicit) plus `{"changes":[{"section":"experience","start_line":1,"end_line":1,"original_text":"verbatim source text","proposed_text":"...","resume_evidence":["verbatim resume evidence"],"vacancy_evidence":["verbatim vacancy evidence"]}]}`. End the turn after this call.
|
|
34
|
+
- `materialize`: in a later user-submitted turn, a returned non-PDF `review:...` handle plus `{"selected_change_ids":["change-0001"]}`. PDF handles fail closed.
|
|
35
|
+
- `detail`: any result/review/variant handle plus `{"section":"summary|warnings|checks|evidence|changes|document|raw"}`; add `"item":"change-0001"` (or a suggestion/replacement ID) for one canonical item. If detail is too large, narrow it; never truncate.
|
|
51
36
|
|
|
52
|
-
|
|
53
|
-
{
|
|
54
|
-
"replacements": [{
|
|
55
|
-
"basis_check_id": "...",
|
|
56
|
-
"start_line": 1,
|
|
57
|
-
"end_line": 1,
|
|
58
|
-
"source_target": "verbatim source text",
|
|
59
|
-
"source_evidence": ["verbatim in-range evidence"],
|
|
60
|
-
"proposed_replacement": "..."
|
|
61
|
-
}]
|
|
62
|
-
}
|
|
63
|
-
```
|
|
37
|
+
Projections retain all Core warnings and relevant authority, uncertainty, and discards. Their handles refer to complete unchanged, bounded, ephemeral results available through `detail`, never result files.
|
|
64
38
|
|
|
65
|
-
|
|
39
|
+
## Slash-command and assisted workflows
|
|
66
40
|
|
|
67
|
-
|
|
68
|
-
{
|
|
69
|
-
"changes": [{
|
|
70
|
-
"section": "experience",
|
|
71
|
-
"start_line": 1,
|
|
72
|
-
"end_line": 1,
|
|
73
|
-
"original_text": "verbatim source text",
|
|
74
|
-
"proposed_text": "...",
|
|
75
|
-
"resume_evidence": ["verbatim resume evidence"],
|
|
76
|
-
"vacancy_evidence": ["verbatim vacancy evidence"]
|
|
77
|
-
}]
|
|
78
|
-
}
|
|
79
|
-
```
|
|
41
|
+
Users may run `/career-setup`, `/career-library`, `/career-application`, `/career-vacancy`, `/career-match`, `/career-analyze`, `/career-workbench`, TUI-only `/career-review`, and user-only TUI/RPC `/career-save` without a package-initiated provider/model call. Core-backed commands use the same compatible runtime; local routes are preferred and any exact-package acquisition finishes before private stdin. `/career-application` permits one company/role per session; use `/new` for another. `/career-workbench` only prepares a visible editor prompt containing selected private source and never submits it. `/career-review` invokes neither Core nor a provider; saving invokes no Core/provider/network operation. After a workbench prompt is submitted, prefer `career_run` over raw schema reconstruction.
|
|
80
42
|
|
|
81
|
-
- `
|
|
82
|
-
- `detail`: `handle` is any returned result/review/variant handle; payload is `{"section":"summary|warnings|checks|evidence|changes|document|raw"}`. For one exact canonical item add `"item":"change-0001"`, `"suggestion-0001"`, or `"replacement-0001"`. Oversized model-visible detail fails rather than truncating; request a narrower section/item.
|
|
43
|
+
After non-PDF `variant-review`, report every retained canonical ID, discard, and warning, then stop. Tell a TUI user to run `/career-review <review-handle>`: it requires warning/discard acknowledgment, starts every change excluded, shows exact before/after/evidence before inclusion, jointly pages selected exact changes, allows reopening, and separately prepares—but never submits—only the unchanged handle and selected IDs. Materialize only after that later user submission, with exactly those IDs and cached review input. Keep output assisted/non-authoritative; never analyze or match it as original.
|
|
83
44
|
|
|
84
|
-
|
|
45
|
+
PDF extraction exposes text, not visual layout: return reviewed manual changes and never claim styling preservation; selection/materialization reject PDF handles. `local_save_guidance` is suggestion-only. Never save or use file-writing tools for a result. After successful non-PDF materialization, you may tell the user to invoke `/career-save <variant-handle>`; only that user action revalidates state, previews the exact artifact/sidecar/marker, requires unchanged preview plus separate confirmation, no-clobber writes a new private assisted variant, and rescans it out of original eligibility. PDF saves fail closed.
|
|
85
46
|
|
|
86
|
-
##
|
|
47
|
+
## Advanced raw tools and failures
|
|
87
48
|
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
`/career-workbench` remains a guided, reviewable provider handoff. It places complete selected private source in Pi's editor but never submits automatically. Prefer `career_run` rather than raw schema reconstruction after the prompt is submitted.
|
|
91
|
-
|
|
92
|
-
For non-PDF variants, present canonical retained IDs and all discard codes/warnings, then stop for explicit user selection. Materialize only in a later turn with exactly those IDs and the cached exact review input. Keep the result assisted/non-authoritative and never feed it into analysis or matching. PDF input remains extracted text only: provide reviewed manual changes, do not materialize, and do not claim to preserve visual layout.
|
|
93
|
-
|
|
94
|
-
A workbench `local_save_guidance` destination is suggestion-only. Never save automatically or place assisted output under `originals/`; exact path/file approval and the assisted sidecar contract remain required. Package-owned saving is still deferred.
|
|
95
|
-
|
|
96
|
-
## Advanced raw tool surface
|
|
49
|
+
For raw or runtime-integration work, first read [`references/cli-contract.md`](references/cli-contract.md). Raw agents are discovery-first and use exact exported/bundled schemas:
|
|
97
50
|
|
|
98
51
|
- `career_core_discover`: `capabilities`, `operations`, `schema-list`, `schema-export`, `schema-bundle`
|
|
99
52
|
- `career_core_resume`: `evaluate`, `analyze`, `analysis-suggestions-review`, `analysis-replacements-review`, `normalize`, `enrich`, `variant-review`, `variant-materialize`
|
|
100
53
|
- `career_core_job`: `normalize`, `match`
|
|
101
54
|
|
|
102
|
-
Raw
|
|
103
|
-
|
|
104
|
-
## Failure handling
|
|
105
|
-
|
|
106
|
-
A `career.pi_error.v1` value is adapter/process status, not a deterministic career result.
|
|
107
|
-
|
|
108
|
-
- `runtime_unavailable` means no compatible local route was found and acquisition is unavailable/offline; install exact `@revazi/career@0.1.1` or configure a reviewed compatible executable.
|
|
109
|
-
- `runtime_acquisition_failed` means exact-package acquisition failed; do not request npm output, paths, environment values, or raw errors.
|
|
110
|
-
- `managed_contract_invalid` means an explicit selected runtime is incompatible; an invalid `CAREER_CLI_PATH` never falls back.
|
|
111
|
-
- On `career_cli_error`, inspect only the nested, validated, bounded `career.error.v1`.
|
|
112
|
-
- Correct typed invalid input before trying again; do not repair by guesswork or retry unchanged validation failures.
|
|
113
|
-
- Raw tools may still return `result_too_large` or `result_too_many_lines`; do not request or use partial output.
|
|
114
|
-
- `career_run` `managed_contract_invalid` means the selected operation catalog/schema bundles are incompatible; do not bypass discovery or fall back to raw guessed envelopes.
|
|
115
|
-
- `context_required`, stale/missing handles, and session changes require a fresh `context`, not reconstructed identifiers.
|
|
116
|
-
- `detail_too_large` requires a narrower section or exact item; it does not authorize truncation or result-file export.
|
|
117
|
-
- Do not ask for raw stderr, paths, environment values, source copies, or hidden process errors.
|
|
118
|
-
|
|
119
|
-
## Resume operation rules
|
|
120
|
-
|
|
121
|
-
### `evaluate`
|
|
122
|
-
|
|
123
|
-
This is recognized core-section header coverage only. Preserve `limited_evaluation_scope` and parser uncertainty. Never present it as complete resume quality, proprietary ATS compatibility, visual-layout inspection, or a hiring prediction. Use `analyze` for full deterministic readiness analysis.
|
|
124
|
-
|
|
125
|
-
### `analyze`
|
|
126
|
-
|
|
127
|
-
Read `raw_score`, confidence-adjusted `score`, checks, evidence, `basis_check_id`, actions, warnings, and limitations together. Treat `inconclusive` checks and `provisional` findings as unverified. It independently scores only deterministic normalization of the original input; assisted documents cannot enter.
|
|
128
|
-
|
|
129
|
-
### `normalize`
|
|
130
|
-
|
|
131
|
-
Preserve source-grounded fields, source spans, confidence, statuses, warnings, and `enrichment_request`. `not_detected` is not confirmed absence.
|
|
132
|
-
|
|
133
|
-
### `enrich`
|
|
55
|
+
Raw document calls pass one exact `input_json` object to compatibility-validated stdin. They never invoke Cargo, fetch vacancy URLs, call a provider/model, or write payload/result files. Acquisition is restricted to exact `@revazi/career@0.2.0`, completes before private stdin, and is disabled by `PI_OFFLINE=1`.
|
|
134
56
|
|
|
135
|
-
|
|
57
|
+
Treat `career.pi_error.v1` as adapter/process status, not a career result:
|
|
136
58
|
|
|
137
|
-
|
|
59
|
+
- `unsupported_platform`: pi-career runs only on macOS/Linux; do not attempt another route.
|
|
60
|
+
- `runtime_unavailable`: install exact `@revazi/career@0.2.0` or configure a reviewed compatible executable; `runtime_acquisition_failed`: do not request npm diagnostics.
|
|
61
|
+
- `managed_contract_invalid`: the selected route/catalog/bundles are incompatible; an invalid `CAREER_CLI_PATH` never falls back, and raw guessed envelopes are not a bypass.
|
|
62
|
+
- On `career_cli_error`, inspect only its validated bounded `career.error.v1`. Correct typed invalid input, but never retry unchanged or guess repairs.
|
|
63
|
+
- `context_required`, stale/missing handles, or session changes require fresh `context`; never reconstruct IDs.
|
|
64
|
+
- `detail_too_large` requires a narrower section/item, not truncation/export. Raw size/line failures likewise return no partial output.
|
|
65
|
+
- `pdf_materialization_unsupported` leaves manual guidance only. For `variant_save_*`, never save for the user, reconstruct content, retry an indeterminate write, or request hidden paths/filesystem errors.
|
|
66
|
+
- Never request raw stderr, paths, environment values, source copies, npm output, or hidden process errors.
|
|
138
67
|
|
|
139
|
-
|
|
68
|
+
## Resume operations
|
|
140
69
|
|
|
141
|
-
### `
|
|
70
|
+
### `evaluate` and `analyze`
|
|
142
71
|
|
|
143
|
-
|
|
72
|
+
`evaluate` covers recognized core-section headers only. Preserve `limited_evaluation_scope` and parser uncertainty; never call it complete quality, proprietary ATS/layout analysis, or a hiring prediction. For full readiness use `analyze`, reading raw and confidence-adjusted scores, checks, evidence, `basis_check_id`, actions, warnings, and limitations together. Treat inconclusive/provisional findings as unverified. Analysis independently normalizes only originals; assisted documents cannot enter.
|
|
144
73
|
|
|
145
|
-
### `
|
|
74
|
+
### `normalize` and `enrich`
|
|
146
75
|
|
|
147
|
-
|
|
76
|
+
Preserve source-grounded fields/spans, confidence, statuses, warnings, and `enrichment_request`; `not_detected` is not confirmed absence. For an eligible deterministic request only, `enrich` validates an already supplied, schema-exact, source-grounded proposal; it neither generates nor calls a provider. Target only eligible empty fields with source values, preserve the authoritative baseline, and keep the assisted document separate from analysis/matching.
|
|
148
77
|
|
|
149
|
-
###
|
|
78
|
+
### Analysis proposal review
|
|
150
79
|
|
|
151
|
-
|
|
80
|
+
For both `analysis-suggestions-review` and `analysis-replacements-review`, preserve the rerun `baseline_analysis`, canonical action/status, evidence, discard codes, warnings, and Core order. Copy each `source_target` verbatim from its declared lines (prefer one complete line), with every `source_evidence` item verbatim inside those bounds. Call once; report discards and stop—no automatic repair/retry. Exact occurrence is not factual or rewrite-safety certification.
|
|
152
81
|
|
|
153
|
-
|
|
82
|
+
Schema-bounded retained suggestions remain advisory, bound to current failed canonical actions, and create no replacement/selection/mutation/export/materialization semantics. Replacements return canonical before/after text for non-authoritative diff display; user answers remain claims, not Core-certified facts, and create no candidate, selection, application, persistence, source mutation, or materialization path.
|
|
154
83
|
|
|
155
|
-
###
|
|
84
|
+
### Variant review and materialization
|
|
156
85
|
|
|
157
|
-
|
|
86
|
+
Review only the caller's bounded proposal. Keep Core canonical IDs/discard codes; grounding is not factual certification, and never repair discards or select for the user. Materialize only explicitly selected canonical IDs: Core revalidates the complete proposal and applies only those changes. Preserve the exact baseline and assisted/non-authoritative labels; never overwrite the original, analyze/match the result, or initiate persistence.
|
|
158
87
|
|
|
159
|
-
|
|
88
|
+
## Job operations
|
|
160
89
|
|
|
161
|
-
|
|
90
|
+
`normalize` accepts caller-supplied text only—never fetch a URL. Preserve required/preferred classes, spans, confidence, statuses, metadata, unclassified lines, and warnings; lexical classification is uncertain and `not_detected` unverified.
|
|
162
91
|
|
|
163
|
-
|
|
164
|
-
- Keep `confirmed_match`, `partial_match`, `likely_missing`, and `unverified` distinct.
|
|
165
|
-
- Cite resume/job spans when present and preserve null spans for derived signals.
|
|
166
|
-
- Accept only `normalized_exact` and returned `conservative_alias` skill equivalence.
|
|
167
|
-
- Never substitute adjacent technologies or repair a conservative false negative.
|
|
168
|
-
- Preserve top strengths/gaps, confidence bounds, warnings, and provisional recommendation status.
|
|
169
|
-
- Treat `apply_now`, `apply_after_small_edits`, and `improve_first` as bounded workflow guidance, never a hiring prediction.
|
|
170
|
-
- Review `unassessed_required_qualifications`; do not infer support or absence.
|
|
92
|
+
`match` accepts original resume/job schema inputs and reruns both baselines; assisted documents are forbidden. Distinguish raw from confidence-bounded scores and `confirmed_match`, `partial_match`, `likely_missing`, and `unverified`; preserve spans (including null derived spans), top strengths/gaps, confidence bounds, warnings, provisional recommendation, and `unassessed_required_qualifications` without inferring support or absence. Only returned `normalized_exact`/`conservative_alias` skill equivalence is valid; never substitute adjacent technologies or repair a conservative false negative. `apply_now`, `apply_after_small_edits`, and `improve_first` are bounded workflow guidance, not hiring predictions.
|
|
171
93
|
|
|
172
94
|
## Output discipline
|
|
173
95
|
|
|
174
|
-
- Raw
|
|
175
|
-
-
|
|
176
|
-
-
|
|
177
|
-
-
|
|
178
|
-
- Do not reorder Core-retained items, truncate tool output, silently repair, upgrade uncertainty into fact, or claim Core generated prose it only reviewed.
|
|
179
|
-
- Do not modify source documents unless the user separately requests and approves that change.
|
|
180
|
-
- Never place API keys in tool input, output, files, or logs.
|
|
96
|
+
- Raw JSON is authoritative and complete; managed content is a bounded projection whose handle retains the unchanged complete result.
|
|
97
|
+
- Preserve without contradiction every warning, relevant evidence/span, basis ID, confidence/uncertainty, baseline boundary, discard, limitation, order, and authority label. State that repeated review baselines were preserved instead of reproducing them; hydrate only needed detail.
|
|
98
|
+
- Keep narration concise. Do not print schema JSON, duplicate private source beyond bounded evidence, narrate repair attempts unless asked, truncate/reorder output, silently repair, upgrade uncertainty, or claim Core generated prose it only reviewed.
|
|
99
|
+
- Never modify originals, initiate saving, or place API keys in tool input, output, files, or logs. Only user-approved `/career-save` may create a new assisted artifact/sidecar.
|
|
181
100
|
|
|
182
|
-
|
|
101
|
+
Package installation/removal guidance is in [`../../README.md`](../../README.md).
|
|
@@ -4,19 +4,19 @@ Use this reference only after reading the parent skill. Career Core remains auth
|
|
|
4
4
|
|
|
5
5
|
## Runtime selection
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
pi-career supports only macOS and Linux. On other systems, extension initialization registers no command/tool and fails with stable `unsupported_platform` guidance before explicit/PATH resolution, package validation, acquisition, compatibility probing, or private stdin. On supported systems, resolution order is fixed:
|
|
8
8
|
|
|
9
9
|
1. bounded absolute `CAREER_CLI_PATH`;
|
|
10
10
|
2. `career` on PATH;
|
|
11
|
-
3. package-local exact `@revazi/career@0.
|
|
12
|
-
4. acquisition of exact `@revazi/career@0.
|
|
11
|
+
3. package-local exact `@revazi/career@0.2.0`;
|
|
12
|
+
4. acquisition of exact `@revazi/career@0.2.0` from the canonical npm registry;
|
|
13
13
|
5. stable installation guidance.
|
|
14
14
|
|
|
15
15
|
There is no sibling-checkout, Cargo, source-build, lifecycle-script, arbitrary download, PATH-selected npm/npx, or unpinned package fallback. `PI_OFFLINE=1` disables acquisition. A route is cached only in memory and invalidated when `CAREER_CLI_PATH` or PATH changes. npm acquisition may leave ordinary cache/`_npx` data and does not provide secure erasure.
|
|
16
16
|
|
|
17
|
-
Every caller-controlled route must pass the exact Core 0.
|
|
17
|
+
Every caller-controlled route must pass the exact Core 0.2.0 operation catalog and required self-contained schema bundles before private stdin opens. An invalid explicit override never falls back. Compatibility probes contain no private document input. If a cached automatic executable later fails before its operation emits `spawn`, pi-career may advance once; cancellation, timeout, and any started operation never retry another route.
|
|
18
18
|
|
|
19
|
-
Package-local/acquired routes invoke the reviewed package launcher directly with the real Node executable. The launcher owns native target/libc, package/provenance mapping, Unix mode
|
|
19
|
+
Package-local/acquired routes invoke the reviewed package launcher directly with the real Node executable. Pi-career validates the exact ordered six-package v2 launcher manifest, declared file allowlist, and `career` bin. The launcher owns native target/libc, package/provenance mapping, Unix mode, size, format, architecture, and SHA-256 verification. Pi-career's targets are `darwin-arm64`, `darwin-x64`, `linux-x64-gnu`, `linux-arm64-gnu`, `linux-x64-musl`, and `linux-arm64-musl`. Windows is unsupported.
|
|
20
20
|
|
|
21
21
|
## Managed discovery
|
|
22
22
|
|
|
@@ -56,7 +56,7 @@ The following raw tools stay registered but are normally inactive:
|
|
|
56
56
|
- Fatal UTF-8, multiple JSON documents, unexpected successful stderr, or capture overflow fail closed.
|
|
57
57
|
- No payload/result temp file, model/provider call, vacancy URL fetch, telemetry, post-launch retry, or repair exists at this boundary.
|
|
58
58
|
|
|
59
|
-
The sole network-capable behavior is bounded acquisition of exact `@revazi/career@0.
|
|
59
|
+
The sole network-capable behavior is bounded acquisition of exact `@revazi/career@0.2.0` after local routes fail. It derives npm from real Node, rejects conflicting `npm_execpath`, has fixed time/output bounds and process-tree cancellation, receives no private input, and finishes before document stdin opens.
|
|
60
60
|
|
|
61
61
|
Raw tools retain the 50,000-byte/2,000-line model-context ceiling and fail without partial output. Managed operations use Core's 32-MiB capture ceiling internally and expose compact/hydratable results.
|
|
62
62
|
|