session: performs no topic resolution - writes session and draft files for topic IDs that do not exist
Maintainers usually reply within 1 day
A pull request for this has already been merged.
- #422 by @Kuldeep2822k — merged
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 72/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- nodejs, typescript
- Domain
- cli
Research direction
Start with resolveSessionTopic() in src/cli/session.ts (around lines 41-48), which returns the trimmed argument without checking the vault. Read how review and assess resolve topics and reuse that lookup, so an unknown ID fails with exit 2 and lists candidates. Reproduce with session start --topic T-does-not-exist-999 and review T-does-not-exist-999 3. Done when the session commands reject the phantom ID without writing files and a valid topic still works.
Written by the indexing model from the issue text.
Description
Summary
session start/draft/end accept any non-empty string as a topic. review rejects the identical string. A learner can build a full session history against a topic that does not exist.
Repro
Vault with one adopted note. T-does-not-exist-999 is not a topic anywhere:
| command | exit | output |
|---|---|---|
session start --topic T-does-not-exist-999 |
0 | === PALEE Session Started === |
session draft --topic T-does-not-exist-999 |
0 | ✓ Draft checkpoint created: DRAFT-S-5c24f0ce |
session end |
0 | ✓ Session recorded: S-20261009T224403-67f8 |
review T-does-not-exist-999 3 |
2 | Error: No topic found matching "T-does-not-exist-999" |
Real files were written under .palee\sessions\ for the phantom ID.
Expected
session resolves the topic against the vault, the way review/assess do, and fails closed at exit 2 with the candidate list.
Where
src/cli/session.ts:41-48 — resolveSessionTopic() returns the trimmed argument verbatim whenever it is non-empty and not (none). It never consults the vault; the vault lookup below it only runs when no explicit topic was passed.
Environment
- palee 0.6.0, local build from
mainat02dacd0(installed aspalee-test; reproduce withpalee) - Node v24.19.0, Windows 11 x64, Git Bash
- Vault: MIT-licensed Microsoft/OSSU curriculum markdown, 21-187 notes per vault
- Every command below was run for real; exit codes captured by command substitution (never
$?after a pipe)
- Dominant language
- TypeScript
- Stars
- 1
- Forks
- 0
- Avg merge
- 23h 24m
- Merged PRs (30d)
- 142
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- No contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from Kuldeep2822k/cli
-
core priority: medium tests
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
Kuldeep2822k/cli#484 ·
Maintainers usually reply within 1 day
-
AI bug priority: medium
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
Kuldeep2822k/cli#482 ·
Maintainers usually reply within 1 day
-
Piped/non-TTY output silently forces JSON for human-facing commandsPossibly taken @Kuldeep2822k claimed this 2 days ago. Opencore documentation priority: low
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
Kuldeep2822k/cli#357 ·
Maintainers usually reply within 1 day
-
bug core priority: low
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Kuldeep2822k/cli#344 · 1 comment ·
Maintainers usually reply within 1 day
-
bug core priority: low
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
Kuldeep2822k/cli#343 · 1 comment ·
Maintainers usually reply within 1 day
All issues in Kuldeep2822k/cli
Similar issues
-
community first-timers-only good first issue hacktoberfest help wanted low hanging fruit up-for-grabs
Difficulty 1/5 Under an hour Newbie friendliness 90/100
lingdojo/kana-dojo#32663 · 1 comment · 5 reactions ·
Maintainers usually reply within 1 day
-
Admin: Title Separator field can't be cleared (input falls back to "|")Possibly taken @emdashbot claimed this today. Openbot:bug bot:in-review
Difficulty 2/5 1-3 hours Newbie friendliness 80/100
emdash-cms/emdash#4236 · 3 comments ·
Maintainers usually reply within 1 day
-
PHP workflow streaming requests buffer the full SSE responsePossibly taken @Winoren claimed this today. Openreview: medium
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
langgenius/dify#44270 · 1 comment · 1 reaction ·
Maintainers usually reply within 1 day
-
area:holodeck review-finding
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
hyperdrive-technology/holodeck#142 ·
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 90/100
code-yeongyu/senpi#3573 ·
Maintainers usually reply within 1 day