source_monitor 0.5.1 → 0.5.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ed220a163adcbcf6fd09d057202368352998805f162fa4d5665bb4d45a99acf7
4
- data.tar.gz: 26040bb6b0643b1ef62b8e94f7e2f3232667548dd1960084f539d3e95609aa76
3
+ metadata.gz: 67a9f28e3fe5746779d873407ef1e27c47f2976a1a38ab3df6fe9423fdacfc33
4
+ data.tar.gz: 431294924873906876d4a17e2fcc200d16240724cf151b3cab41baf94422a3b2
5
5
  SHA512:
6
- metadata.gz: a77aa5bf5761a05713ae83afc119a4b8f30f51950816ce3b6a79783573421e880e5d275f39c90f87a5825f7c450cd75c72c83210c617e80c85d329bb2b64e3d8
7
- data.tar.gz: 6c38d77bd2c1cbddf507ba5c18ea432ea15f3027eaf466a43b1d6333caa68d46c161041092c65059188d1407a9c08160859f02727b912d67a5e6426f2492cb02
6
+ metadata.gz: 386b5537905ef8a60b93c74436c747e8d5b2ded2bfff62ba25ab7511027d144a7d200428de3909c63899f863b8de0d73637ce43af6fe8a1b90d0f9a9bda8a3b4
7
+ data.tar.gz: 544f84f2cbf63afc0d2bc833ec3d995cf92f1882307ff8f51a8c2c00b41987db14fb855b4a9799f5e2f2d089822b8ec5b0aea922933c75d4c43728916bea3b57
@@ -210,7 +210,7 @@ After setup, verify with:
210
210
  1. `bin/source_monitor verify` -- Checks Solid Queue and Action Cable
211
211
  2. Visit the mount path in browser -- Dashboard should load
212
212
  3. Create a source and trigger "Fetch Now" -- Validates end-to-end
213
- 4. For subsequent gem updates, use `bin/source_monitor upgrade` -- see the `sm-upgrade` skill
213
+ 4. For subsequent gem updates, use `bin/rails source_monitor:upgrade` -- see the `sm-upgrade` skill
214
214
 
215
215
  Optional system test for host apps using Devise:
216
216
  ```ruby
@@ -28,10 +28,10 @@ Guides AI agents through upgrading SourceMonitor in a host Rails application aft
28
28
 
29
29
  1. **Review CHANGELOG** -- Read `CHANGELOG.md` in the gem source. Identify changes between the current installed version (from `.source_monitor_version` or `Gemfile.lock`) and the target version. Focus on Added, Changed, Fixed, Removed sections. Flag any breaking changes or deprecation notices.
30
30
  2. **Update Gemfile** -- Bump the version constraint in the host app's Gemfile: `gem "source_monitor", "~> X.Y"`. Run `bundle update source_monitor`.
31
- 3. **Run the upgrade command** -- `bin/source_monitor upgrade`. This automatically: detects the version change via `.source_monitor_version` marker, copies new migrations, re-runs the install generator (idempotent), runs the full verification suite.
31
+ 3. **Run the upgrade command** -- `bin/rails source_monitor:upgrade`. This automatically: detects the version change via `.source_monitor_version` marker, copies new migrations, re-runs the install generator (idempotent), runs the full verification suite.
32
32
  4. **Run database migrations** -- `bin/rails db:migrate` if the upgrade command copied new migrations.
33
33
  5. **Handle deprecation warnings** -- If the configure block in the initializer uses deprecated options, Rails logger will show warnings at boot. Read each warning, identify the replacement, update the initializer. See `sm-configure` skill for configuration reference.
34
- 6. **Run verification** -- `bin/source_monitor verify` to confirm all checks pass.
34
+ 6. **Run verification** -- `bin/rails source_monitor:setup:verify` to confirm all checks pass.
35
35
  7. **Restart processes** -- Restart web server and Solid Queue workers to pick up the new version.
36
36
 
37
37
  ## Interpreting Upgrade Results
@@ -77,7 +77,7 @@ Example deprecation message:
77
77
  | File | Purpose |
78
78
  |---|---|
79
79
  | `lib/source_monitor/setup/upgrade_command.rb` | Upgrade orchestrator |
80
- | `lib/source_monitor/setup/cli.rb` | CLI entry point (`bin/source_monitor upgrade`) |
80
+ | `lib/source_monitor/setup/cli.rb` | CLI entry point (Thor, used in development) |
81
81
  | `lib/source_monitor/setup/verification/runner.rb` | Verification runner (4 verifiers) |
82
82
  | `lib/source_monitor/configuration/deprecation_registry.rb` | Deprecation framework |
83
83
  | `CHANGELOG.md` | Version history (Keep a Changelog format) |
@@ -95,8 +95,8 @@ Example deprecation message:
95
95
 
96
96
  - [ ] CHANGELOG reviewed for version range
97
97
  - [ ] Gemfile updated and `bundle update source_monitor` run
98
- - [ ] `bin/source_monitor upgrade` completed successfully
98
+ - [ ] `bin/rails source_monitor:upgrade` completed successfully
99
99
  - [ ] Database migrations applied if needed
100
100
  - [ ] Deprecation warnings addressed in initializer
101
- - [ ] `bin/source_monitor verify` passes all checks
101
+ - [ ] `bin/rails source_monitor:setup:verify` passes all checks
102
102
  - [ ] Web server and workers restarted
@@ -23,7 +23,7 @@ Detailed step-by-step reference for AI agents guiding host app developers throug
23
23
 
24
24
  ## Upgrade Command Internals
25
25
 
26
- How `bin/source_monitor upgrade` works internally:
26
+ How `bin/rails source_monitor:upgrade` works internally:
27
27
 
28
28
  1. Reads `.source_monitor_version` from host app root (nil if first run)
29
29
  2. Compares stored version against `SourceMonitor::VERSION` (current gem version)
@@ -71,7 +71,7 @@ Checks that Action Cable is configured with a production-ready adapter (Solid Ca
71
71
 
72
72
  - Check that `bundle update source_monitor` actually pulled the new version
73
73
  - Verify `Gemfile.lock` shows the expected version: `grep source_monitor Gemfile.lock`
74
- - If the `.source_monitor_version` marker was manually edited, delete it and re-run `bin/source_monitor upgrade`
74
+ - If the `.source_monitor_version` marker was manually edited, delete it and re-run `bin/rails source_monitor:upgrade`
75
75
 
76
76
  ### Migrations fail
77
77
 
@@ -14,7 +14,7 @@ Version-specific migration notes for each major/minor version transition. Agents
14
14
  - Netflix Tech Blog VCR cassette regression test added
15
15
 
16
16
  **Action items:**
17
- 1. Re-run `bin/source_monitor upgrade` (or `bin/rails generate source_monitor:install`) to get Procfile.dev and queue.yml patches
17
+ 1. Re-run `bin/rails source_monitor:upgrade` (or `bin/rails generate source_monitor:install`) to get Procfile.dev and queue.yml patches
18
18
  2. If using Active Storage image downloads, add `config.images.download_to_active_storage = true` to initializer
19
19
  3. If experiencing SSL certificate errors, new `config.http.ssl_ca_file`, `config.http.ssl_ca_path`, and `config.http.ssl_verify` settings are available
20
20
  4. No breaking changes -- all existing configuration remains valid
@@ -32,7 +32,7 @@ Version-specific migration notes for each major/minor version transition. Agents
32
32
 
33
33
  **Action items:**
34
34
  1. If you monkey-patched or referenced internal classes (FeedFetcher internals, Configuration nested classes), check that your references still resolve
35
- 2. Run `bin/source_monitor upgrade` to copy any new migrations
35
+ 2. Run `bin/rails source_monitor:upgrade` to copy any new migrations
36
36
  3. Optionally install skills: `bin/rails source_monitor:skills:install`
37
37
  4. No configuration changes required -- public API unchanged
38
38
 
data/.gitignore CHANGED
@@ -20,3 +20,5 @@
20
20
  .vbw-planning/.session-log.jsonl
21
21
  .vbw-planning/.hook-errors.log
22
22
  .vbw-planning/.claude-md-migrated
23
+ .vbw-planning/.watchdog-pid
24
+ .vbw-planning/.watchdog.log
@@ -2,13 +2,52 @@
2
2
  "effort": "thorough",
3
3
  "autonomy": "standard",
4
4
  "auto_commit": true,
5
+ "planning_tracking": "manual",
6
+ "auto_push": "never",
5
7
  "verification_tier": "standard",
6
8
  "skill_suggestions": true,
7
9
  "auto_install_skills": false,
10
+ "discovery_questions": true,
11
+ "context_compiler": true,
8
12
  "visual_format": "unicode",
9
- "compaction_trigger": 130000,
10
13
  "max_tasks_per_plan": 5,
11
- "agent_teams": true,
14
+ "prefer_teams": "always",
15
+ "branch_per_milestone": false,
16
+ "plain_summary": true,
17
+ "active_profile": "default",
18
+ "custom_profiles": {},
12
19
  "model_profile": "quality",
13
- "model_overrides": {}
20
+ "model_overrides": {},
21
+ "agent_max_turns": {
22
+ "scout": 15,
23
+ "qa": 25,
24
+ "architect": 30,
25
+ "debugger": 80,
26
+ "lead": 50,
27
+ "dev": 75
28
+ },
29
+ "qa_skip_agents": [
30
+ "docs"
31
+ ],
32
+ "v3_delta_context": false,
33
+ "v3_context_cache": false,
34
+ "v3_plan_research_persist": false,
35
+ "v3_metrics": false,
36
+ "v3_contract_lite": false,
37
+ "v3_lock_lite": false,
38
+ "v3_validation_gates": false,
39
+ "v3_smart_routing": false,
40
+ "v3_event_log": false,
41
+ "v3_schema_validation": false,
42
+ "v3_snapshot_resume": false,
43
+ "v3_lease_locks": false,
44
+ "v3_event_recovery": false,
45
+ "v3_monorepo_routing": false,
46
+ "v2_hard_contracts": false,
47
+ "v2_hard_gates": false,
48
+ "v2_typed_protocol": false,
49
+ "v2_role_isolation": false,
50
+ "v2_two_phase_completion": false,
51
+ "v2_token_budgets": false,
52
+ "compaction_trigger": 130000
14
53
  }
data/CHANGELOG.md CHANGED
@@ -15,6 +15,16 @@ All notable changes to this project are documented below. The format follows [Ke
15
15
 
16
16
  - No unreleased changes yet.
17
17
 
18
+ ## [0.5.2] - 2026-02-16
19
+
20
+ ### Added
21
+
22
+ - `source_monitor:upgrade` rake task for host apps to run upgrades via `bin/rails source_monitor:upgrade` instead of the non-distributed `bin/source_monitor` CLI.
23
+
24
+ ### Fixed
25
+
26
+ - PendingMigrationsVerifier false positive when host migrations have `.source_monitor` engine suffix (e.g., `create_source_monitor_sources.source_monitor.rb`).
27
+
18
28
  ## [0.5.1] - 2026-02-13
19
29
 
20
30
  ### Changed
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- source_monitor (0.5.1)
4
+ source_monitor (0.5.2)
5
5
  cssbundling-rails (~> 1.4)
6
6
  faraday (~> 2.9)
7
7
  faraday-follow_redirects (~> 0.4)
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.5.1
1
+ 0.5.2
data/docs/upgrade.md CHANGED
@@ -6,10 +6,10 @@ This guide covers upgrading SourceMonitor to a new gem version in your host Rail
6
6
 
7
7
  1. Review the [CHANGELOG](../CHANGELOG.md) for changes between your current and target versions
8
8
  2. Update your Gemfile version constraint and run `bundle update source_monitor`
9
- 3. Run the upgrade command: `bin/source_monitor upgrade`
9
+ 3. Run the upgrade command: `bin/rails source_monitor:upgrade`
10
10
  4. Apply database migrations if new ones were copied: `bin/rails db:migrate`
11
11
  5. Address any deprecation warnings in your initializer (see Deprecation Handling below)
12
- 6. Run verification: `bin/source_monitor verify`
12
+ 6. Run verification: `bin/rails source_monitor:setup:verify`
13
13
  7. Restart your web server and background workers
14
14
 
15
15
  ## Quick Upgrade (Most Cases)
@@ -19,7 +19,7 @@ This guide covers upgrading SourceMonitor to a new gem version in your host Rail
19
19
  bundle update source_monitor
20
20
 
21
21
  # 2. Run the upgrade command (handles migrations, generator, verification)
22
- bin/source_monitor upgrade
22
+ bin/rails source_monitor:upgrade
23
23
 
24
24
  # 3. Migrate if needed
25
25
  bin/rails db:migrate
@@ -60,7 +60,7 @@ If a removed option raises an error (`SourceMonitor::DeprecatedOptionError`), yo
60
60
  **Upgrade steps:**
61
61
  ```bash
62
62
  bundle update source_monitor
63
- bin/source_monitor upgrade
63
+ bin/rails source_monitor:upgrade
64
64
  bin/rails db:migrate
65
65
  ```
66
66
 
@@ -81,7 +81,7 @@ bin/rails db:migrate
81
81
  **Upgrade steps:**
82
82
  ```bash
83
83
  bundle update source_monitor
84
- bin/source_monitor upgrade
84
+ bin/rails source_monitor:upgrade
85
85
  bin/rails db:migrate
86
86
  ```
87
87
 
@@ -26,7 +26,7 @@ module SourceMonitor
26
26
  if missing.any?
27
27
  warning_result(
28
28
  "#{missing.size} SourceMonitor migration(s) not copied to host: #{missing.join(', ')}",
29
- "Run `bin/source_monitor upgrade` or `bin/rails railties:install:migrations FROM=source_monitor`"
29
+ "Run `bin/rails source_monitor:upgrade` or `bin/rails railties:install:migrations FROM=source_monitor`"
30
30
  )
31
31
  elsif connection.migration_context.needs_migration?
32
32
  warning_result(
@@ -72,7 +72,7 @@ module SourceMonitor
72
72
  end
73
73
 
74
74
  def strip_timestamp(filename)
75
- filename.sub(MIGRATION_TIMESTAMP_PATTERN, "").delete_suffix(".rb")
75
+ filename.sub(MIGRATION_TIMESTAMP_PATTERN, "").delete_suffix(".rb").delete_suffix(".source_monitor")
76
76
  end
77
77
 
78
78
  def ok_result(details)
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module SourceMonitor
4
- VERSION = "0.5.1"
4
+ VERSION = "0.5.2"
5
5
  end
@@ -39,6 +39,18 @@ namespace :source_monitor do
39
39
  end
40
40
  end
41
41
 
42
+ desc "Upgrade SourceMonitor after a gem version change"
43
+ task upgrade: :environment do
44
+ command = SourceMonitor::Setup::UpgradeCommand.new
45
+ summary = command.call
46
+ printer = SourceMonitor::Setup::Verification::Printer.new
47
+ printer.print(summary)
48
+
49
+ unless summary.ok?
50
+ raise "SourceMonitor upgrade completed with issues. See output above for remediation steps."
51
+ end
52
+ end
53
+
42
54
  namespace :skills do
43
55
  desc "Install consumer Claude Code skills for using SourceMonitor"
44
56
  task :install do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: source_monitor
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.1
4
+ version: 0.5.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - dchuk