stackprep-pro 0.2.20__py3-none-any.whl → 0.2.22__py3-none-any.whl

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.
stackprep_pro/server.py CHANGED
@@ -19,10 +19,11 @@ PRESENTATION (every message): always respond as elegant RENDERED markdown blocks
19
19
  dividers, clean tables/lists. NEVER output flat plain text.
20
20
 
21
21
  After the user picks a mode, silently call BOTH list_sessions(mode=<chosen mode>) and
22
- list_study_packs(mode=<chosen mode>). Show the user, as elegant blocks for that mode:
23
- - their saved sessions they can continue (by the name they gave each), and
24
- - their saved study packs they can open (by name).
25
- Then they can continue a session, open a study pack, or start new. Collect inputs and call start_session.
22
+ list_study_packs(mode=<chosen mode>). Then show ONE single "What would you like to do?" block — a single
23
+ numbered table — listing, as rows: each saved session to continue (by its name), each saved study pack to
24
+ open (by its name), and a final "Start a brand-new prep" row. Do NOT show separate "saved sessions" and
25
+ "saved study packs" tables on top of the options table only the one combined options table. The user
26
+ replies with a number. Collect inputs and call start_session.
26
27
  Follow the skill rules returned by start_session exactly — the skill is the source of truth."""
27
28
 
28
29
  # Hardcoded so the very first block is guaranteed, not AI-guessed.
@@ -405,9 +406,14 @@ def list_sessions(mode: str = "") -> str:
405
406
  continue
406
407
  if mode and data.get("mode", "") != mode:
407
408
  continue
408
- # Only show sessions the user explicitly saved (named). Unnamed auto-persisted
409
- # sessions are not surfaced unless the user named them via save_session.
410
- if not data.get("session_name", "").strip():
409
+ # Show a session if EITHER it was explicitly saved (named via save_session)
410
+ # OR it is still in progress (not ended). An unnamed in-progress session on disk
411
+ # means the process ended without a clean exit (a crash / hard-close) — we surface
412
+ # it so progress isn't lost. Sessions the user explicitly discards on exit are
413
+ # deleted by discard_session, so they never reach here.
414
+ named = data.get("session_name", "").strip()
415
+ in_progress = not data.get("ended", False)
416
+ if not (named or in_progress):
411
417
  continue
412
418
  rows.append((f.stem, data))
413
419
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: stackprep-pro
3
- Version: 0.2.20
3
+ Version: 0.2.22
4
4
  Summary: stackprep-pro — interview & certification prep MCP server for any AI client
5
5
  Project-URL: Homepage, https://github.com/youngpada1/stackprep-pro
6
6
  Project-URL: Repository, https://github.com/youngpada1/stackprep-pro
@@ -0,0 +1,8 @@
1
+ stackprep_pro/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
+ stackprep_pro/server.py,sha256=h04Z3oiP4Gi-nZEWfZSQ63747bLVwTHWzWXI8vfva88,20822
3
+ stackprep_pro/skills/certification.md,sha256=XeDicaQyRVC5PeV0eawwkb31SIylOVG7DqAWtIOBlNs,6724
4
+ stackprep_pro/skills/interview.md,sha256=G2debQDqIU-UpIfRbjKwalx9_4dZrr1BwjZi5F2VMRo,6704
5
+ stackprep_pro-0.2.22.dist-info/METADATA,sha256=Bu1rGesWhn-9X8ON8bMY4RCuxr-r9F372YFQrH420ME,8085
6
+ stackprep_pro-0.2.22.dist-info/WHEEL,sha256=mffPy8wBnZQn2VnJUU5jE99KsxaSfiyMHV9Yt0aLVxs,87
7
+ stackprep_pro-0.2.22.dist-info/entry_points.txt,sha256=DGlPLlB4ZCqcNBs8PVMfOR8iklxbucEeIFvaECa_XuA,60
8
+ stackprep_pro-0.2.22.dist-info/RECORD,,
@@ -1,8 +0,0 @@
1
- stackprep_pro/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
- stackprep_pro/server.py,sha256=wFU2Z22rv2xTGepDrcCEcuwhhtxjwVU1ZT5jZ18-r24,20319
3
- stackprep_pro/skills/certification.md,sha256=XeDicaQyRVC5PeV0eawwkb31SIylOVG7DqAWtIOBlNs,6724
4
- stackprep_pro/skills/interview.md,sha256=G2debQDqIU-UpIfRbjKwalx9_4dZrr1BwjZi5F2VMRo,6704
5
- stackprep_pro-0.2.20.dist-info/METADATA,sha256=qmJxnw5GGj9cZKr_WL8TnI2Dj5u9ulEPh0qy905jDjc,8085
6
- stackprep_pro-0.2.20.dist-info/WHEEL,sha256=mffPy8wBnZQn2VnJUU5jE99KsxaSfiyMHV9Yt0aLVxs,87
7
- stackprep_pro-0.2.20.dist-info/entry_points.txt,sha256=DGlPLlB4ZCqcNBs8PVMfOR8iklxbucEeIFvaECa_XuA,60
8
- stackprep_pro-0.2.20.dist-info/RECORD,,