the signals and their derived score are provisional and subject to change.
validate manually before sharing.
26eb46c51695e021d7e5ac0cddfc01b0435d8f7726eb46c516951 week agonoreply@anthropic.com9b6e0f1373fc1 week agonoreply@anthropic.comb27138787b361 week agonoreply@anthropic.comc4099215bfe01 week agonoreply@anthropic.com09f5758b4ade1 week agonoreply@anthropic.comd7bb2b15c2481 week agonoreply@anthropic.comd085527ce7261 week agonoreply@anthropic.com52d5634e93551 week agonoreply@anthropic.comc05cbefc3de41 week agonoreply@anthropic.comdfabbb9187971 week agonoreply@anthropic.com898d49fd111f1 week agonoreply@anthropic.coma586bc4f91d81 week agonoreply@anthropic.com2179ed54823f1 week agonoreply@anthropic.comf76f931d35351 week agonoreply@anthropic.com781481a179c41 week agonoreply@anthropic.com46e3c44122a91 week agonoreply@anthropic.come29031ccfbab1 week agonoreply@anthropic.comfa4ba4ce47db1 week agonoreply@anthropic.comebd8a74e38101 week agonoreply@anthropic.com9fb45f2cb0171 week agonoreply@anthropic.com3f23052add971 week agonoreply@anthropic.coma644f732e6451 week agonoreply@anthropic.com8fbe01841c3a1 week agonoreply@anthropic.comf6bd5d3345711 week agonoreply@anthropic.come83dfa10cd861 week agonoreply@anthropic.comc4d5e3dc0fdd1 week agonoreply@anthropic.com0ad51afe48b41 week agonoreply@anthropic.comb4f328b772841 week agonoreply@anthropic.com3196196b4e721 week agonoreply@anthropic.com69480881c07b1 week agonoreply@anthropic.comd74c73a4053e1 week agonoreply@anthropic.com4edabc3ceed31 week agonoreply@anthropic.comdc10798196391 week agonoreply@anthropic.come39793954bdc1 week agonoreply@anthropic.com1b159408dfa51 week agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>2b7d5fb1235b1 week agonoreply@anthropic.com18ed11ccb76d1 week agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>3c5802d86b631 week agonoreply@anthropic.comc11aac0334441 week agonoreply@anthropic.com73fd1777b2361 week agonoreply@anthropic.come8ddd19c167d1 week agonoreply@anthropic.com6b2e0d685f541 week agonoreply@anthropic.com9856d5444dfd1 week agonoreply@anthropic.com1399d47893721 week agonoreply@anthropic.com332976149d3a1 week agonoreply@anthropic.com4dc26d2c56d51 week agonoreply@anthropic.comc33738ce7c231 week agonoreply@anthropic.com55c9d042f6f91 week agonoreply@anthropic.com272121ba98081 week agonoreply@anthropic.com55394e4aedba1 week agonoreply@anthropic.comb40fa864054b1 week agonoreply@anthropic.com6bc0e09683601 week agonoreply@anthropic.com514efbd359ce1 week agonoreply@anthropic.comd83c3d2b74c01 week agonoreply@anthropic.com1042ac46911d1 week agonoreply@anthropic.com1a5b775b09d11 week agonoreply@anthropic.com8640c590b6011 week agonoreply@anthropic.com254e4ad31fc01 week agonoreply@anthropic.comebeb41287f391 week agoCo-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>8c46ce59c0871 week agonoreply@anthropic.com26988162e1f81 week agonoreply@anthropic.com---
name: sailfish-packaging
description: Use when working on how Harpoon packages itself or installs, updates, removes or inspects RPMs on SailfishOS. Covers RPM spec files, privileges.d, sailjail .desktop sections, PackageKit D-Bus calls, the installationhandler fallback, arch detection, EVR/vendor checks, systemd user timers and Nemo notifications.
---
# SailfishOS packaging and installation for Harpoon
Background research: `docs/research/03-sailfishos-installation.md`. Design: `docs/architecture.md`.
---
name: sailfish-ui-design
description: >
How a Sailfish OS app should look and behave — the platform's gesture-driven interaction
model, its navigation structure, ambience-based theming, and the standards a finished UI is
reviewed against. Use when: (1) designing or laying out a Sailfish screen, page or app
before or while writing QML, (2) deciding between a page, a dialog and an attached page, or
between a pulley menu, a context menu and a cover action, (3) porting an app from Android or
i---
name: sailfish-app-development
description: >
Write, build and package applications for Sailfish OS with Silica QML, qmake and the sfdk
command line tool. Use when: (1) writing or reviewing QML for a Sailfish app — pages, covers,
pulley menus, list views, dialogs, (2) working in a project with a harbour- prefix, a
.desktop file, an rpm/*.spec or CONFIG += sailfishapp, (3) running sfdk to init, build,
deploy, check or debug, (4) exposing C++ types to QML on Sailfish or setting up
translatio---
name: port-obtainx-source
description: Use when adding or changing a release source in Harpoon (GitHub, Codeberg/Forgejo/Gitea, GitLab, SourceHut, SourceForge, Jenkins, HTML, direct link, rpm-md repo), or when porting logic from ObtainX/Obtainium's lib/app_sources/*.dart to Harpoon's C++ core.
---
# Porting a release source from ObtainX
Upstream reference: <https://github.com/bikram-agarwal/ObtainX>, files `lib/app_sources/*.dart`
and `lib/providers/source_provider.dart`.
Research summary for every s---
name: jolla-store-rules-check
description: >
The rules a Sailfish OS app must pass to get into the Jolla Store (submitted through
Harbour), and how to check an app against them before submitting. Use when: (1) preparing a
Sailfish app for Harbour or the Jolla Store, (2) choosing a QML import, a shared library or
a Sailjail permission and needing to know whether it is allowed, (3) `sfdk check` or the RPM
validator reports an error, (4) naming a Sailfish package, its binary, its .desktop file or# Working on Harpoon
- Work on `main` only: commit and push to `main`. Do not create other branches or pull
requests unless asked.
- Releases are made by pushing a version tag (see docs/packaging.md); the maintainer pushes
tags.
- The phone runs Qt 5.6: use only Qt 5.6 APIs, ES5 QML and `onFoo:` handlers in Connections.
- Before pushing: build with `-Wall -Wextra -Werror` and run `ctest`.
none