packet-tracer-skill 0.2.0 → 0.2.2

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.
Files changed (57) hide show
  1. package/CHANGELOG.md +42 -4
  2. package/README.md +237 -88
  3. package/docs/campus-donor-proof.md +103 -0
  4. package/docs/curated-donor-registry.md +26 -0
  5. package/docs/github-launch-ops-0.2.1.md +45 -0
  6. package/docs/github-launch-ops-0.2.2.md +42 -0
  7. package/docs/github-metadata.md +23 -6
  8. package/docs/hero-demo-plan.md +18 -10
  9. package/docs/home-iot-donor-proof.md +64 -0
  10. package/docs/launch-announcement-0.2.1.md +15 -0
  11. package/docs/launch-announcement-0.2.2.md +15 -0
  12. package/docs/packet-tracer-feature-gap-atlas.md +87 -0
  13. package/docs/post-launch-follow-up.md +39 -0
  14. package/docs/publish-preview-roadmap.md +20 -17
  15. package/docs/release-checklist.md +22 -12
  16. package/docs/{release-notes-0.2.0.md → release-notes-0.2.1.md} +7 -6
  17. package/docs/release-notes-0.2.2.md +26 -0
  18. package/docs/runtime-truth.md +31 -0
  19. package/docs/wan-security-donor-proof.md +41 -0
  20. package/docs/wireless-advanced-proof.md +60 -0
  21. package/examples/README.md +13 -10
  22. package/examples/gallery.md +10 -4
  23. package/examples/index.json +3 -3
  24. package/package.json +44 -16
  25. package/references/curated-donor-registry.json +5 -2
  26. package/references/packettracer-feature-atlas.json +133 -0
  27. package/references/scenario-fixture-corpus.json +1 -0
  28. package/scripts/build_examples_index.py +27 -16
  29. package/scripts/coverage_matrix.py +559 -23
  30. package/scripts/feature_atlas.py +229 -0
  31. package/scripts/generate_pkt.py +330 -31
  32. package/scripts/intent_parser.py +278 -7
  33. package/scripts/pkt_editor.py +174 -0
  34. package/scripts/runtime_doctor.py +83 -10
  35. package/scripts/sample_catalog.py +210 -5
  36. package/docs/screenshots/.gitkeep +0 -1
  37. package/docs/screenshots/packet-tracer-topology-cropped.png +0 -0
  38. package/scripts/__pycache__/build_examples_index.cpython-314.pyc +0 -0
  39. package/scripts/__pycache__/build_sample_catalog.cpython-314.pyc +0 -0
  40. package/scripts/__pycache__/coverage_matrix.cpython-314.pyc +0 -0
  41. package/scripts/__pycache__/donor_diagnostics.cpython-314.pyc +0 -0
  42. package/scripts/__pycache__/generate_pkt.cpython-314.pyc +0 -0
  43. package/scripts/__pycache__/install_skill.cpython-314.pyc +0 -0
  44. package/scripts/__pycache__/intent_parser.cpython-314.pyc +0 -0
  45. package/scripts/__pycache__/packet_tracer_env.cpython-314.pyc +0 -0
  46. package/scripts/__pycache__/pkt_builder.cpython-314.pyc +0 -0
  47. package/scripts/__pycache__/pkt_codec.cpython-314.pyc +0 -0
  48. package/scripts/__pycache__/pkt_editor.cpython-314.pyc +0 -0
  49. package/scripts/__pycache__/pkt_transformer.cpython-314.pyc +0 -0
  50. package/scripts/__pycache__/remote_search.cpython-314.pyc +0 -0
  51. package/scripts/__pycache__/runtime_doctor.cpython-314.pyc +0 -0
  52. package/scripts/__pycache__/sample_catalog.cpython-314.pyc +0 -0
  53. package/scripts/__pycache__/sample_selector.cpython-314.pyc +0 -0
  54. package/scripts/__pycache__/twofish_diagnostics.cpython-314.pyc +0 -0
  55. package/scripts/__pycache__/twofish_runtime.cpython-314.pyc +0 -0
  56. package/scripts/__pycache__/workspace_repair.cpython-314.pyc +0 -0
  57. package/scripts/vendor/__pycache__/twofish.cpython-314.pyc +0 -0
@@ -0,0 +1,42 @@
1
+ # GitHub Launch Ops for `v0.2.2`
2
+
3
+ ## Current Status
4
+
5
+ - npm package target is `packet-tracer-skill@0.2.2`
6
+ - release body source is ready: `docs/release-notes-0.2.2.md`
7
+ - launch wording source is ready: `docs/launch-announcement-0.2.2.md`
8
+ - About text and Topics source remain: `docs/github-metadata.md`
9
+ - hero visual remains fixed: `examples/screenshots/complex_campus_master_edit_v4.png`
10
+
11
+ ## Exact GitHub Release Steps
12
+
13
+ 1. Ensure tag `v0.2.2` exists and points to the publish commit.
14
+ 2. Open GitHub Releases for `20hajiyev/packet-tracer-skill`.
15
+ 3. Create a new release from tag `v0.2.2`.
16
+ 4. Use title `v0.2.2`.
17
+ 5. Paste the body from `docs/release-notes-0.2.2.md`.
18
+ 6. Do not upload raw `.pkt` binaries or local bridge artifacts.
19
+ 7. Keep the first visual aligned with `examples/screenshots/complex_campus_master_edit_v4.png`.
20
+
21
+ ## About and Topics
22
+
23
+ Apply the exact text from `docs/github-metadata.md`.
24
+
25
+ Do not rewrite these ad hoc in the UI. The doc is the source of truth.
26
+
27
+ ## Discussions
28
+
29
+ If Discussions are not already enabled, enable them and create these categories:
30
+
31
+ - `Showcase`
32
+ - `Q&A`
33
+ - `Donor Requests`
34
+ - `Capability Roadmap`
35
+
36
+ ## Launch Message Sources
37
+
38
+ Use:
39
+
40
+ - `docs/release-notes-0.2.2.md` for the release body
41
+ - `docs/launch-announcement-0.2.2.md` for the npm/GitHub/social wording
42
+ - `docs/hero-demo-plan.md` for the screenshot caption and demo claim guardrails
@@ -21,13 +21,30 @@ Donor-backed Cisco Packet Tracer 9.x skill for natural-language planning, safe-o
21
21
 
22
22
  Use the complex campus Packet Tracer screenshot as the first public visual until a dedicated hero demo GIF is ready.
23
23
 
24
- Pinned screenshot:
25
-
26
- - `examples/screenshots/complex_campus_master_edit_v4.png`
24
+ Pinned screenshot:
25
+
26
+ - `examples/screenshots/complex_campus_master_edit_v4.png`
27
+
28
+ Pinned caption:
29
+
30
+ - `donor-backed complex campus proof artifact for the 0.2.2 public preview`
31
+
32
+ ## Release Source
33
+
34
+ - release title: `v0.2.2`
35
+ - release body source: `docs/release-notes-0.2.2.md`
36
+ - launch wording source: `docs/launch-announcement-0.2.2.md`
37
+
38
+ ## Discussions Categories
39
+
40
+ - `Showcase`
41
+ - `Q&A`
42
+ - `Donor Requests`
43
+ - `Capability Roadmap`
27
44
 
28
45
  ## Public Message Guardrails
29
46
 
30
47
  - say `donor-backed`, `open-first`, `scenario-aware`, and `Windows-first runtime`
31
- - say `validated with external bridge override` when referring to strict runtime validation
32
- - do not say the repo is self-contained runtime-ready unless doctor semantics change
33
- - keep README, release notes, and GitHub About text aligned with the same wording
48
+ - say `validated with external bridge override` when referring to strict runtime validation
49
+ - do not say the repo is self-contained runtime-ready unless doctor semantics change
50
+ - keep README, release notes, and GitHub About text aligned with the same wording
@@ -2,7 +2,7 @@
2
2
 
3
3
  ## Goal
4
4
 
5
- Prepare one conservative hero demo flow for the `0.2.0` public preview surface without implying self-contained runtime readiness.
5
+ Prepare one conservative hero demo flow for the `0.2.1` public preview surface without implying self-contained runtime readiness.
6
6
 
7
7
  ## Prompt
8
8
 
@@ -22,10 +22,12 @@ python .\scripts\generate_pkt.py --parity-report "6 department campus with route
22
22
  python .\scripts\runtime_doctor.py
23
23
  ```
24
24
 
25
- ## Visual
26
-
27
- - pinned image: `examples/screenshots/complex_campus_master_edit_v4.png`
28
- - reuse the complex campus topology screenshot as the hero visual until a dedicated GIF is produced
25
+ ## Visual
26
+
27
+ - pinned image: `examples/screenshots/complex_campus_master_edit_v4.png`
28
+ - reuse the complex campus topology screenshot as the hero visual until a dedicated GIF is produced
29
+ - alt text: `Donor-backed complex campus Packet Tracer topology with VLAN, management, ACL, and wireless edits`
30
+ - visual label: `Complex Campus hero visual`
29
31
 
30
32
  ## Claims To Make
31
33
 
@@ -35,8 +37,14 @@ python .\scripts\runtime_doctor.py
35
37
  - Windows-first runtime
36
38
  - validated with external bridge override
37
39
 
38
- ## Claims Not To Make
39
-
40
- - do not say the repo is self-contained runtime-ready
41
- - do not claim full synthetic generate for WAN/security coverage
42
- - do not imply unsupported or acceptance-gated mutations are generated anyway
40
+ ## Claims Not To Make
41
+
42
+ - do not say the repo is self-contained runtime-ready
43
+ - do not claim full synthetic generate for WAN/security coverage
44
+ - do not imply unsupported or acceptance-gated mutations are generated anyway
45
+
46
+ ## Launch Caption
47
+
48
+ Use this short caption when pairing the hero image with release notes or announcement text:
49
+
50
+ `Donor-backed, open-first, scenario-aware Packet Tracer workflow with conservative Windows-first runtime truth.`
@@ -0,0 +1,64 @@
1
+ # Home IoT Donor Proof
2
+
3
+ ## Proof Goal
4
+
5
+ Show one honest public proof artifact for the canonical `home_iot` family without claiming broad synthetic smart-home generation.
6
+
7
+ ## Real Donor-Backed Artifacts
8
+
9
+ - registry entry: `home_iot_cli_edit_v1.pkt`
10
+ - proof sources:
11
+ - local inventory from the ignored donor-backed showcase lab
12
+ - checked-in edit roundtrip tests for `iot_registration_server.pkt`, `iot_home_gateway.pkt`, and wireless association donors
13
+ - runtime mode used for the proof: Windows Packet Tracer 9.0 with an external bridge override
14
+
15
+ ## Inventory and Edit Proof
16
+
17
+ Observed Home IoT proof facts:
18
+
19
+ - a Home Gateway donor path exists
20
+ - IoT thing inventory is visible
21
+ - gateway-backed registration state is visible in inventory
22
+ - edit roundtrip preserves:
23
+ - IoT registration to Home Gateway
24
+ - IoT registration to registration server
25
+ - IoT rule enable/disable state
26
+ - donor-backed wireless association
27
+
28
+ ## Donor-Backed Generate Interpretation
29
+
30
+ The current product contract for Home IoT is intentionally narrow:
31
+
32
+ - `iot_registration`, `iot_control`, and `wireless_client_association` are only considered generate-ready when a selected donor exists
33
+ - the selected donor must match `IoT/home gateway` or a compatible `wireless-heavy` shape
34
+ - the prompt must name deterministic targets such as the thing, gateway/server, client, AP/router, and SSID
35
+
36
+ This is why the public wording uses `donor-backed constrained-generate` rather than broad `smart home generate-ready`.
37
+
38
+ ## What This Proves
39
+
40
+ - Home IoT inventory proof exists
41
+ - edit roundtrip proof exists for registration, control, and wireless association
42
+ - donor-backed Home IoT readiness can be raised without guessed output
43
+ - the intended blocker split remains explicit: donor selection vs acceptance vs runtime
44
+
45
+ ## What This Does Not Prove
46
+
47
+ - it does not prove free-form smart-home topology generation is solved
48
+ - it does not prove every prompt mentioning IoT registration is generate-ready
49
+ - it does not remove the need for a selected donor and deterministic target resolution
50
+ - it does not promote WAN/security features ahead of the next wave
51
+
52
+ ## Public Message Guardrail
53
+
54
+ Say:
55
+
56
+ - donor-backed Home IoT proof exists
57
+ - registration/control and wireless association are integrated only inside a constrained donor-backed path
58
+ - explicit target naming still matters
59
+
60
+ Do not say:
61
+
62
+ - all IoT support is solved
63
+ - any smart-home prompt can now generate a correct `.pkt`
64
+ - donor-backed proof makes runtime or selector constraints disappear
@@ -0,0 +1,15 @@
1
+ # `0.2.1` Launch Announcement Draft
2
+
3
+ ## npm Publish Announcement
4
+
5
+ `packet-tracer-skill 0.2.1` is live on npm.
6
+
7
+ Donor-backed Cisco Packet Tracer 9.x skill for natural-language planning, open-first `.pkt` workflows, scenario-aware reporting, parity checks, and Windows-first runtime diagnostics.
8
+
9
+ ## GitHub Release Intro
10
+
11
+ `0.2.1` is a conservative public preview patch release. It keeps the current donor-backed workflow, the scenario-aware decision layer, the runtime doctor contract, and the known working scenario set intact while tightening the published package surface.
12
+
13
+ ## Short Social Summary
14
+
15
+ Published `packet-tracer-skill@0.2.1`: donor-backed, open-first, scenario-aware Packet Tracer workflow with parity reporting, runtime doctor output, and a known working scenario set. Windows-first runtime, validated with external bridge override.
@@ -0,0 +1,15 @@
1
+ # `0.2.2` Launch Announcement Draft
2
+
3
+ ## npm Publish Announcement
4
+
5
+ `packet-tracer-skill 0.2.2` is live on npm.
6
+
7
+ This patch tightens runtime setup documentation and adds an advanced wireless feature wave: WEP and WPA Enterprise/RADIUS are edit-proven for explicit deterministic targets, while WLC, Meraki, cellular, Bluetooth, beamforming, and guest Wi-Fi remain report-only.
8
+
9
+ ## GitHub Release Intro
10
+
11
+ `0.2.2` is a conservative public preview patch release. It keeps the donor-backed, open-first Packet Tracer workflow intact while improving runtime setup clarity and aligning advanced wireless parser, atlas, parity, and proof docs.
12
+
13
+ ## Short Social Summary
14
+
15
+ Published `packet-tracer-skill@0.2.2`: README runtime cleanup, generic Twofish bridge guidance, and advanced wireless atlas/edit-proof support for WEP and WPA Enterprise/RADIUS. Windows-first runtime, validated with external bridge override.
@@ -0,0 +1,87 @@
1
+ # Packet Tracer Feature Gap Atlas
2
+
3
+ This atlas is the public truth source for Packet Tracer 9.0 features that exist in local Cisco samples but are not yet fully productized by this skill.
4
+
5
+ It is intentionally conservative:
6
+
7
+ - `inventory_known` means a Packet Tracer sample or path proves the feature exists.
8
+ - `report_supported` means the skill can recognize and report the feature without claiming mutation support.
9
+ - `edit_proven` requires a roundtrip editor test.
10
+ - `donor_backed_ready` requires selected-donor evidence.
11
+ - `generate_ready` requires acceptance-backed generate behavior.
12
+
13
+ The atlas does not claim that every Packet Tracer feature is generate-ready. It turns missing or under-modelled Packet Tracer features into an auditable backlog before any broad config mutation is opened.
14
+
15
+ ## First Generate Enablement Wave
16
+
17
+ The first promotion wave is `ipv6_routing`. The following subset can move beyond report-only only when explicit router/interface targets and an IPv6/routing donor are selected:
18
+
19
+ - IPv6 interface/SLAAC config
20
+ - DHCPv6 stateful pool binding
21
+ - OSPFv3 interface routing
22
+ - EIGRP IPv6 interface routing
23
+ - RIPng interface routing
24
+ - IPv6 HSRP virtual address
25
+
26
+ IPv6 tunneling, ISATAP, prefix delegation, and AAAA DNS remain report-first until separate donor-backed editor proof exists.
27
+
28
+ ## Second Edit-Proven Wave
29
+
30
+ The second promotion wave is `l2_security_monitoring`. The following subset is edit-proven for explicit commands, but still not broad generate-ready:
31
+
32
+ - DHCP snooping
33
+ - Dynamic ARP Inspection
34
+ - LLDP
35
+ - REP
36
+ - SNMP community
37
+ - NetFlow export
38
+ - SPAN/RSPAN
39
+ - Port security
40
+
41
+ 802.1X/NAC and QoS remain report-first in this wave. Decode-fail Packet Tracer samples can prove that a feature exists by path/catalog evidence, but they do not create edit or generate readiness by themselves.
42
+
43
+ ## Third Edit-Proven Wave
44
+
45
+ The third promotion wave is `wireless_advanced`. This wave deliberately promotes
46
+ only the safest explicit wireless edit subset:
47
+
48
+ - WEP SSID/security mutation
49
+ - WPA Enterprise/RADIUS SSID/security intent
50
+
51
+ These capabilities can report `edit_supported=true` only when the prompt is an
52
+ explicit wireless edit command with a deterministic AP/router/WLC target and
53
+ SSID. They still report `generate_supported=false` and
54
+ `generate_mismatch_reason=supported_in_edit_only`.
55
+
56
+ WLC/controller workflows, Meraki, cellular/5G, Bluetooth, beamforming, and
57
+ guest Wi-Fi remain report-only until separate donor-backed editor proof exists.
58
+
59
+ ## Current Feature Families
60
+
61
+ - `ipv6_routing`: SLAAC, DHCPv6, prefix delegation, AAAA DNS, IPv6 tunneling, ISATAP, OSPFv3, EIGRP IPv6, RIPng, HSRP.
62
+ - `l2_security_monitoring`: DHCP snooping, DAI, 802.1X/NAC, LLDP, REP, SNMP, NetFlow, SPAN/RSPAN, QoS, port security.
63
+ - `wan_security_edge`: ASA ACL/NAT, ASA service policy, clientless VPN, CBAC, ZFW, sniffer, IPSec variants.
64
+ - `wireless_advanced`: WLC, WPA Enterprise/RADIUS, WEP/WPA modes, guest Wi-Fi, beamforming, Meraki, 5G/cellular, Bluetooth.
65
+ - `automation_controller`: Network Controller, Python, JavaScript, Blockly, TCP/UDP test apps, VM/IOx samples.
66
+ - `voice_collaboration`: VoIP, IP phones, Call Manager-style telephony, Linksys voice.
67
+ - `industrial_iot`: MQTT, Real HTTP, Real WebSocket, visual scripting, PTP, Profinet, L2NAT, CyberObserver, industrial firewall.
68
+ - `physical_media_device`: coaxial, cable/DSL, central office, cell tower, power distribution, hot-swappable modules, IOS/license workflows.
69
+
70
+ ## CLI
71
+
72
+ ```powershell
73
+ python .\scripts\generate_pkt.py --feature-gap-report
74
+ ```
75
+
76
+ The report includes:
77
+
78
+ - total Packet Tracer feature groups tracked
79
+ - mapped and unmapped feature counts
80
+ - status counts by support level
81
+ - sample-backed feature counts
82
+ - top missing feature families
83
+ - per-feature evidence from parser, catalog, coverage, editor tests, and Packet Tracer sample paths
84
+
85
+ ## Product Rule
86
+
87
+ Feature atlas support is not the same as generation support. A feature can be visible in `--feature-gap-report` and still remain blocked in `--explain-plan`, `--compare-scenarios`, or `--parity-report` until donor-backed proof exists.
@@ -0,0 +1,39 @@
1
+ # Post-Launch Follow-Up
2
+
3
+ ## Immediate Follow-Up Items
4
+
5
+ - complete GitHub launch ops from `docs/github-launch-ops-0.2.2.md`
6
+ - publish one canonical donor proof artifact: `docs/campus-donor-proof.md`
7
+ - publish one Home IoT donor proof artifact: `docs/home-iot-donor-proof.md`
8
+ - publish one WAN/security donor proof artifact: `docs/wan-security-donor-proof.md`
9
+ - keep README, release notes, launch announcement, and GitHub metadata in sync
10
+
11
+ ## Next Technical Proof Batch
12
+
13
+ - use the canonical `campus` donor proof path first
14
+ - close shorthand campus family fidelity before broadening scenario scope
15
+ - improve selected donor reasoning visibility before adding new capability scope
16
+ - preserve the difference between donor-limited refusal and runtime-blocked refusal
17
+ - make the closest rejected donor class and primary rejection code visible in the public decision surface
18
+ - lift Home IoT only through donor-backed deterministic targets, not broad smart-home synthesis
19
+
20
+ ## Runtime Clarity Improvements
21
+
22
+ - keep `validated with external bridge override` wording consistent
23
+ - make `validate_open ready but strict generate blocked` easier to read in both docs and doctor output
24
+ - treat runtime clarity as a product surface, not a debug detail
25
+ - keep `what_currently_works`, `what_is_blocked`, and `best_next_fix` aligned with `doctor_summary`
26
+
27
+ ## Trigger Conditions for `0.2.2` or the Next Minor
28
+
29
+ - README / npm / GitHub wording drift
30
+ - donor proof uncovers a concrete selector mismatch worth productizing
31
+ - runtime doctor wording becomes ambiguous again
32
+ - examples and public proof artifacts stop matching current behavior
33
+ - selected donor refusal becomes too generic to explain the closest rejected donor class
34
+
35
+ ## Next Integration Wave
36
+
37
+ - after the Home IoT and wireless internal gate closes, keep `wan_security_edge` scoped to report/selection plus donor-backed readiness
38
+ - next constrained edit candidates remain `vpn`, `ipsec`, `gre`, `ppp`, `security_edge`, and `multilayer_switching`
39
+ - do not open that wave until the Home IoT proof and readiness wording are stable
@@ -9,23 +9,26 @@
9
9
  - docs and runtime wording match actual behavior
10
10
  - template fallback assets are checked in and release-surface tests protect them
11
11
 
12
- ## Step B: Public `0.2.x` Publish-Preview
13
-
14
- - `package.json` is versioned at `0.2.0`
15
- - release notes draft is ready: `docs/release-notes-0.2.0.md`
16
- - hero visual is locked to `examples/screenshots/complex_campus_master_edit_v4.png`
17
- - hero demo execution plan is ready: `docs/hero-demo-plan.md`
18
- - GitHub About/Topics text is finalized in `docs/github-metadata.md`
19
- - npm publish checklist is complete and conservative runtime wording is preserved
20
- - final publish batch should only do:
21
- - npm publish
22
- - GitHub release creation
23
- - About/Topics update in GitHub UI
24
- - Discussions opening and release announcement
12
+ ## Step B: Public `0.2.x` Publish-Preview
13
+
14
+ - `package.json` is versioned at `0.2.2`
15
+ - npm publish target is `packet-tracer-skill@0.2.2`
16
+ - release notes source is ready: `docs/release-notes-0.2.2.md`
17
+ - hero visual is locked to `examples/screenshots/complex_campus_master_edit_v4.png`
18
+ - hero demo execution plan is ready: `docs/hero-demo-plan.md`
19
+ - GitHub About/Topics text is finalized in `docs/github-metadata.md`
20
+ - launch ops runbook is ready: `docs/github-launch-ops-0.2.2.md`
21
+ - npm publish checklist is complete and conservative runtime wording is preserved
22
+ - remaining public launch ops are:
23
+ - GitHub release creation
24
+ - About/Topics update in GitHub UI
25
+ - Discussions opening
26
+ - release announcement application
25
27
 
26
28
  ## Step C: `1.0.0` Preparation
27
29
 
28
- - at least one populated curated donor path is actively used in practice
29
- - runtime messaging remains conservative and stable
30
- - one richer example family or improved `wan_security_edge` reporting is added
31
- - publish-preview feedback is folded back into docs and trust surface
30
+ - at least one populated curated donor path is publicly proven in practice
31
+ - runtime messaging remains conservative and stable
32
+ - one richer example family or improved `wan_security_edge` reporting/proof is added
33
+ - publish-preview feedback is folded back into docs and trust surface
34
+ - post-launch follow-up is tracked in `docs/post-launch-follow-up.md`
@@ -1,6 +1,6 @@
1
1
  # Release Checklist
2
2
 
3
- Target release surface: `0.2.0` conservative public preview prep.
3
+ Target release surface: `0.2.2` conservative public preview.
4
4
 
5
5
  ## Product Contract
6
6
 
@@ -32,20 +32,24 @@ python .\scripts\runtime_doctor.py
32
32
  - raw `.pkt` binaries are not committed
33
33
  - examples index and gallery were rebuilt
34
34
  - screenshots are intentional and non-sensitive
35
- - changelog entry is updated for `0.2.0`
36
- - release notes draft exists: `docs/release-notes-0.2.0.md`
37
- - hero demo plan exists: `docs/hero-demo-plan.md`
38
- - hero visual is selected: `examples/screenshots/complex_campus_master_edit_v4.png`
39
- - runtime truth docs match current `runtime_grade` and `bridge_resolution` semantics
40
- - curated donor registry entries are reviewed for promotion status and provenance
35
+ - changelog entry is updated for `0.2.2`
36
+ - release notes source exists: `docs/release-notes-0.2.2.md`
37
+ - hero demo plan exists: `docs/hero-demo-plan.md`
38
+ - GitHub launch ops runbook exists: `docs/github-launch-ops-0.2.2.md`
39
+ - canonical donor proof exists: `docs/campus-donor-proof.md`
40
+ - hero visual is selected: `examples/screenshots/complex_campus_master_edit_v4.png`
41
+ - runtime truth docs match current `runtime_grade` and `bridge_resolution` semantics
42
+ - curated donor registry entries are reviewed for promotion status and provenance
41
43
 
42
44
  ## GitHub Surface
43
45
 
44
46
  - CI workflow is green
45
47
  - issue templates are present
46
48
  - contributing and security docs exist
47
- - citation metadata exists
48
- - About/Topics are ready to be updated in GitHub UI
49
+ - citation metadata exists
50
+ - About/Topics are ready to be updated in GitHub UI
51
+ - release body source is ready for direct paste into GitHub Releases
52
+ - Discussions categories are decision-complete in docs
49
53
 
50
54
  ## Publish Gate
51
55
 
@@ -55,6 +59,12 @@ Only publish when:
55
59
  - README renders cleanly
56
60
  - `package.json` version is final for the publish-preview batch
57
61
  - doctor wording matches current runtime reality
58
- - no accidental local paths leaked into tracked files
59
- - GitHub metadata doc is final and matches README wording
60
- - hero visual and release notes are ready for direct reuse
62
+ - no accidental local paths leaked into tracked files
63
+ - GitHub metadata doc is final and matches README wording
64
+ - hero visual and release notes are ready for direct reuse
65
+
66
+ ## Post-Publish Follow-Up
67
+
68
+ - apply GitHub launch ops if they were not automated
69
+ - publish one canonical donor proof note
70
+ - use `docs/post-launch-follow-up.md` as the source for the next patch trigger conditions
@@ -1,8 +1,8 @@
1
- # `packet-tracer-skill` `0.2.0` Release Notes Draft
1
+ # `packet-tracer-skill` `0.2.1` Release Notes Source
2
2
 
3
3
  ## Summary
4
4
 
5
- `0.2.0` is a conservative public preview prep release for `packet-tracer-skill`. It stabilizes the public release surface around donor-backed planning, open-first generation rules, scenario-aware reporting, and Windows-first runtime truth.
5
+ `0.2.1` is a conservative public preview patch release for `packet-tracer-skill`. The npm package is already live, and this file is the source text for the GitHub release body.
6
6
 
7
7
  ## Highlights
8
8
 
@@ -14,12 +14,13 @@
14
14
 
15
15
  ## Runtime Notes
16
16
 
17
- - real `.pkt` runtime remains Windows-first
17
+ - real `.pkt` runtime remains Windows-first runtime
18
18
  - strict validation is currently performed with an external bridge override when repo-local bridge assets are not bundled
19
19
  - public docs intentionally preserve the distinction between repo-local readiness and external bridge fallback
20
20
 
21
21
  ## Public Preview Intent
22
22
 
23
- - this release prepares the repo for npm publish and GitHub release
24
- - it does not change the product contract to imply `1.0.0` stability
25
- - publish should happen only after the short follow-up batch that applies the prepared metadata and release steps
23
+ - `packet-tracer-skill@0.2.1` is already published on npm
24
+ - GitHub release, About/Topics application, and Discussions setup still follow the prepared manual launch ops flow
25
+ - it does not change the product contract to imply `1.0.0` stability
26
+ - the next public-facing technical step is a canonical campus donor proof artifact, not broader synthetic scope
@@ -0,0 +1,26 @@
1
+ # `packet-tracer-skill` `0.2.2` Release Notes Source
2
+
3
+ ## Summary
4
+
5
+ `0.2.2` is a conservative patch release for the public preview line. It publishes the README runtime cleanup and the advanced wireless feature wave without changing the core safety posture.
6
+
7
+ ## Highlights
8
+
9
+ - README runtime instructions now use generic Twofish bridge examples instead of a user-specific `.codex` path as the default
10
+ - `PKT_TWOFISH_LIBRARY` and `PKT_TWOFISH_SEARCH_ROOTS` setup paths are documented separately
11
+ - advanced wireless prompts classify into the `wireless_advanced` family
12
+ - WEP and WPA Enterprise/RADIUS are represented as edit-proven only for explicit deterministic edit targets
13
+ - WLC, Meraki, cellular, Bluetooth, beamforming, and guest Wi-Fi remain report-only unless future donor-backed edit proof is added
14
+ - feature atlas and release-surface tests protect the conservative support claims
15
+
16
+ ## Runtime Notes
17
+
18
+ - real `.pkt` runtime remains Windows-first runtime
19
+ - strict validation is currently performed with an external bridge override when repo-local bridge assets are not bundled
20
+ - public docs intentionally preserve the distinction between repo-local readiness and external bridge fallback
21
+
22
+ ## Public Preview Intent
23
+
24
+ - `packet-tracer-skill@0.2.2` is the patch release for README cleanup and advanced wireless report/edit truth
25
+ - this release does not claim `generate_ready` support for broad advanced wireless controller, cellular, Bluetooth, or Meraki scenarios
26
+ - unsupported and acceptance-gated mutations still refuse instead of guessing
@@ -18,6 +18,35 @@ That distinction is part of the public product contract.
18
18
  - `blocked`
19
19
  Required donor, bridge, or Packet Tracer runtime pieces are missing.
20
20
 
21
+ ## How To Read `--doctor`
22
+
23
+ - if `runtime_grade=ready`, strict decode/edit/generate and `validate_open` are available from the current checkout
24
+ - if `runtime_grade=partially_ready`, at least one operation still works, but the product contract is not fully satisfied
25
+ - if `runtime_grade=blocked`, no critical runtime path is ready enough to claim strict `.pkt` support
26
+
27
+ High-signal fields:
28
+
29
+ - `what_currently_works`
30
+ Short sentence for the operations that are usable right now.
31
+ - `what_is_blocked`
32
+ Short sentence for the operations that are still blocked.
33
+ - `why_it_is_blocked`
34
+ Product-facing reason for the current blocker set.
35
+ - `best_next_fix`
36
+ The single next fix that should be done first.
37
+
38
+ High-signal mixed case:
39
+
40
+ - `validate_open` can be `ready` while `inventory`, `decode`, `edit`, and `generate` are blocked
41
+ - this means Packet Tracer is installed, but the donor and/or bridge path is still not sufficient for strict `.pkt` work
42
+ - in that state, `best_next_fix` should point at donor or bridge remediation before anything else
43
+
44
+ Another mixed case:
45
+
46
+ - all listed operations can be operationally ready while `bridge_resolution=external_env`
47
+ - that still means the checkout is only partially ready as a packaged repo surface
48
+ - docs should continue saying `validated with external bridge override` rather than implying repo-local readiness
49
+
21
50
  ## Bridge Resolution
22
51
 
23
52
  - `repo_local`
@@ -47,3 +76,5 @@ If tests pass only with an external bridge:
47
76
  - do not say "runtime ready" without qualification
48
77
  - do say "validated with external bridge override"
49
78
  - do preserve the difference between repo-local readiness and external fallback
79
+ - do say when `validate_open` is ready but strict decode/edit/generate are still blocked
80
+ - do keep `what_currently_works`, `what_is_blocked`, and `best_next_fix` aligned with `doctor_summary`
@@ -0,0 +1,41 @@
1
+ # WAN/Security Edge Donor Proof
2
+
3
+ ## Proof Goal
4
+ This proof records the current `wan_security_edge` truth after the Home IoT internal gate. It is a report/selection and donor-backed readiness proof, not a broad synthetic WAN/security generator claim.
5
+
6
+ ## Current Inventory And Report Proof
7
+ - The fixture prompt `wan security edge, multilayer switch, cloud, firewall/ASA, GRE, PPP, site-to-site VPN, IPsec, ACL, NAT` maps to `wan_security_edge`.
8
+ - The planner recognizes `vpn`, `ipsec`, `gre`, `ppp`, `multilayer_switching`, and `security_edge` as the expected capability family.
9
+ - Static Packet Tracer samples with VPN/IPSec/GRE/PPP, ASA/security, WAN/cloud, and multilayer switch evidence are treated as `WAN/security edge` donors.
10
+ - Capability parity remains conservative when no selected donor is available: the planner reports donor-limited readiness instead of guessing a final `.pkt`.
11
+
12
+ ## Donor-Backed Readiness Interpretation
13
+ WAN/security readiness can only rise when a selected donor is already aligned with `WAN/security edge` and contains the requested capability evidence plus the required runtime feature:
14
+
15
+ - `vpn`, `ipsec`, `gre`: tunnel-capable donor evidence
16
+ - `ppp`: WAN/PPP donor evidence
17
+ - `security_edge`: ASA/security donor evidence
18
+ - `multilayer_switching`: multilayer switch donor evidence
19
+
20
+ The prompt must explicitly request WAN/security intent, such as VPN, IPsec, GRE, PPP, ASA/firewall, cloud, multilayer, or site-to-site wording.
21
+
22
+ ## What This Proves
23
+ - WAN/security prompts are family-correct and do not drift into `service_heavy`.
24
+ - Packet Tracer sample inventory can identify WAN/security donor candidates.
25
+ - Selected-donor readiness can be represented without changing the public JSON contract.
26
+ - Refusal and remediation now point toward reusable ASA/cloud/serial/tunnel donor skeletons.
27
+
28
+ ## What This Does Not Prove
29
+ - It does not claim full synthetic VPN/IPSec/GRE/PPP configuration generation.
30
+ - It does not claim that every ASA/firewall or multilayer switch feature is editable.
31
+ - It does not allow `reference_only` donors as final apply donors.
32
+ - It does not change the `single-donor` final `.pkt` apply rule.
33
+
34
+ ## Next Constrained Edit Candidates
35
+ - GRE tunnel parameter mutation on an existing routed donor.
36
+ - PPP/CHAP/PAP mutation on an existing serial or PPPoE donor.
37
+ - IPSec profile/key mutation on an existing site-to-site donor.
38
+ - ASA ACL/NAT mutation on an existing security-edge donor.
39
+ - SVI/routed-port mutation on an existing multilayer switch donor.
40
+
41
+ These candidates need separate roundtrip proof before they become release claims.
@@ -0,0 +1,60 @@
1
+ # Advanced Wireless Proof
2
+
3
+ This proof records the current Packet Tracer 9.0 advanced wireless boundary.
4
+ It is intentionally narrower than a generic WLC or enterprise Wi-Fi generation
5
+ claim.
6
+
7
+ ## Current Proof
8
+
9
+ The feature atlas recognizes advanced wireless sample families and prompt
10
+ signals for:
11
+
12
+ - `wlc`
13
+ - `wpa_enterprise`
14
+ - `wep`
15
+ - `guest_wifi`
16
+ - `beamforming`
17
+ - `meraki`
18
+ - `cellular_5g`
19
+ - `bluetooth`
20
+
21
+ The edit-proven subset is limited to explicit wireless SSID/security mutation
22
+ where the target device and SSID are deterministic:
23
+
24
+ ```powershell
25
+ python .\scripts\generate_pkt.py --parity-report "set AP1 ssid LEGACY security wep passphrase abc12345 channel 6"
26
+ python .\scripts\generate_pkt.py --parity-report "set WLC1 ssid CORP security wpa-enterprise radius 192.168.1.10 secret radius123 channel 11"
27
+ ```
28
+
29
+ Expected product interpretation:
30
+
31
+ - `wep` can report `edit_supported=true`.
32
+ - `wpa_enterprise` can report `edit_supported=true`.
33
+ - Both remain `generate_supported=false`.
34
+ - The deterministic mismatch reason is `supported_in_edit_only`.
35
+
36
+ ## What This Proves
37
+
38
+ - The parser can classify advanced wireless prompts without drifting into
39
+ `service_heavy`.
40
+ - WEP and WPA Enterprise/RADIUS can be represented as explicit edit intent.
41
+ - The atlas can promote a narrow advanced-wireless subset to `edit_proven`.
42
+ - WLC, Meraki, cellular, Bluetooth, beamforming, and guest Wi-Fi stay visible
43
+ as report-level Packet Tracer features.
44
+
45
+ ## What This Does Not Prove
46
+
47
+ - It does not prove broad WLC/controller configuration generation.
48
+ - It does not prove cellular, Bluetooth, Meraki, beamforming, or guest Wi-Fi edit
49
+ mutations.
50
+ - It does not prove full WPA Enterprise AAA/RADIUS topology construction.
51
+ - It does not make any advanced wireless feature `generate_ready`.
52
+
53
+ ## Next Safe Actions
54
+
55
+ - Add donor-backed inventory proof for WLC and Meraki samples before any edit
56
+ promotion.
57
+ - Keep cellular and Bluetooth in report mode until target resolution and device
58
+ runtime behavior are deterministic.
59
+ - Promote only one feature at a time from report-only to edit-proven, then to
60
+ donor-backed readiness after acceptance evidence exists.