Faits :
A.
Le 28 décembre 2012, le Conseil municipal de Bagnes a accordé à A._ l'autorisation de construire deux chalets d'habitation avec forages géothermiques sur la parcelle n° 3111 située à Verbier au lieu-dit "La Cot", en zone touristique de faible densité T4. Les deux constructions, d'une conception similaire, ont une surface au sol d'environ 98 m2 et comportent trois niveaux d'habitation. Le rez inférieur compte trois chambres avec douche ou salle de bain; le rez supérieur est occupé par une cuisine-séjour de 76 m2 (respectivement 57 m3) avec un local technique et un sauna - réaffecté par la suite en cave; l'étage comprend deux chambres avec douches; un garage couvert est aménagé sur le même niveau. Dans son autorisation de construire, le Conseil municipal a notamment écarté l'opposition formée par Helvetia Nostra, la déclarant irrecevable, subsidiairement mal fondée.
Par décision du 27 janvier 2016, le Conseil d'Etat du canton du Valais a rejeté le recours formé par Helvetia Nostra, se fondant notamment sur un avenant délivré par le Conseil municipal prévoyant l'utilisation des logements exclusivement aux fins de résidences principales, avec l'inscription d'une mention correspondante au Registre foncier.
B.
Par arrêt du 13 janvier 2017, la Cour de droit public du Tribunal cantonal valaisan a rejeté le recours formé par Helvetia Nostra. Les chalets projetés, dans un secteur déjà largement construit, à 4 minutes en voiture du centre de la station, étaient accessibles toute l'année. Leur typologie était adaptée à une résidence principale. Entre janvier 2013 et début 2016, la population résidente de Verbier avait légèrement baissé, de sorte que la demande en résidences principales était relativement modeste. Sur 45 autorisations de construire (soit 79 logements) qui avaient été délivrées pour des résidences principales, 8 logements étaient occupés en résidence principale, 13 étaient en attente (recours avec effet suspensif) et 9 en cours de réalisation; pour les 49 autres, les travaux n'avaient pas commencé. La demande était donc réelle et pouvait être estimée à une bonne dizaine par année. L'offre de logements figurant sur Internet ne se rapportait pas à des biens du même genre. Un abus de droit ne pouvait donc être retenu.
C.
Agissant par la voie du recours en matière de droit public, Helvetia Nostra demande au Tribunal fédéral d'annuler l'arrêt cantonal et l'autorisation de construire et de renvoyer la cause à la cour cantonale pour nouvelle décision sur les frais et dépens.
La cour cantonale et le Conseil d'Etat ont renoncé à se déterminer. La commune de Bagnes se réfère à l'arrêt attaqué et conclut au rejet du recours. A._ conclut au rejet du recours et à la confirmation de l'arrêt attaqué. L'Office fédéral du développement territorial estime que les considérants de l'arrêt attaqué ne permettent pas d'établir l'existence d'une demande de résidences principales, de sorte qu'il renonce à prendre position. La commune de Bagnes appuie les considérations de l'intimée. La recourante a déposé de nouvelles observations le 15 août 2017, qui ont été communiquées aux autres parties à titre d'information.
Considérant en droit :
1.
Dirigé contre une décision finale (art. 90 LTF) prise en dernière instance cantonale (art. 86 al. 1 let. d LTF) dans une cause de droit public (art. 82 let. a LTF), le recours est en principe recevable, aucune des exceptions prévues à l'art. 83 LTF n'étant réalisée. Le recours a été déposé dans le délai prescrit (art. 100 al. 1 LTF) et la qualité pour agir de la recourante (art. 89 al. 1 LTF) n'est pas contestable (ATF 139 II 271).
2.
La recourante estime que sur la base des données recueillies en instance cantonale concernant la population résidente et le nombre de permis de construire accordés, on constaterait un déséquilibre évident entre l'offre et la demande de résidences principales. Du mois de janvier 2013 au début 2016, on compterait 44 résidents à l'année en moins dans la station de Verbier, et il existerait actuellement 58 logements neufs à disposition. Le risque d'un recours accru à l'art. 14 LRS serait ainsi élevé, ce qui viderait de son sens l'art. 75b Cst. Le fait que l'on ne trouve qu'un logement comparable à ceux qui sont projetés (6 pièces neufs) ne permettrait pas d'admettre l'existence d'une demande. La recourante dénonce le laxisme dont ferait preuve la commune dans l'octroi des permis de construire. Elle relève que les salles de sauna-fitness ont été supprimées et estime que la nouvelle affectation des locaux en caves ne serait pas crédible. L'intimée - soutenue par la commune - explique qu'elle a dans un premier temps envisagé de créer des résidences secondaires pour ses enfants sur la parcelle qui appartient à sa famille depuis 1947; après l'adoption de la lex Weber, elle a entrepris de vendre sur plans des résidences principales, alors que l'art. 14 LRS n'existait pas encore. Elle estime que les données accessibles sur Internet ne seraient pas fiables et qu'il n'existerait aucune offre pour des chalets de sept pièces d'une valeur d'environ 1,9 million de francs. Elle relève encore que sur les huit logements réalisés récemment, tous seraient occupés, et que la population de la commune de Bagnes aurait augmenté ces dernières années.
2.1. L'art. 75b Cst. limite les résidences secondaires au maximum de 20 % du parc des logements et de la surface brute au sol habitable de chaque commune. Cette disposition ne vise pas seulement les constructions qui, selon les déclarations des intéressés, seront utilisées comme résidences secondaires, mais également celles qui pourraient être utilisées comme résidences secondaires (ATF 142 II 206 consid. 2.1 p. 208 et les références citées). L'art. 7 al. 1 let. a LRS prévoit ainsi que dans les communes qui comptent une proportion de résidences secondaires supérieure à 20 %, de nouveaux logements ne peuvent être autorisés qu'à la condition d'être utilisés comme résidence principale ou comme logement assimilé à une résidence principale au sens de l'art. 2, al. 3. L'art. 3 al. 1 ORSec prévoit que la servitude à mentionner au registre foncier en vertu de la LRS pour les logements soumis à une restriction d'utilisation doit avoir la teneur suivante: "résidence principale ou logement assimilé à une résidence principale au sens de l'art. 7, al. 1, let. a, LRS". L'art. 14 LRS prévoit en outre que l'obligation d'affectation en résidence principale peut être suspendue pendant une durée déterminée et renouvelable lorsque la preuve est faite que le logement a été vainement proposé sur le marché à un prix raisonnable (al. 1 let. b).
2.2. Face à l'interdiction générale de dépasser le seuil de 20 % de résidences secondaires dans une commune, on ne peut exclure que certains constructeurs soient tentés de contourner la réglementation en déclarant faussement qu'ils entendent utiliser leur construction en tant que résidence principale ou l'affecter en résidence touristique mise à disposition du public. Un abus de droit manifeste ne saurait toutefois être admis que s'il apparaît d'emblée que le projet ne pourra pas être utilisé comme annoncé, notamment en raison de l'insuffisance de la demande de résidences principales dans la commune en question pour le type d'objets concernés, et/ou en présence d'autres indices concrets (ATF 142 II 206 consid. 2.2 p. 209). En droit public, le principe de la bonne foi est explicitement consacré par l'art. 5 al. 3 Cst., en vertu duquel les organes de l'Etat et les particuliers doivent agir de manière conforme aux règles de la bonne foi. Il y a fraude à la loi - forme particulière d'abus de droit - lorsqu'un justiciable évite l'application d'une norme imposant ou interdisant un certain résultat par le biais d'une autre norme permettant d'aboutir à ce résultat de manière apparemment conforme au droit (ATF 142 II 206 consid. 2.3 p. 209 s.). La norme éludée doit alors être appliquée nonobstant la construction juridique destinée à la contourner (ATF 142 II 206 consid. 2.3 p. 210; ATF 134 I 65 consid. 5.1 p. 72; 131 I 166 consid. 6.1 p. 177 et les arrêts cités). Pour être sanctionné, un abus de droit doit apparaître manifeste. L'autorité qui entend faire appliquer la norme éludée doit établir l'existence d'une fraude à la loi, ou du moins démontrer l'existence de soupçons sérieux dans ce sens. Cette appréciation doit se faire au cas par cas, en fonction des circonstances d'espèce (ATF 142 II 206 consid. 2.5 p. 210 et la jurisprudence citée).
Dans le contexte de l'art. 75b Cst. et de ses dispositions d'application, il n'y a pas lieu d'assouplir la répartition du fardeau de la preuve dans ce domaine en exigeant systématiquement du constructeur qu'il prouve d'emblée le respect de l'affectation prévue. Toutefois, il appartient à l'autorité chargée de la délivrance des permis de construire de s'assurer que les conditions posées pourront être respectées (ATF 142 II 206 consid. 4.3 p. 215; arrêt 1C_546/2015 du 23 juin 2016 consid. 2.5). Il s'agit de vérifier si, en prétendant vouloir construire une résidence principale (but en soi admissible au regard de la norme constitutionnelle) selon la définition des art. 2 al. 2 et 3 LRS, l'intéressé n'a pas pour objectif de contourner l'interdiction découlant de l'art. 75b Cst. et de l'art. 6 LRS en réalisant, à terme, une résidence secondaire. Il en va de même s'il envisage d'emblée, toujours en prétendant vouloir construire une résidence principale, de faire usage de l'art. 14 LRS qui permet de suspendre cette affectation lorsqu'il n'existe pas de demande pour un tel logement à un prix raisonnable (ATF 142 II 206 consid. 2.4 p. 210). Dans ce cadre, le Tribunal fédéral recherche s'il existe des indices concrets mettant d'emblée en doute la volonté ou la possibilité d'utiliser l'immeuble comme résidence principale. Ces indices peuvent, selon les circonstances, concerner la situation de l'immeuble (zone de construction, accessibilité toute l'année, éloignement des lieux de travail), sa conception même (dans l'optique d'une occupation à l'année), éventuellement son prix, les circonstances tenant à la personne qui entend y habiter, lorsque celle-ci est connue (résidence actuelle, lieu de travail, déclarations d'intention de l'intéressé lui-même). Lorsque le ou les futurs occupants ne sont pas connus (logements destinés à la vente ou à la location), le critère principal est celui de la demande de résidences principales dans le même secteur (ATF 142 II 206 consid. 2.4 p. 210).
2.3. Dans un arrêt concernant la construction de trois habitations dans la station de Verbier (arrêt 1C_874/2013 du 4 avril 2014), le Tribunal fédéral a considéré qu'il n'existait pas d'indice d'abus de droit; les allégations concernant la délivrance par la commune de Bagnes de nombreux permis assortis d'avenants portant sur des résidences principales ne permettaient pas d'admettre l'existence d'un abus de droit dans le cas particulier. Par la suite, dans les cas de constructions dont les acquéreurs ne sont pas encore connus, la jurisprudence a exigé qu'il soit à tout le moins rendu vraisemblable qu'il existe, dans le secteur considéré, une demande pour des résidences principales (arrêt 1C_160/2015 du 3 mai 2016 concernant la station d'Ovronnaz, commune de Leytron). L'introduction de l'art. 14 LRS, depuis le 1er janvier 2016, renforçait le risque que les constructeurs ne recourent à la possibilité de suspendre l'affectation en résidence principale lorsque le logement ne trouve pas preneur. Il y avait lieu soit pour la commune d'instruire de manière complète la question de la demande pour des résidences principales, soit pour les constructeurs de faire état de promesses de vente. Dans les cas où la demande pour ce type d'habitation est manifestement insuffisante, le permis de construire doit être refusé (arrêt 1C_263/2016 du 21 février 2017).
2.4. En l'occurrence, l'intimée ne fait pas valoir et établit encore moins qu'elle aurait d'ores et déjà des offres d'achat sérieuses et concrètes pour l'acquisition de ces deux chalets. L'usage des deux chalets à des fins de résidence principale apparaît dès lors d'emblée comme incertain.
Il faut dès lors examiner la situation du marché immobilier tel qu'il se présente dans la commune où est situé ce double projet de construction en tenant compte de l'ensemble des circonstances. Les deux constructions sont situées à Verbier, station à vocation essentiellement touristique et relativement éloignée de la vallée du Rhône. Il n'est certes pas contesté que le bien-fonds, situé à une altitude d'environ 1700 m, est accessible toute l'année et que, de par leur typologie, ces logements peuvent se prêter en soi à une utilisation en résidence principale. Selon les renseignements obtenus en instance cantonale, la population résidente à titre principal à Verbier a passé, entre janvier 2013 et début 2016, de 3197 à 3153 habitants, soit une diminution de 44 personnes, ce qui établit une demande déclinante. Cette caractéristique est encore renforcée par les chiffres relatifs aux autorisations de construire délivrées durant la même période. Dites autorisations étaient au nombre de 45 correspondant à 79 logements; 8 de ces logements étaient achevés et occupés comme résidences principales, 9 en cours de réalisation, 13 en attente de l'issue d'un recours et pour les 49 restants, les travaux n'avaient pas encore commencé. Toujours selon l'arrêt cantonal, 49 biens de nature comparable au projet litigieux (maisons ou chalets de six pièces et plus) étaient disponibles à la vente au 29 décembre 2016. Le Tribunal cantonal relève que certains de ces biens ne sont pas neufs et qu'il n'existe aucun objet comparable dans les environs immédiats du projet; cela ne suffit cependant pas pour justifier la construction litigieuse, car un tel raisonnement permettrait de contourner systématiquement l'interdiction de l'art. 75b Cst. et de sa loi d'application.
Compte tenu de la baisse de la population résidente (tendance dont rien n'indique qu'elle se soit modifiée dernièrement) et de l'existence d'une offre portant potentiellement sur plusieurs dizaines de logements neufs, on ne saurait considérer la demande de résidences principales, en particulier pour le type d'immeubles litigieux, comme établie et suffisante pour justifier le projet au regard des principes rappelés ci-dessus. Une augmentation de la population dans l'ensemble de la vallée de Bagnes, évoquée par l'intimée, ne constitue au demeurant pas un élément pertinent tant la situation géographique et touristique de Verbier est particulière.
Dès lors, les deux chalets ne pouvaient être autorisés qu'à condition que l'achat par des habitants à l'année fasse l'objet d'engagements sérieux et concrets avant même la construction. Autoriser celle-ci alors que, d'emblée, il n'est pas vraisemblable que les logements seront en définitive occupés comme résidences principales, apparaîtrait manifestement contraire aux objectifs constitutionnels et légaux.
3.
Sur le vu de ce qui précède, le recours doit être admis. L'arrêt cantonal est annulé, de même que la décision du Conseil d'Etat et le permis de construire qui, en l'état, ne peut être accordé. Conformément aux art. 66 al. 1 et 68 al. 2 LTF, les frais judiciaires, de même que l'indemnité de dépens allouée à Helvetia Nostra, sont mis à la charge de l'intimée qui succombe. La cause doit être renvoyée à la cour cantonale pour nouvelle décision sur les frais et dépens des instances cantonales.
Par ces motifs, le Tribunal fédéral prononce :
1.
Le recours est admis; l'arrêt attaqué est annulé, de même que la décision du Conseil d'Etat du 27 janvier 2016 et le permis de construire accordé le 28 décembre 2012 et complété le 20 août 2013. La cause est renvoyée à la cour cantonale pour nouvelle décision sur les frais et dépens des instances cantonales.
2.
Une indemnité de dépens de 2'000 fr. est allouée à la recourante, à la charge de l'intimée A._.
3.
Les frais judiciaires, arrêtés à 2'000 fr., sont mis à la charge de l'intimée A._.
4.
Le présent arrêt est communiqué aux mandataires des parties, à la Commune de Bagnes, au Conseil d'Etat du canton du Valais, au Tribunal cantonal du canton du Valais, Cour de droit public, et à l'Office fédéral du développement territorial.
Lausanne, le 16 janvier 2018
Au nom de la Ire Cour de droit public
du Tribunal fédéral suisse
Le Président : Merkli
Le Greffier : Kurz