You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- if selectors are valid in core but fetch lane still returns zero items, treat this as request-strategy/runtime mismatch, not selector success.
180
+
- in that case: prefer Browserless-backed verification if available; otherwise mark as downgraded/deferred with evidence.
181
+
161
182
## Runtime Debugging
162
183
163
184
Use the core CLI as the authority for single-config debugging. The quickest loop is:
@@ -170,6 +191,13 @@ Use the core CLI as the authority for single-config debugging. The quickest loop
170
191
171
192
If Browserless works but Faraday does not, keep the config narrow and classify it as Browserless-backed instead of trying to rescue it with brittle tweaks.
172
193
194
+
Additional high-value checks:
195
+
196
+
- Always normalize `channel.url` to the final canonical host/path (`www` vs non-`www`, retired legacy paths).
197
+
- Prefer selectors anchored to content links (`h3 a`, `a[href*='/article/']`) over container-only selectors.
198
+
- Remove optional fields first when quality drops (`categories`, synthetic IDs, weak descriptions) before adding selector complexity.
199
+
- Set `enhance: false` early if enhancement starts pulling nav/hero/market widgets.
200
+
173
201
## Auto-Source
174
202
175
203
Use `auto` for reconnaissance, not as proof that a config is ready.
@@ -211,3 +239,5 @@ When finishing config work, report:
211
239
- dropped or deferred candidates and why
212
240
- commands actually run
213
241
- residual risks, especially selector drift, localization dependence, or Browserless dependence
242
+
- whether Chrome MCP was available during validation
0 commit comments